
Google Search Console
io.github.mamrrezv0.2.2Updated Oct 2, 2026
Google Search Console: 37 tools, every API endpoint, hourly data, history beyond 16 months.
Overview
Lets an assistant query Google Search Console for search performance, indexing, sitemaps and properties, with optional local history beyond 16 months.
- What it does
- Exposes 37 tools covering Google's Search Console API: performance reports by query, page, device, country and search type; period comparisons; hourly and 24-hour views; URL inspection and indexing summaries; sitemap and property management; and SEO analyses such as striking-distance keywords, cannibalization, low-CTR pages and brand splits. It merges spelling variants across scripts so multilingual query totals are combined. A sync tool copies data into a local SQLite file so reports can cover ranges past Google's 16-month limit.
- When to use it
- Use it when you want to ask an assistant about a site's search performance, indexing status or sitemaps in plain language instead of exporting spreadsheets. It suits SEO reporting, opportunity finding and long-range trend comparison, especially for sites with non-English queries.
- Requirements
- Runs locally over stdio via uvx (Python package gsc-mcp-full); uv must be installed. Needs a Google account with Search Console access and a Google OAuth client JSON or service-account key, passed as GSC_CREDENTIALS_PATH. A one-time browser sign-in is required for OAuth. Optional variables include GSC_TIMEZONE, GSC_LANG, GSC_ALLOW_WRITE, GSC_DATA_STATE and GSC_CONFIG_DIR.
Installation
In SourceWeft
- Open Google Search Console in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Google Search Console MCP Server — works with Claude, ChatGPT Codex, Cursor, VS Code and Windsurf]
Google Search Console MCP Server — gsc-mcp-full
The complete MCP server for Google Search Console. Ask Claude, Cursor, Windsurf, VS Code, Codex or any other MCP client about your search performance, indexing and sitemaps in plain language — and get analysis back, not a spreadsheet.
37 tools · every Search Console API endpoint · the 24-hour view and hourly data · history beyond 16 months · correct numbers in every language.
[PyPI] [CI] [Python 3.10+] [MCP SDK 2.x] [License: MIT]
Quick start · Tools · Languages · FAQ · Full docs · Project page
What you get
Works with: Claude Desktop · Claude Code · Cursor · Windsurf · VS Code (Copilot agent mode) · OpenAI Codex CLI · any MCP client over stdio or HTTP.
Tools
37 tools in 8 groups. You don't call them yourself — ask in plain language and your AI picks the right one.
🌍 merges spelling variants · 🗄️ can run on local history (any date range) · ✍️ needs write access (GSC_ALLOW_WRITE=1)
📊 Search performance
🎯 SEO opportunities
🌍 Multilingual intelligence
🗄️ Unlimited history
🔍 Indexing and URL inspection
🗺️ Sitemaps
🏠 Properties
🛠️ Utilities
Every parameter of every tool: Tool reference.
Quick start
Three steps, about ten minutes, no cost. You need a Google account with access to Search Console.
1. Create your Google credentials
Google requires every app that reads Search Console to identify itself, so you create a free "OAuth client" once.
- Open Google Cloud Console and create a project (any name).
- Enable the Google Search Console API for it.
- Open Credentials → Create credentials → OAuth client ID. If asked, fill in the consent screen first: type External, any app name, your own email.
- Choose Desktop app, create it, and Download JSON. Keep the file somewhere permanent, for example
~/gsc/client_secret.json. - On the consent screen page, click Publish app. Without this, Google signs you out every 7 days. No review is needed for personal use.
Using a service account instead (servers, scheduled jobs, teams)
- In the same project: IAM & Admin → Service accounts → Create service account.
- Open it → Keys → Add key → Create new key → JSON. Use this file instead of the OAuth one.
- In Search Console → Settings → Users and permissions → Add user, add the service account's email address to each property.
No browser sign-in is needed with a service account; skip the auth command in step 3.
2. Connect your AI client
Install uv if you don't have it (one command, shown on that page). It downloads and runs the server for you — there is nothing else to install.
Then add this to your client's MCP configuration, with the path to your own file:
Where that goes in each client
Claude Code — one command instead of a file:
OpenAI Codex CLI — in ~/.codex/config.toml:
If a desktop app reports that it can't find uvx, use its full path as the command (which uvx on macOS/Linux, where uvx on Windows).
3. Sign in and ask
Sign in once from a terminal. Your browser opens; pick the Google account that has your Search Console properties.
Restart your AI client and ask:
List my Search Console properties, then give me a performance overview of example.com.
Stuck? See Troubleshooting.
Optional settings worth adding to the env block: "GSC_TIMEZONE": "Europe/Berlin" for local-day reports and "GSC_LANG": "fa" (or ar, tr, ja…) if most of your queries are in one language. Prefer pip? pip install gsc-mcp-full gives you the same gsc-mcp-full command.
Things to ask
- "Run a weekly SEO report for example.com: overview, what moved, and my three best opportunities."
- "Which pages lost more than 30% of their clicks since last month, and which queries did they lose?"
- "Find keyword cannibalization and tell me which page should win each one."
- "Which page-one results have a weak click-through rate? Suggest better titles."
- "Check these 20 URLs for indexing problems."
- "Split my traffic into brand and non-brand. Brand terms: toyota, تویوتا."
- "Sync 16 months of history, then show monthly clicks for queries containing 'boiler'."
More prompts and ready-made workflows: Usage guide.
Languages
Search Console counts every distinct string as its own query. When the same search can be typed several ways, one keyword becomes several small rows:
Tools marked 🌍 merge these before analysing, with rules written for each script. The text you see is never altered; only the grouping changes. Two levels: standard merges the same word typed differently, loose also merges near-spellings.
26 writing systems are recognised. English-only sites lose nothing: case, separators and spacing variants are merged for them too — while c++, c# and .net stay distinct, and 3.5 is never 35.
For Chinese, Japanese and Thai, top_terms uses a real word segmenter when you install the extra — uvx --from "gsc-mcp-full[zh]" gsc-mcp-full (or [ja], [th], [all]). The reasoning behind every rule: Languages guide.
History beyond 16 months
Google deletes Search Console data after 16 months and limits how many rows one request returns. sync_history stores each day in a local SQLite file, so both limits stop applying from the day you start.
Every tool marked 🗄️ accepts source="history". Details and a cron example: History guide.
Configuration
Settings are environment variables in your client's env block. Only the first is required.
Command line
Security
- Read-only unless you say otherwise. The default sign-in cannot change anything in Search Console.
- Everything stays on your machine. The server runs locally and talks only to Google. Your sign-in is stored in a file only you can read, and is never logged.
- Write tools are locked behind
GSC_ALLOW_WRITE=1and checked on every call. - Search queries are treated as data. Anyone can type anything into Google; nothing in your data can trigger an action.
More in the Security guide. To report a vulnerability privately, see SECURITY.md.
FAQ
Is there an official Google Search Console MCP server? Not at the time of writing (October 2026). Google publishes an MCP server for Google Analytics but not for Search Console, so community servers like this one use Google's public Search Console API.
Is it free? Yes. The server is open source under the MIT license, the Search Console API has no charge, and the Google Cloud project needs no billing account.
Which AI assistants does it work with? Any MCP client: Claude Desktop, Claude Code, Cursor, Windsurf, VS Code in agent mode, OpenAI Codex CLI and others, over stdio or streamable HTTP.
Can it change or break my site? No. It reads Search Console reports. With write access enabled it can add or remove properties and submit or delete sitemaps in Search Console — nothing on your website itself.
How is it different from exporting to a spreadsheet? You ask a question and get the answer. The server fetches, merges spelling variants, runs the analysis and returns a short table, capped so it never floods your AI's context.
Does it support Search Console's newest report options?
The 24-hour view (hourly points, including preliminary data) and the hourly, daily, weekly and monthly granularity are all here: hourly_performance with hours=24, and granularity on performance_overview and history_trend. The newer split of web search into text-based and multimodal (Google Lens, Circle to Search) exists only in the Search Console UI; Google's API does not return it yet, so no MCP server can.
Does it have the Page indexing, Core Web Vitals or Links reports? No — Google does not offer those through its API, so no MCP server can. Per-URL index status is available through the inspection tools.
How far back does the data go? 16 months from Google. Without limit once you start syncing history locally.
Do I need to know Python?
No. uvx runs everything; you only edit one configuration file.
Development
Contributions are welcome, especially language rules and real query samples — see CONTRIBUTING.md.
Related
- gtrends-mcp-full — the companion Google Trends MCP server: Trending Now, interest over time and by region, related searches, seasonality and share of search, with no API key.
License
This project is not affiliated with or endorsed by Google. Google Search Console is a trademark of Google LLC.
Source: README.md at commit 6955cc3
Tools
0Version history
1- v0.2.2LatestOct 2, 2026

