Google Search Console

Servidor MCP de solo lectura para Google Search Console: análisis de búsqueda, inspección de URL y mapas del sitio.

Documentación

Servidor MCP de Google Search Console

Un servidor MCP mínimo para Google Search Console.

Dale a Codex, Claude Code o Claude Desktop acceso de solo lectura a tus análisis de búsqueda, información de indexación de URL y estado de sitemaps. Se ejecuta localmente; no puede cambiar tu sitio ni la configuración de Search Console.

Una vez conectado, pregúntale a tu agente:

  • "¿Qué consultas tuvieron más impresiones pero pocos clics en los últimos 28 días?"
  • "Compara el rendimiento de búsqueda en móvil vs escritorio este mes."
  • "Verifica el estado de indexación de https://example.com/blog/my-post."

Configuración · Herramientas · Limitaciones · Solución de problemas

Configuración

Necesitas Node.js y npm, un cliente MCP y acceso a una propiedad de Search Console. Para iniciar sesión como tú mismo, también instala la CLI de Google Cloud. El inicio del servidor y el descubrimiento de herramientas se verificaron con Node.js 22.

1. Habilita la API de Google

Crea o selecciona un proyecto en Google Cloud Console, luego habilita la API de Search Console. Anota el ID del proyecto para el siguiente paso.

2. Autentícate

Recomendado para nuevos usuarios: inicia sesión como tú mismo. Las Credenciales predeterminadas de la aplicación (ADC) usan tus permisos existentes de Search Console, por lo que no necesitas agregar otro usuario a tus propiedades.

Ejecuta ambos comandos, reemplazando YOUR_PROJECT_ID con el proyecto que habilitaste arriba:

gcloud auth application-default login \
  --scopes=https://www.googleapis.com/auth/webmasters.readonly,https://www.googleapis.com/auth/cloud-platform
gcloud auth application-default set-quota-project YOUR_PROJECT_ID

El proyecto de cuota es obligatorio. Para errores de permisos o alcances, consulta solución de problemas.

Alternativa: usa una clave de cuenta de servicio
  1. En Google Cloud Console, ve a APIs y servicios → Credenciales → Crear credenciales → Cuenta de servicio. Ponle un nombre y finaliza la creación; puedes omitir los pasos opcionales de roles/accesos.
  2. Abre la cuenta de servicio, luego Claves → Agregar clave → Crear clave nueva → JSON para descargar una clave.
  3. En Search Console, abre la Configuración → Usuarios y permisos → Agregar usuario de cada propiedad. Agrega el correo de la cuenta de servicio con acceso Restringido.

[!CAUTION] Guarda la clave fuera de tu repositorio y nunca la subas. Usa su ruta absoluta en la configuración de tu cliente a continuación.

Si Search Console rechaza el correo con "No se pudo agregar el usuario: correo no encontrado", inicia sesión como tú mismo; consulta solución de problemas.

El servidor verifica GOOGLE_APPLICATION_CREDENTIALS antes de la ADC local. Si cambias a ADC, elimina una configuración antigua de ruta de clave de tu configuración de cliente y del entorno.

3. Instala el servidor

Los comandos npx del siguiente paso descargan y ejecutan la versión 1.1.0 por ti. Ambos métodos de autenticación funcionan con el paquete npm; no se requiere clonar ni compilar.

Opcional: compilar desde el código fuente
git clone https://github.com/sarahpark/google-search-console-mcp.git
cd google-search-console-mcp
npm install
npm run build

En los comandos del cliente a continuación, reemplaza npx -y @sarahpark/google-search-console-mcp@1.1.0 con node "/absolute/path/to/google-search-console-mcp/build/index.js". En Claude Desktop, establece command a node y args a un arreglo que contenga esa ruta absoluta. Ejecuta npm test para verificaciones de autenticación sin conexión.

Deja que Codex o Claude Code manejen la instalación y configuración

Después de completar la autenticación, pega esto en tu agente:

Agrega npx -y @sarahpark/google-search-console-mcp@1.1.0 como gsc en la configuración MCP a nivel de usuario de este cliente, conservando los servidores existentes. Usa mis Credenciales predeterminadas de la aplicación locales. Dime cuando la configuración esté completa y si necesito reiniciar el cliente.

Para una cuenta de servicio, reemplaza "Usa mis Credenciales predeterminadas de la aplicación locales" con "Establece GOOGLE_APPLICATION_CREDENTIALS a /path/to/service-account-key.json" y usa tu ubicación real del archivo.

Una vez configurado, salta al paso 5.

4. Conecta tu cliente

Elige tu cliente y ejecuta el comando para tu método de autenticación. Reemplaza las rutas de marcador de posición con tus rutas absolutas reales; mantén las comillas alrededor de rutas con espacios. Conserva cualquier entrada de servidor existente.

Codex

Inicia sesión como tú mismo (ADC):

codex mcp add gsc -- npx -y @sarahpark/google-search-console-mcp@1.1.0

Paquete npm con una cuenta de servicio:

codex mcp add gsc \
  --env "GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/service-account-key.json" \
  -- npx -y @sarahpark/google-search-console-mcp@1.1.0

Para configuración manual en ~/.codex/config.toml, consulta la documentación de MCP de Codex.

Claude Code

Inicia sesión como tú mismo (ADC):

claude mcp add gsc --scope user -- npx -y @sarahpark/google-search-console-mcp@1.1.0

Paquete npm con una cuenta de servicio:

claude mcp add gsc --scope user \
  --env "GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/service-account-key.json" \
  -- npx -y @sarahpark/google-search-console-mcp@1.1.0

--scope user hace que el servidor esté disponible en todos tus proyectos. Usa --scope project para compartir la configuración a través del .mcp.json del proyecto en su lugar.

