mcp-seo-audit

Servidor MCP para "Auditar https://example.com

Documentación

atomno-mcp-seo-audit

PyPI Python License: MIT MCP

Servidor MCP (Model Context Protocol) para auditorías técnicas de SEO y GEO, impulsado por el motor detail.webmediciones reales, no suposiciones de LLM. Ejecútalo desde Cursor, Claude Desktop o cualquier cliente MCP. 8 herramientas: audit_site (puntuación de salud 0–100 determinista + calificación con letra, 78 comprobaciones en 8 categorías, más un sub-puntaje GEO — visibilidad en ChatGPT / Perplexity / Google AI Overviews), audit_diff (compara con la instantánea anterior), validadores robots.txt y sitemap.xml, generadores de JSON-LD y meta/OpenGraph, y explicadores de corrección por comprobación. Sondea TLS, redirecciones, TTFB, acceso de rastreadores de IA (GPTBot) y llms.txt. Nivel gratuito + PRO+ (rastreo profundo, GEO, más de 40 comprobaciones más profundas) — las claves API desbloquean el motor más profundo en el plan PRO+ y superiores (ver Gratis vs PRO+).

¿Por qué combinarlo con un LLM?

Un modelo de lenguaje por sí solo infiere un sitio a partir de datos de entrenamiento y, en el mejor de los casos, de una página renderizada — no puede leer directamente la caducidad del certificado TLS, medir el tiempo de respuesta, analizar sitemap.xml, ni comprobar si GPTBot está bloqueado en robots.txt. Este servidor ejecuta esas comprobaciones de verdad: solicitudes HTTP reales, cabeceras de seguridad, cadenas de redirección, validación de datos estructurados — y devuelve una puntuación determinista (mismo sitio → mismo número), lo suficientemente reproducible como para incluirlo en un informe para clientes. Piénsalo como el instrumento y el LLM como el analista que interpreta la lectura — ambos funcionan mejor juntos.

