Skip to main content
MCP server CX Codex

Google Search Console · akzar1el — Claude Code MCP server: SEO data

Brings Search Console data into your AI agent: analytics, indexing, sitemaps and SEO diagnostics without leaving the chat.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env PORT=<PORT> --env GSC_ACCESS_MODE=<GSC_ACCESS_MODE> --env MCP_GSC_STATE_DIR=<MCP_GSC_STATE_DIR> --env GOOGLE_CLIENT_ID=<GOOGLE_CLIENT_ID> --env GOOGLE_CLIENT_SECRET=<GOOGLE_CLIENT_SECRET> --transport stdio akzar1el-google-search-console -- npx -y @digestseo/mcp-gsc
Open on GitHub

What Google Search Console does

The server runs as a loopback-only Streamable HTTP Worker on 127.0.0.1, port 8080 unless you change it. It is not a stdio MCP process. Start it with npx -y @digestseo/mcp-gsc, then point your client at http://127.0.0.1:8080/mcp. Before the first sign-in you need a Google Cloud OAuth app with the exact callback http://127.0.0.1:8080/google/callback authorized.

Miss any of GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET or TOKEN_ENCRYPTION_KEY and the launcher stops before Wrangler starts. The encryption key has to be valid base64 that decodes to exactly 32 bytes, or startup is rejected too. Local state, including the encrypted Google session, lives in ~/.mcp-gsc/state; if you move it with MCP_GSC_STATE_DIR, keep the same key or stored refresh tokens will not decrypt.

The default access mode is GSC_ACCESS_MODE=readwrite. Set it to readonly when you only want reporting: OAuth then asks for the read scope alone and the tools that change data are never registered. Cursor Cloud Agents cannot use the loopback address at all, since they run in isolated cloud VMs — those need your own HTTPS Worker.

What it helps with

  • spot queries where impressions are slipping
  • list pages that dropped out of the index
  • check sitemap status and crawl errors
  • pull a clicks-and-positions report for a date range
  • find pages with high impressions and low CTR

Example prompts for the agent

  • Show queries where impressions dropped over the last 28 days
  • Which pages fell out of the index, and what should I fix first?
  • Report on sitemaps: what was submitted and where the errors are

How to install Google Search Console

Platform CLI

claude mcp add --env PORT=<PORT> --env GSC_ACCESS_MODE=<GSC_ACCESS_MODE> --env MCP_GSC_STATE_DIR=<MCP_GSC_STATE_DIR> --env GOOGLE_CLIENT_ID=<GOOGLE_CLIENT_ID> --env GOOGLE_CLIENT_SECRET=<GOOGLE_CLIENT_SECRET> --transport stdio akzar1el-google-search-console -- npx -y @digestseo/mcp-gsc

Replace <…> with your own values. 1 more environment variable is in the server README

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Google Search Console

How do I install Google Search Console in Claude Code?

Start the launcher first: npx -y @digestseo/mcp-gsc. Then register the server with `claude mcp add mcp-gsc -e GOOGLE_CLIENT_ID=<GOOGLE_CLIENT_ID> -e GOOGLE_CLIENT_SECRET=<GOOGLE_CLIENT_SECRET> -e TOKEN_ENCRYPTION_KEY=<TOKEN_ENCRYPTION_KEY> -- npx -y @digestseo/mcp-gsc`.

What does the Google Search Console MCP server do?

It hands your agent Search Console data: analytics, indexing state, sitemaps and SEO diagnostics. It runs as a local HTTP server that an MCP client connects to.

What do I need before the first run?

A Google Cloud OAuth app with http://127.0.0.1:8080/google/callback authorized, plus three environment variables: GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET and TOKEN_ENCRYPTION_KEY. The key must be base64 decoding to 32 bytes.

Similar MCP servers

Everything for SEO and GEO →

Google Search Console by other authors comes first.

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor