google-search-console-mcp
Query Google Search Console search analytics, inspect URL indexing status, manage sitemaps, and analyze keyword performance. 13 tools covering search queries, page performance, sitemap management, and index coverage.
README
Google Search Console MCP Server
A Model Context Protocol (MCP) server that connects Google Search Console to AI assistants like Claude Desktop, Cursor, Windsurf, and any MCP-compatible client. Analyze your SEO data, inspect URLs, find keyword opportunities, and track search performance — all through natural language.
No Google Cloud setup required. Install, authenticate with your Google account, and start querying your Search Console data in under 2 minutes.
What Can You Do?
Ask Claude questions like:
- "What are my top performing pages this month?"
- "Find keywords where I have high impressions but low CTR"
- "Compare my search performance this month vs last month"
- "Is this URL indexed? Any issues?"
- "Show me my brand vs non-brand traffic split"
Quick Start
1. Install
npm install -g google-searchconsole-mcp
2. Authenticate (one time)
gsc-mcp-auth
Opens your browser — log in with your Google account and grant Search Console read access. Your tokens are saved locally to ~/.gsc-mcp/tokens/. Your data stays on your machine.
Multiple accounts:
gsc-mcp-auth --alias work
gsc-mcp-auth --alias personal
gsc-mcp-auth --list
3. Add to Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"google-search-console": {
"command": "npx",
"args": ["-y", "google-searchconsole-mcp"]
}
}
}
Restart Claude Desktop. Done — your Search Console data is now available in Claude.
Use with Other MCP Clients
Works with any MCP-compatible client including Cursor, Windsurf, VS Code + Cline, and more. Just point the MCP client to:
npx google-searchconsole-mcp
Available Tools (13 SEO Tools)
| Tool | Description |
|---|---|
list_accounts |
List all authenticated Google accounts and their Search Console sites |
list_sites |
List all Search Console properties you have access to |
query_search_analytics |
Query clicks, impressions, CTR, and position by any dimension (query, page, country, device, date) |
inspect_url |
Check URL indexing status, mobile usability, and rich results eligibility |
list_sitemaps |
List all submitted sitemaps and their status |
find_keyword_opportunities |
Discover high-impression, low-CTR keywords — quick SEO wins |
get_top_pages |
Get top pages sorted by clicks, impressions, CTR, or position |
compare_performance |
Compare search performance between two time periods (week-over-week, month-over-month) |
analyze_brand_queries |
Analyze brand vs non-brand organic traffic split |
get_keyword_trend |
Get daily trend data for a specific keyword |
export_analytics |
Export search analytics data as CSV or JSON |
query_by_search_appearance |
Filter results by search appearance: AMP, FAQ, HowTo, Rich Results, Video, etc. |
query_by_search_type |
Filter by search type: web, image, video, news, or discover |
Examples
Example 1: Find your top performing pages
User prompt: "Show me my top 10 pages by clicks for the last 30 days"
Expected behavior:
- Calls
get_top_pageswith your site URL, date range of last 30 days,sortBy: "clicks", andlimit: 10 - Returns a ranked list of your top 10 pages with clicks, impressions, CTR, and average position for each
- Helps identify your strongest content and highest-traffic landing pages
Example 2: Discover keyword optimization opportunities
User prompt: "Find keywords where I have high impressions but low CTR on example.com"
Expected behavior:
- Calls
find_keyword_opportunitieswith your site URL and a 28-day date range - Filters for queries with 100+ impressions and less than 3% CTR within the top 20 positions
- Returns a list of keywords where better titles, meta descriptions, or content could significantly increase clicks
Example 3: Check if a URL is indexed by Google
User prompt: "Check if https://example.com/blog/my-new-post is indexed"
Expected behavior:
- Calls
inspect_urlwith the site property and the full URL to inspect - Returns indexing status (indexed, crawled but not indexed, not found, etc.), last crawl date, mobile usability status, and any rich results detected
- Identifies issues preventing indexing such as robots.txt blocks, noindex tags, or crawl errors
Example 4: Compare this month vs last month
User prompt: "Compare my search performance this month vs last month for example.com"
Expected behavior:
- Calls
compare_performancewith current and previous month date ranges - Returns queries that gained or lost the most clicks, with delta values for clicks, impressions, CTR, and position
- Highlights trending keywords and declining pages to prioritize optimization efforts
Use Cases
- SEO Performance Monitoring — Track clicks, impressions, CTR, and average position over time
- Keyword Research & Opportunities — Find keywords you rank for with high impressions but low CTR
- Content Optimization — Identify which pages need improvement based on search data
- Technical SEO Audits — Check URL indexing status, sitemap health, and mobile usability
- Competitive Analysis — Compare performance periods to spot trends and drops
- Reporting — Export data for SEO reports and dashboards
- Brand Monitoring — Track brand vs non-brand search traffic
How Authentication Works
This package ships with built-in OAuth credentials — you don't need to create a Google Cloud project. When you run gsc-mcp-auth:
- Your browser opens Google's login page
- You log in with your Google account
- You grant read-only access to your Search Console data
- Tokens are saved locally on your machine (
~/.gsc-mcp/tokens/)
Your data never leaves your machine. The OAuth credentials just identify the app — each user authenticates separately and can only access their own Search Console data.
Advanced: Use Your Own OAuth Credentials
If you prefer to use your own Google Cloud project:
Option A: Environment variables
export GSC_CLIENT_ID="your-client-id"
export GSC_CLIENT_SECRET="your-client-secret"
Option B: Credentials file
Save your OAuth credentials JSON to ~/.gsc-mcp/credentials.json
<details> <summary>How to create your own Google Cloud OAuth credentials</summary>
- Go to Google Cloud Console
- Create a project (or select existing)
- Enable the Google Search Console API
- Go to Credentials > Create Credentials > OAuth 2.0 Client ID
- Choose Desktop app as application type
- Download the credentials JSON file
</details>
Requirements
- Node.js >= 18
- A Google account with access to Google Search Console
Related
- Model Context Protocol — The open standard for AI-tool integration
- Claude Desktop — Anthropic's desktop AI assistant
- MCP Server Registry — Curated list of MCP servers
Privacy Policy
See PRIVACY.md for our complete privacy policy.
TL;DR: This extension runs locally on your machine. OAuth tokens are stored locally in ~/.gsc-mcp/, and all Search Console data is queried directly from Google's API without passing through any intermediary. No data is collected, stored, or transmitted to any third party by this MCP server.
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。