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
- 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.
- Abre la cuenta de servicio, luego Claves → Agregar clave → Crear clave nueva → JSON para descargar una clave.
- 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.0comogscen 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ámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
siteUrl | string | Sí | URL del sitio tal como aparece en Search Console (p. ej. https://example.com/ o sc-domain:example.com) |
startDate | string | Sí | Fecha de inicio en formato YYYY-MM-DD |
endDate | string | Sí | Fecha de fin en formato YYYY-MM-DD |
dimensions | string | No | Separados por comas: query, page, country, device, searchAppearance, date |
rowLimit | number | No | Máximo de filas a devolver (predeterminado 100, máximo 25000) |
searchType | string | No | web, image, video, news, discover o googleNews (predeterminado web) |
queryFilter | string | No | Filtrar por consulta. Prefija con regex: para coincidencia con regex |
pageFilter | string | No | Filtrar por URL de página. Prefija con regex: para coincidencia con regex |
countryFilter | string | No | Código de país ISO 3166-1 alfa-3 (p. ej. USA, GBR) |
deviceFilter | string | No | DESKTOP, 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ámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
siteUrl | string | Sí | URL del sitio tal como aparece en Search Console |
inspectionUrl | string | Sí | 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ámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
siteUrl | string | Sí | 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
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_CREDENTIALSno 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_CREDENTIALSa la ruta absoluta de la clave y confirma que su correo se agregó a cada propiedad que quieras leer.