NestDaddy

Google Search Console MCP

io.github.sonnivasquez/gsc-mcp · v1.1.0

Local, read-only Google Search Console MCP server. Quick Connect needs no Cloud project.

Connect Runs on your machine

Terminal
claude mcp add gsc-mcp -e GSC_AUTH_MODE=<GSC_AUTH_MODE> -e GSC_ACCESS_MODE=<GSC_ACCESS_MODE> -e GSC_SITE_URLS=<GSC_SITE_URLS> -e GSC_KEY_FILE=<GSC_KEY_FILE> -e GSC_DATA_DIR=<GSC_DATA_DIR> -e GSC_EXPORTS=<GSC_EXPORTS> -e GSC_HISTORY=<GSC_HISTORY> -e GSC_OAUTH_SECRETS_FILE=<GSC_OAUTH_SECRETS_FILE> -e GSC_OAUTH_CLIENT_ID=<GSC_OAUTH_CLIENT_ID> -e GSC_OAUTH_CLIENT_SECRET=<GSC_OAUTH_CLIENT_SECRET> -e GSC_SCOPES=<GSC_SCOPES> -e GSC_ENABLE_WRITE=<GSC_ENABLE_WRITE> -- npx -y @sonnivasquez/[email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "gsc-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@sonnivasquez/[email protected]"
      ],
      "env": {
        "GSC_AUTH_MODE": "<GSC_AUTH_MODE>",
        "GSC_ACCESS_MODE": "<GSC_ACCESS_MODE>",
        "GSC_SITE_URLS": "<GSC_SITE_URLS>",
        "GSC_KEY_FILE": "<GSC_KEY_FILE>",
        "GSC_DATA_DIR": "<GSC_DATA_DIR>",
        "GSC_EXPORTS": "<GSC_EXPORTS>",
        "GSC_HISTORY": "<GSC_HISTORY>",
        "GSC_OAUTH_SECRETS_FILE": "<GSC_OAUTH_SECRETS_FILE>",
        "GSC_OAUTH_CLIENT_ID": "<GSC_OAUTH_CLIENT_ID>",
        "GSC_OAUTH_CLIENT_SECRET": "<GSC_OAUTH_CLIENT_SECRET>",
        "GSC_SCOPES": "<GSC_SCOPES>",
        "GSC_ENABLE_WRITE": "<GSC_ENABLE_WRITE>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "gsc-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@sonnivasquez/[email protected]"
      ],
      "env": {
        "GSC_AUTH_MODE": "<GSC_AUTH_MODE>",
        "GSC_ACCESS_MODE": "<GSC_ACCESS_MODE>",
        "GSC_SITE_URLS": "<GSC_SITE_URLS>",
        "GSC_KEY_FILE": "<GSC_KEY_FILE>",
        "GSC_DATA_DIR": "<GSC_DATA_DIR>",
        "GSC_EXPORTS": "<GSC_EXPORTS>",
        "GSC_HISTORY": "<GSC_HISTORY>",
        "GSC_OAUTH_SECRETS_FILE": "<GSC_OAUTH_SECRETS_FILE>",
        "GSC_OAUTH_CLIENT_ID": "<GSC_OAUTH_CLIENT_ID>",
        "GSC_OAUTH_CLIENT_SECRET": "<GSC_OAUTH_CLIENT_SECRET>",
        "GSC_SCOPES": "<GSC_SCOPES>",
        "GSC_ENABLE_WRITE": "<GSC_ENABLE_WRITE>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "gsc-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@sonnivasquez/[email protected]"
      ],
      "env": {
        "GSC_AUTH_MODE": "<GSC_AUTH_MODE>",
        "GSC_ACCESS_MODE": "<GSC_ACCESS_MODE>",
        "GSC_SITE_URLS": "<GSC_SITE_URLS>",
        "GSC_KEY_FILE": "<GSC_KEY_FILE>",
        "GSC_DATA_DIR": "<GSC_DATA_DIR>",
        "GSC_EXPORTS": "<GSC_EXPORTS>",
        "GSC_HISTORY": "<GSC_HISTORY>",
        "GSC_OAUTH_SECRETS_FILE": "<GSC_OAUTH_SECRETS_FILE>",
        "GSC_OAUTH_CLIENT_ID": "<GSC_OAUTH_CLIENT_ID>",
        "GSC_OAUTH_CLIENT_SECRET": "<GSC_OAUTH_CLIENT_SECRET>",
        "GSC_SCOPES": "<GSC_SCOPES>",
        "GSC_ENABLE_WRITE": "<GSC_ENABLE_WRITE>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
GSC_AUTH_MODE
Optional
oauth or service_account. Unset defaults to service_account. Set oauth for Quick Connect or your own OAuth client.
GSC_ACCESS_MODE
Optional
readonly or full. full enables gsc_submit_url, gsc_submit_batch, and gsc_submit_sitemap. When unset, legacy GSC_SCOPES and GSC_ENABLE_WRITE apply and writes stay off unless both allow them. Setup refuses full access for Quick Connect.
GSC_SITE_URLS
Optional
Property allowlist. JSON string array of exact Search Console property ids, a legacy comma-separated list, or all alone (or JSON ["all"]) for every current and future property. Property-scoped tools need an allowlist.
GSC_KEY_FILE
Optional
Path to a service account JSON key. Required when GSC_AUTH_MODE is service_account, which is the default mode.
GSC_DATA_DIR
Optional
Local state directory for OAuth tokens, datasets and opt-in audit history. Default is ~/.gsc-mcp.
GSC_EXPORTS
Optional
Set to 1 to allow gsc_export_dataset and saved gsc_generate_report files on this machine. Any other value keeps local export disabled.
GSC_HISTORY
Optional
Set to 1 for explicit local gsc_change_impact history actions. Independent of exports; no scheduler or notifications.
GSC_OAUTH_SECRETS_FILE
Optional
Optional path to a Desktop OAuth client secrets JSON file. It takes precedence over GSC_OAUTH_CLIENT_ID and GSC_OAUTH_CLIENT_SECRET. Quick Connect does not need it.
GSC_OAUTH_CLIENT_ID
Optional
Optional OAuth client id. Used with GSC_OAUTH_CLIENT_SECRET when GSC_OAUTH_SECRETS_FILE is unset. Quick Connect does not need it.
GSC_OAUTH_CLIENT_SECRET
Optional, secret
Optional OAuth client secret paired with GSC_OAUTH_CLIENT_ID. Quick Connect does not need it.
GSC_SCOPES
Optional
Legacy scope tier, readonly or full. Ignored when GSC_ACCESS_MODE is set. full alone does not enable writes.
GSC_ENABLE_WRITE
Optional
Legacy write opt-in. Set to 1 together with GSC_SCOPES=full when GSC_ACCESS_MODE is unset. Ignored when GSC_ACCESS_MODE is set.

Details

Package@sonnivasquez/[email protected] (NPM, stdio)
First published5 Nov 2026
Last updated5 Nov 2026
Registry nameio.github.sonnivasquez/gsc-mcp

More search and web servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.