Claude Desktop

Agrega la entrada apropiada a claude_desktop_config.json, fusionándola en cualquier objeto mcpServers existente.

Inicia sesión como tú mismo (ADC):

{
  "mcpServers": {
    "gsc": {
      "command": "npx",
      "args": ["-y", "@sarahpark/google-search-console-mcp@1.1.0"]
    }
  }
}

Paquete npm con una cuenta de servicio:

{
  "mcpServers": {
    "gsc": {
      "command": "npx",
      "args": ["-y", "@sarahpark/google-search-console-mcp@1.1.0"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/absolute/path/to/service-account-key.json"
      }
    }
  }
}

5. Verifica la conexión

Reinicia tu cliente o inicia una nueva sesión, luego pregunta:

Usa el servidor MCP gsc para listar mis propiedades de Search Console.

Una llamada exitosa a list_sites verifica tanto la conexión como el acceso a Google. Usa la URL exacta de la propiedad que devuelve en solicitudes posteriores, como sc-domain:example.com o https://example.com/.

Herramientas

Lista tus propiedades — list_sites

Lista todos los sitios (propiedades) a los que tienes acceso en Google Search Console.

No se requieren parámetros.

Consulta el rendimiento de búsqueda — search_analytics

Consulta datos de análisis de búsqueda: clics, impresiones, CTR y posición.

ParámetroTipoObligatorioDescripción
siteUrlstringSíURL del sitio tal como aparece en Search Console (p. ej. https://example.com/ o sc-domain:example.com)
startDatestringSíFecha de inicio en formato YYYY-MM-DD
endDatestringSíFecha de fin en formato YYYY-MM-DD
dimensionsstringNoSeparados por comas: query, page, country, device, searchAppearance, date
rowLimitnumberNoMáximo de filas a devolver (predeterminado 100, máximo 25000)
searchTypestringNoweb, image, video, news, discover o googleNews (predeterminado web)
queryFilterstringNoFiltrar por consulta. Prefija con regex: para coincidencia con regex
pageFilterstringNoFiltrar por URL de página. Prefija con regex: para coincidencia con regex
countryFilterstringNoCódigo de país ISO 3166-1 alfa-3 (p. ej. USA, GBR)
deviceFilterstringNoDESKTOP, MOBILE o TABLET
Inspecciona una URL — inspect_url

Verifica el estado de indexación, la información de rastreo y la usabilidad móvil de una URL.

ParámetroTipoObligatorioDescripción
siteUrlstringSíURL del sitio tal como aparece en Search Console
inspectionUrlstringSíLa URL completa a inspeccionar (debe pertenecer al sitio)
Verifica el estado del sitemap — list_sitemaps

Lista todos los sitemaps enviados y su estado para un sitio.

ParámetroTipoObligatorioDescripción
siteUrlstringSíURL del sitio tal como aparece en Search Console

Limitaciones

  • El análisis de búsqueda devuelve como máximo 25,000 filas por llamada, sin paginación. Los resultados pueden omitir páginas o consultas, y los datos recientes pueden estar incompletos.
  • La inspección de URL verifica una URL a la vez; no exporta un informe completo de cobertura de indexación del sitio.
  • Tu agente realiza comparaciones y análisis de oportunidades usando los datos devueltos. Este es un servidor STDIO local, no una integración web alojada de ChatGPT.

Licencia

MIT

Solución de problemas

Error 403: falta el proyecto de cuota o el permiso

Si el error dice que la API "requiere un proyecto de cuota", vuelve a ejecutar:

gcloud auth application-default set-quota-project YOUR_PROJECT_ID

Tu cuenta necesita serviceusage.services.use en ese proyecto. Si se deniega el permiso, pide a un administrador del proyecto que lo otorgue o usa un proyecto donde lo tengas, con la API de Search Console habilitada.

Los intentos de inicio de sesión adjuntan tu proyecto configurado automáticamente, pero pueden omitirlo cuando no tienes permiso. Establecerlo explícitamente hace visible ese fallo. El alcance cloud-platform en el comando de configuración permite adjuntar el proyecto de cuota.

gcloud no otorga el alcance de Search Console

Se confirmó que el cliente gcloud integrado otorga webmasters.readonly con Google Cloud SDK 557.0.0. Si no funciona en tu versión, sigue la guía de gcloud para alcances adicionales para crear tu propio cliente OAuth, luego inicia sesión con su archivo de cliente descargado:

gcloud auth application-default login \
  --client-id-file=client_id.json \
  --scopes=https://www.googleapis.com/auth/webmasters.readonly,https://www.googleapis.com/auth/cloud-platform
gcloud auth application-default set-quota-project YOUR_PROJECT_ID

Mantén los archivos de credenciales fuera de tu repositorio.

Search Console dice "No se pudo agregar el usuario: correo no encontrado"

Esto se ha reportado al agregar cuentas de servicio recién creadas y motivó la opción de ADC. Inicia sesión como tú mismo o usa una cuenta de servicio existente que ya tenga acceso a la propiedad.

Faltan credenciales o no se devuelven propiedades
  • Usando npm 1.0.1 o anterior: actualiza el comando de tu cliente a la versión 1.1.0 o posterior para usar la ADC local de gcloud.
  • Usando ADC: asegúrate de que una configuración antigua de GOOGLE_APPLICATION_CREDENTIALS no esté anulando tu inicio de sesión. La cuenta de Google con la que iniciaste sesión debe tener acceso a la propiedad.
  • Usando una cuenta de servicio: establece GOOGLE_APPLICATION_CREDENTIALS a la ruta absoluta de la clave y confirma que su correo se agregó a cada propiedad que quieras leer.