io.github.mikusnuz/gsc
MCP server for Google Search Console & Indexing API — search analytics, sitemaps, URL inspection
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
@mikusnuz/gsc-mcpclaude mcp add gsc -e 'GSC_CLIENT_ID=<your gsc_client_id>' -e 'GSC_CLIENT_SECRET=<your gsc_client_secret>' -e 'GSC_REFRESH_TOKEN=<your gsc_refresh_token>' -e 'GSC_SERVICE_ACCOUNT_KEY_PATH=<GSC_SERVICE_ACCOUNT_KEY_PATH>' -- npx -y @mikusnuz/gsc-mcp@1.3.6
{
"mcpServers": {
"gsc": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/gsc-mcp@1.3.6"
],
"env": {
"GSC_CLIENT_ID": "<your gsc_client_id>",
"GSC_CLIENT_SECRET": "<your gsc_client_secret>",
"GSC_REFRESH_TOKEN": "<your gsc_refresh_token>",
"GSC_SERVICE_ACCOUNT_KEY_PATH": "<GSC_SERVICE_ACCOUNT_KEY_PATH>"
}
}
}
}
Variables d'environnement
GSC_CLIENT_IDsecret Google OAuth2 Client IDGSC_CLIENT_SECRETsecret Google OAuth2 Client SecretGSC_REFRESH_TOKENsecret Google OAuth2 Refresh TokenGSC_SERVICE_ACCOUNT_KEY_PATHPath to Google service account JSON key file
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
gsc-mcp
MCP server for Google Search Console API and Google Indexing API — full API coverage.
Requires Node.js 20 or newer, matching the MCP SDK's installed runtime dependencies.
When to Use
| Task | Tool |
|---|---|
| "Check which queries my site ranks for" | search_analytics_query |
| "Notify Google about an eligible job posting or livestream URL" | indexing_publish |
| "Find pages with indexing errors" | url_inspection_inspect |
| "Get search performance data for the last 30 days" | search_analytics_query |
| "Compare click-through rates between mobile and desktop" | search_analytics_query (group by device) |
| "Submit my sitemap to Google" | sitemaps_submit |
| "Batch notify eligible job posting/livestream URLs" | indexing_batch_publish |
For AI agents: See
llms.txtfor a machine-readable summary. Copytemplates/CLAUDE.mdortemplates/AGENTS.mdinto your project to teach your agent about this MCP.
Unlike other GSC MCP servers that only wrap searchAnalytics.query, this server exposes every endpoint available in the Google Search Console and Indexing APIs.
Tools (13)
Sites
| Tool | Description |
|---|---|
sites_list | List all sites (properties) in your Search Console |
sites_get | Get details of a specific site |
sites_add | Add a new site (property) |
sites_delete | Remove a site |
Sitemaps
| Tool | Description |
|---|---|
sitemaps_list | List all submitted sitemaps for a site |
sitemaps_get | Get details of a specific sitemap |
sitemaps_submit | Submit a sitemap |
sitemaps_delete | Delete a sitemap |
Search Analytics
| Tool | Description |
|---|---|
search_analytics_query | Query search performance data (clicks, impressions, CTR, position) with filtering and grouping. Supports hourly data with the hour dimension. |
URL Inspection
| Tool | Description |
|---|---|
url_inspection_inspect | Inspect a URL's index status, crawl info, rich results, and AMP (the deprecated mobile-usability field may be absent) |
Indexing API
| Tool | Description |
|---|---|
indexing_publish | Notify Google about an eligible JobPosting or BroadcastEvent URL update/removal |
indexing_get_metadata | Get latest notification metadata for an eligible URL (requires contentType; not index status) |
indexing_batch_publish | Batch notify up to 100 eligible URLs and report every embedded request status |
Indexing API eligibility: Google supports this API only for pages with
JobPostingstructured data or livestream pages withBroadcastEventembedded in aVideoObject. The tools requirecontentTypeso callers must identify which supported type applies. A successful API response confirms receipt of the notification; it does not guarantee that Google indexed the URL. Useurl_inspection_inspectto check index status. See Google's Indexing API usage guide.
Indexing API quotas
Google's default per-project limits are 200 publish requests per day, 180 metadata requests per minute, and 380 requests per minute across endpoints. The daily limit resets at midnight Pacific Time. A batch of 100 URLs still consumes 100 requests; batching reduces connections, not quota usage. Check your project's actual quota before sending notifications. See the official quota reference.
Authentication
Two authentication methods are supported:
Option 1: OAuth2 Refresh Token
{
"mcpServers": {
"gsc-mcp": {
"command": "npx",
"args": ["-y", "@mikusnuz/gsc-mcp"],
"env": {
"GSC_CLIENT_ID": "your-client-id",
"GSC_CLIENT_SECRET": "your-client-secret",
"GSC_REFRESH_TOKEN": "your-refresh-token"
}
}
}
}
Required OAuth2 scopes:
https://www.googleapis.com/auth/webmastershttps://www.googleapis.com/auth/indexing
Option 2: Service Account
{
"mcpServers": {
"gsc-mcp": {
"command": "npx",
"args": ["-y", "@mikusnuz/gsc-mcp"],
"env": {
"GSC_SERVICE_ACCOUNT_KEY_PATH": "/path/to/service-account-key.json"
}
}
}
}
For Search Console read/write tools, add the service account as an owner or user with sufficient permission. For Indexing API tools, Google requires the service account to be added as a delegated owner of the property; user-level access is not sufficient.
Setup Guide
OAuth2 Setup
- Go to Google Cloud Console
- Create a project (or select existing)
- Enable Search Console API and Indexing API
- Create OAuth 2.0 credentials (Desktop app type)
- Use the OAuth Playground to generate a refresh token with scopes:
https://www.googleapis.com/auth/webmastershttps://www.googleapis.com/auth/indexing
Service Account Setup
- Go to Google Cloud Console
- Create a service account
- Download the JSON key file
- Enable Search Console API and Indexing API
- In Search Console, add the service account email as an owner for your sites
License
MIT
Questions fréquentes
Qu'est-ce que io.github.mikusnuz/gsc ?
MCP server for Google Search Console & Indexing API — search analytics, sitemaps, URL inspection
Comment installer io.github.mikusnuz/gsc ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add gsc -e 'GSC_CLIENT_ID=<your gsc_client_id>' -e 'GSC_CLIENT_SECRET=<your gsc_client_secret>' -e 'GSC_REFRESH_TOKEN=<your gsc_refresh_token>' -e 'GSC_SERVICE_ACCOUNT_KEY_PATH=<GSC_SERVICE_ACCOUNT_KEY_PATH>' -- npx -y @mikusnuz/gsc-mcp@1.3.6. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour io.github.mikusnuz/gsc ?
Oui. Il attend GSC_CLIENT_ID, GSC_CLIENT_SECRET, GSC_REFRESH_TOKEN, à renseigner dans sa configuration.
io.github.mikusnuz/gsc est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient io.github.mikusnuz/gsc ?
Il est publié par mikusnuz. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.