Lo que obtienes

  • audit_site(url, depth=1, lang="ru") — una llamada devuelve:
    • puntuación de salud 0–100 (cuanto más alta, mejor) y una calificación con letra A–F;
    • problemas agrupados por categoría (seguridad, SEO e indexación, rendimiento, GEO, …), cada uno con estado pass / warn / fail;
    • un resumen breve legible por humanos.
  • audit_diff(url, lang="ru") — re-audita un sitio y lo compara con la ejecución anterior: delta de salud/puntuación y qué comprobaciones empeoraron o mejoraron. La primera llamada almacena una línea base. Esto es algo que una pregunta puntual de LLM no puede hacer — rastrear un sitio a lo largo del tiempo. Función con estado — requiere una clave en el plan PRO+ o superior.
  • list_checks(lang="ru") — el catálogo completo de comprobaciones del motor agrupadas por categoría, con una insignia free / PRO en cada una — para que tú (y el agente) puedan ver exactamente qué cubre el nivel gratuito y qué desbloquea PRO.
  • explain_issue(check_id, lang="ru") — un análisis profundo de una sola comprobación: por qué es importante y cómo corregirla. Pasa un check_id de audit_site o list_checks. El título y la categoría están localizados; el consejo detallado está actualmente en ruso (el campo advice_lang lo informa).
  • validate_robots(content, lang="ru") — pega un robots.txt y recibe problemas de sintaxis, si está presente una directiva Sitemap:, si CSS/JS está bloqueado para los bots de renderizado, y qué rastreadores de IA (GPTBot, ClaudeBot, …) están bloqueados explícitamente. Sin búsqueda — valida el texto que proporcionas.
  • check_sitemap(url, lang="ru") — obtiene un sitemap por URL e informa su formato (urlset / sitemapindex), número de URLs y problemas comunes (404, tipo de contenido no XML, enlaces http://, falta <lastmod>, el límite de 50k por archivo). La búsqueda está protegida contra SSRF en el servidor.
  • build_jsonld(type, fields, lang="ru") — genera un JSON-LD de schema.org listo para pegar <script> (Organization, LocalBusiness, Article, Product, FAQPage, BreadcrumbList, WebSite) y te dice qué campos obligatorios/recomendados faltan. Nunca inventa datos — solo lo que pasas.
  • build_meta(fields, lang="ru") — genera etiquetas meta <head> (título, descripción, canónica, Open Graph, Twitter Card) y valida las longitudes del título (50–60 caracteres) y la descripción (120–160 caracteres).

Gratis vs PRO+

Gratis (sin clave)PRO+ y superiores (clave API)
Comprobacionesconceptos básicos técnicosmás de 40 comprobaciones más profundas (E-E-A-T, Schema.org, título Goldmine)
GEO4 señales GEOsub-puntaje de preparación GEO + comprobaciones GEO profundas
Rastreopágina únicarastreo profundo de hasta 20 páginas (depth=2/3)

¿Qué plan desbloquea la API/MCP? El acceso programático (este servidor, audit_diff, rastreo profundo, sub-puntaje GEO) está habilitado en PRO+ (pro_plus), Business y Enterprise. El plan PRO de nivel inicial y el nivel Gratuito son solo de panel web — una clave API emitida en ellos autentica pero aún devuelve el resultado gratuito. Si necesitas acceso programático, elige PRO+ o superior.

El motor de auditoría permanece en el servidor — este paquete es un cliente ligero (solo llamadas HTTP + formato).

Instalación

uvx atomno-mcp-seo-audit

O agrégalo a la configuración de tu cliente MCP (mcp.json):

{
  "mcpServers": {
    "seo-audit": {
      "command": "uvx",
      "args": ["atomno-mcp-seo-audit"]
    }
  }
}

Configuración

Todo mediante variables de entorno:

VariablePredeterminadoPropósito
DETAILWEB_API_BASEhttps://api.detailweb.ruURL base del backend
DETAILWEB_API_KEYClave API (dwa_...) de un plan PRO+ o superior. Sin ella (o en Gratis/PRO) → nivel gratuito
DETAILWEB_TIMEOUT60Tiempo de espera HTTP (segundos)
DETAILWEB_LANGruIdioma predeterminado de los títulos de problemas (ru / en)

El nivel gratuito no necesita clave ni registro — solo ejecuta el comando anterior. El acceso programático (más de 40 comprobaciones más profundas, sub-puntaje GEO, rastreo profundo, audit_diff) requiere una clave del plan PRO+ o superior — el plan PRO de nivel inicial es solo de panel web y su clave devuelve el resultado gratuito. Actualmente se provisiona bajo solicitud: escribe a kir@detailweb.ru o contacta a través de audit.detailweb.ru. Una vez que tu cuenta esté activa, creas claves tú mismo en Panel → Cuenta → Claves API (dwa_…, mostrada una vez) y colocas la clave en DETAILWEB_API_KEY.

Ejemplo

"Audita https://example.com"

El agente llama a audit_site("https://example.com") y recibe la puntuación de salud, la calificación y la lista de problemas a corregir.

Licencia

MIT © atomno-mcp. El cliente de código abierto se comunica con un backend propietario alojado.


🇷🇺 На русском

MCP-сервер технического SEO-аудита на движке detail.web. Запускайте аудит прямо из ИИ-агента (Cursor, Claude Desktop и любой MCP-клиент): health-score, проблемы по 8 категориям и GEO-суб-балл (видимость в ИИ-поиске — ChatGPT, Perplexity, AI Overviews).

Зачем в связке с нейросетью. Языковая модель сама по себе судит о сайте по обучающим данным и в лучшем случае по одной отрисованной странице — она не прочитает напрямую срок SSL-сертификата, не измерит время ответа, не распарсит sitemap.xml и не проверит, заблокирован ли GPTBot в robots.txt. Этот сервер выполняет такие проверки по-настоящему: HTTP-запросы, заголовки, редиректы, микроразметка — и даёт детерминированный score (тот же сайт → то же число), пригодный для отчёта клиенту. Это прибор, а нейросеть — аналитик, который читает показания. Лучше всего работает связка.

Инструменты: audit_site (аудит + score + GEO), audit_diff (что изменилось с прошлой проверки — stateful, тариф PRO+ и выше), list_checks (каталог проверок free/PRO), explain_issue (почему важно + как исправить), validate_robots, check_sitemap, build_jsonld, build_meta.

Установка:

uvx atomno-mcp-seo-audit

В конфиге MCP-клиента (mcp.json):

{
  "mcpServers": {
    "seo-audit": {
      "command": "uvx",
      "args": ["atomno-mcp-seo-audit"],
      "env": { "DETAILWEB_LANG": "ru" }
    }
  }
}

Бесплатный тариф (базовые проверки, одна страница) работает сразу, без ключа и регистрации. Программный доступ (40+ глубоких проверок, GEO-суб-балл, deep-crawl до 20 страниц, audit_diff) работает с ключом тарифа PRO+ (pro_plus) и выше — Business, Enterprise. Начальный тариф PRO (1290 ₽) и Free — только веб-кабинет: ключ на них проходит авторизацию, но результат остаётся бесплатным. Тариф пока выдаём по запросу: напишите на kir@detailweb.ru или через audit.detailweb.ru. После активации аккаунта ключ (dwa_…) создаётся в кабинете → Аккаунт → API-ключи (показывается один раз) и подставляется в DETAILWEB_API_KEY в env. Полное описание инструментов и настроек — в английской версии выше.