关于 Google Search Console
Google Search Console 是本地运行的 MCP 服务,可通过自然语言分析搜索表现、索引和站点地图。它结合 Search Console API 报表与检查功能,处理多语言查询,并可选将数据保存在本地,以分析超出 Google 16 个月期限的历史记录。
主要功能
- 01覆盖 API 维度的搜索分析
- 02小时数据与本地时区报表
- 03合并多语言查询拼写变体
- 04保存超过 16 个月的本地历史
- 05URL 检查与站点地图管理
- 06SEO 机会分析
适用场景
- 01比较不同时段的搜索流量
- 02查找争夺相同查询的页面
- 03检查索引与结构化数据问题
- 04利用同步历史分析长期表现
MCP 相关
提供 37 种工具,用于访问 Google Search Console 报表、检查 URL、管理站点地图和资源,以及查询本地历史数据。服务在本地运行,支持 stdio 或 HTTP;写入操作需显式启用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
37收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Google Search Console MCP 服务 — gsc-mcp-full
面向 Google Search Console 的完整 MCP 服务。 用日常语言向 Claude、Cursor、Windsurf、VS Code、Codex 或任何其他 MCP 客户端询问搜索表现、索引和站点地图,并获取分析结果,而不只是一张电子表格。
37 个工具 · 覆盖 Search Console API 的每个端点 · 24 小时视图和每小时数据 · 超过 16 个月的历史数据 · 确保各种语言中的数字准确无误。
快速入门 · 工具 · 语言 · 常见问题 · 完整文档 · 项目页面

| ✅ 完整 | Search Console API 的全部 10 个实时方法、全部 6 种搜索类型(网页、图片、视频、新闻、Discover、Google 新闻)、包括按小时统计在内的全部 7 个维度,以及包含、精确、排除和正则表达式过滤器。API 中没有遗漏任何内容。 |
| ⚡ 快速 | 不到 1 秒即可启动。可在时间限制内并行检查最多 10 个 URL,每个请求最多 50 个,因此大型批次也绝不会导致客户端超时。遇到速率限制和服务器错误时会自动重试。约半秒即可对 25,000 个查询进行分组。查询已同步的历史数据时不会访问网络。 |
| 🔄 保持最新 | 基于 MCP SDK 2.x 构建。API 覆盖范围已对照 Google 自己的 API 定义(2026 年 10 月)进行检查。与 Performance 报告的最新选项保持一致:包含初步数据的 24 小时视图,以及按小时、天、周或月的粒度。每次变更都会在 Linux、macOS 和 Windows 上使用 Python 3.10–3.13 进行测试。 |
| 🧠 提供答案,而非导出数据 | 关键词蚕食、排名临界点关键词、表现不佳的标题、流量衰退页面、品牌词与非品牌词——这些分析都会为你完成,并以简短表格返回,方便 AI 进行推理。 |
| 🌍 适用于各种语言 | Search Console 会将同一个关键词的不同拼写形式拆成多行。此服务会将它们合并——包括波斯语、阿拉伯语、中文、日语、韩语、土耳其语、越南语、俄语等——因此总数才是真实总数。 |
| 🗄️ 不受 16 个月限制 | 只需将数据同步到本地文件一次;即使 Google 删除数据很久之后,仍可比较本季度与两年前同一季度的数据。 |
| 🕒 使用你的时区 | Search Console 按太平洋时间划分日期。按小时统计的数据会重新划分为你所在时区的日期。 |
| 🎯 数据值得信赖 | 标题中的总数是实际的周期总数,而不是所显示行的合计。页面 URL 不会被截短,因此可以直接传递给下一个工具。发生故障时会报告包含原因的错误,而不会返回空结果。通过了 117 项自动化测试,覆盖 Linux、macOS 和 Windows,并针对真实资源完成了端到端检查。 |
| 🔒 默认安全 | 除非你主动选择启用,否则仅提供只读访问。程序在你的设备上运行;你的登录信息不会离开设备。无需托管服务或账号,也不会收集遥测数据。 |
| 💸 免费且轻量 | 采用 MIT 许可证。仅需四个依赖项。一条命令即可运行。 |
适用对象: Claude Desktop · Claude Code · Cursor · Windsurf · VS Code(Copilot Agent 模式)· OpenAI Codex CLI · 任何通过 stdio 或 HTTP 连接的 MCP 客户端。
工具
包含 8 组共 37 个工具。你不必亲自调用它们——用自然语言提问,AI 就会选择合适的工具。
🌍 合并不同拼写形式 · 🗄️ 可处理本地历史数据(任意日期范围)· ✍️ 需要写入权限(GSC_ALLOW_WRITE=1)
📊 搜索效果
| 工具 | 提供的内容 | 可以这样问 |
|---|---|---|
performance_overview | 一屏摘要:总量、按日、周或月统计的趋势、热门查询和网页、设备、国家/地区、数据新鲜度 | “example.com 过去 6 个月的表现如何?请按月展示。” |
query_search_analytics 🌍 | 在 Search Console 中可创建的任意报告:所有维度、搜索类型和筛选条件;查询筛选条件还会匹配某个词的其他拼写形式 | “上个月来自德国、包含 'klima' 的热门移动设备查询” |
compare_periods 🌍 | 并列对比两个时段,并优先展示变化最大的项目——上一时段、去年同期、52 周前或自定义日期 | “对比本月与去年同月” |
queries_for_page 🌍 | 为某个网页带来流量的所有查询 | “人们搜索什么词会进入 /pricing/?” |
pages_for_query 🌍 | 哪些网页在某个关键词的搜索结果中排名,以及展示次数如何分布 | “哪些网页因 'air conditioner installation' 获得排名?” |
hourly_performance | Search Console 的 24 小时视图,以及按你所在时区显示的过去 10 天逐小时数据 | “显示过去 24 小时的数据” · “按德黑兰时间显示上周数据” |
data_freshness | 哪些近期日期和小时的数据已最终确定,哪些仍为初步数据 | “昨天的数据完整了吗?” |
🎯 SEO 机会
| 工具 | 提供的内容 | 可以这样问 |
|---|---|---|
striking_distance 🌍🗄️ | 排名在第 8–20 位且确有需求的关键词,以及进入首页后可获得的点击量 | “哪些关键词最有希望快速提升排名?” |
find_cannibalization 🌍🗄️ | 两个或更多网页作为独立结果相互竞争的关键词(站点链接和 #section 链接不算竞争结果),按浪费的展示次数排序 | “哪些网页在相互竞争?” |
low_ctr_opportunities 🌍🗄️ | 点击率远低于其排名应有水平的搜索结果首页内容 | “应该优先改写哪些标题?” |
content_movers 🌍🗄️ | 自上一时段以来流量下滑、上升、消失或出现的网页或查询 | “本月哪些网页流量下降了?” |
brand_split 🌍🗄️ | 品牌与非品牌流量;品牌名称会在其所有书写文字系统中进行匹配 | “我的流量中有多少来自非品牌词?” |
🌍 多语言洞察
| 工具 | 提供的内容 | 可以这样问 |
|---|---|---|
query_variants 🗄️ | Search Console 按不同拼写形式拆分统计的关键词及其实际合计数据 | “哪些关键词因拼写不同而被拆分统计?” |
language_breakdown 🗄️ | 按查询所用语言和文字系统统计点击和展示占比 | “我的流量中,阿拉伯语和英语各占多少?” |
keyboard_mistypes 🗄️ | 使用错误键盘布局输入的查询(ovdn lhadk = «خرید ماشین») | “查找使用错误键盘输入的搜索” |
top_terms 🗄️ | 所有查询中需求最高的词语——包括没有空格的中文、日文和泰文 | “我的日文查询中最常出现哪些词?” |
build_query_regex | 适用于非英语文本的正则表达式筛选条件,可用于 API 或 Search Console 界面 | “给我一个适用于 خرید خودرو 的正则表达式,可匹配所有拼写形式” |
🗄️ 无限历史记录
| 工具 | 功能 | 可以这样询问 |
|---|---|---|
sync_history | 将数据逐日复制到本地数据库,突破 Google 的 16 个月和行数上限 | “同步 example.com 最近 16 个月的数据” |
history_status | 查看已存储内容:日期范围、各资源的天数和行数 | “我保存了哪些历史记录?” |
history_query 🌍 | 查询任意已存储日期范围内的任何报告 | “查询 2025 年全年的热门搜索词” |
history_trend 🌍 | 按日、周或月查看点击次数、展示次数、点击率和排名 | “查看两年来‘热泵’的月度点击次数” |
history_compare 🌍 | 对比任意间隔的两个已存储时间段 | “比较今年第三季度和两年前第三季度” |
history_sql | 对已存储数据运行自定义只读 SQL | “在我的历史记录上运行这条 SQL:…” |
🔍 编入索引与 URL 检查
| 工具 | 功能 | 可以这样询问 |
|---|---|---|
inspect_url | 全面检查一个页面:索引状态、上次抓取时间、规范网址、robots、站点地图和富媒体搜索结果 | “/new-article/ 已编入索引吗?Google 选择了哪个规范网址?” |
inspect_urls | 并行检查最多 50 个页面,并以单个表格显示各自的索引和富媒体搜索结果判定 | “检查这 30 个 URL” |
indexing_summary | 仅显示问题:哪些页面未编入索引或结构化数据验证失败,以及原因 | “这些页面中哪些存在索引问题?” |
inspection_quota | 查看 Google 每日检查额度的使用情况 | “我今天还剩多少次检查额度?” |
🗺️ 站点地图
| 工具 | 功能 | 可以这样询问 |
|---|---|---|
list_sitemaps | 查看所有已提交的站点地图,以及 URL 数量、错误和警告 | “列出我的站点地图及其错误” |
get_sitemap | 查看某个站点地图的详情 | “Google 上次读取 sitemap.xml 是什么时候?” |
submit_sitemap ✍️ | 提交或重新提交站点地图 | “提交 example.com/sitemap.xml” |
delete_sitemap ✍️ | 从 Search Console 中移除站点地图 | “移除旧站点地图” |
🏠 资源
| 工具 | 功能 | 可以这样询问 |
|---|---|---|
list_properties | 查看账号有权访问的所有资源及对应权限级别 | “列出我的 Search Console 资源” |
get_property | 查看某个资源的详情 — 接受 example.com 和精确资源网址 | “我在 Search Console 中拥有 example.com 吗?” |
add_property ✍️ | 将网站添加到账号 | “将 newsite.com 添加到 Search Console” |
remove_property ✍️ | 从账号中移除网站 | “移除旧的 staging 资源” |
🛠️ 实用工具
| 工具 | 功能 | 可以这样询问 |
|---|---|---|
get_capabilities | 查看登录状态、访问级别、已存储的历史记录和工具列表 | “Search Console 已连接吗?” |
reauthenticate | 重新登录以切换 Google 账号 | “切换到我的另一个 Google 账号” |
每个工具的所有参数:工具参考。
快速开始
三个步骤,大约十分钟,免费。你需要一个有权访问 Search Console 的 Google 账号。
1. 创建 Google 凭据
Google 要求所有读取 Search Console 的应用都标识自身,因此你只需创建一次免费的“OAuth 客户端”。
- 打开 Google Cloud Console 并创建一个项目(名称不限)。
- 为该项目启用 Google Search Console API。
- 打开 Credentials → Create credentials → OAuth client ID。如果系统要求,先填写同意屏幕:类型选 External,应用名称不限,邮箱填写你自己的邮箱。
- 选择 Desktop app,创建客户端,然后下载 JSON。将文件保存在固定位置,例如
~/gsc/client_secret.json。 - 在同意屏幕页面点击 Publish app。否则,Google 会每隔 7 天将你登出。个人使用无需审核。
改用服务账号(适用于服务器、计划任务和团队)
- 在同一个项目中:IAM & Admin → Service accounts → Create service account。
- 打开该服务账号 → Keys → Add key → Create new key → JSON。用此文件代替 OAuth 文件。
- 在 Search Console 中,打开 Settings → Users and permissions → Add user,将服务账号的邮箱地址添加到每个资源中。
使用服务账号无需通过浏览器登录;跳过第 3 步中的 auth 命令。
2. 连接你的 AI 客户端
如果你尚未安装 uv,请先安装(该页面提供了一条命令)。它会为你下载并运行服务,无需安装其他内容。
然后将以下内容添加到客户端的 MCP 配置中,并将路径替换为你自己的文件路径:
{
"mcpServers": {
"search-console": {
"command": "uvx",
"args": ["gsc-mcp-full"],
"env": {
"GSC_CREDENTIALS_PATH": "/Users/you/gsc/client_secret.json"
}
}
}
}
各客户端的配置位置
| 客户端 | 位置 |
|---|---|
| Claude Desktop | Settings → Developer → Edit Config (claude_desktop_config.json) |
| Cursor | ~/.cursor/mcp.json,或项目中的 .cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code | .vscode/mcp.json — 内容相同,但顶层键为 "servers",且每个服务都需要 "type": "stdio" |
Claude Code — 使用一条命令,无需文件:
claude mcp add search-console -e GSC_CREDENTIALS_PATH=/Users/you/gsc/client_secret.json -- uvx gsc-mcp-full
OpenAI Codex CLI — 在 ~/.codex/config.toml 中配置:
[mcp_servers.search-console]
command = "uvx"
args = ["gsc-mcp-full"]
[mcp_servers.search-console.env]
GSC_CREDENTIALS_PATH = "/Users/you/gsc/client_secret.json"
如果桌面应用提示找不到 uvx,请将命令替换为其完整路径(在 macOS/Linux 上运行 which uvx,在 Windows 上运行 where uvx)。
3. 登录并提问
在终端中登录一次。浏览器会打开;选择拥有 Search Console 资源的 Google 账号。
export GSC_CREDENTIALS_PATH=~/gsc/client_secret.json
uvx gsc-mcp-full auth # sign in (if Google warns the app is unverified: Advanced → Continue — it's your own app)
uvx gsc-mcp-full doctor # should list your properties
重启 AI 客户端并提问:
列出我的 Search Console 资源,然后概述 example.com 的表现。
遇到问题?请参阅故障排查。
可选设置,可添加到 env 配置块中:"GSC_TIMEZONE": "Europe/Berlin",用于生成本地日期报告;如果你的查询大多使用同一种语言,也可以添加 "GSC_LANG": "fa"(或 ar、tr、ja 等)。想用 pip?运行 pip install gsc-mcp-full 即可获得相同的 gsc-mcp-full 命令。
可以尝试的提问
- “为 example.com 生成每周 SEO 报告:整体概况、变化情况,以及最值得把握的三个机会。”
- “自上个月以来,哪些页面的点击量下降了 30% 以上?它们分别失去了哪些查询?”
- “查找关键词蚕食,并告诉我每个关键词应该由哪个页面获得排名。”
- “哪些搜索结果位于第一页,但点击率较低?请推荐更好的标题。”
- “检查这 20 个 URL 是否存在索引问题。”
- “将我的流量拆分为品牌词和非品牌词。品牌词:toyota、تویوتا。”
- “同步 16 个月的历史数据,然后显示包含‘boiler’的查询的每月点击量。”
更多提示词和现成工作流,请参阅:使用指南。
语言
Search Console 会将每个不同的字符串都视为单独的查询。当同一个搜索词可以有多种输入方式时,一个关键词就会变成几条数据量较小的行:
| 用户输入的内容 | Search Console 中的行数 | 实际上是 |
|---|---|---|
| خرید ماشین کارکرده · خريد ماشين كاركرده · خرید ماشین كاركرده | 3 | 一个关键词 |
| قیمت پژو ۲۰۶ · قیمت پژو 206 · قيمت پژو ٢٠٦ | 3 | 一个关键词 |
| خرید bmw x5 · خريد BMW X5 | 2 | 一个关键词(混合文字脚本也会合并) |
| ماشین دستدوم · ماشین دست دوم · ماشین دستدوم | 3 | 一个关键词(在宽松级别下) |
| エアコン · えあこん · エアコン | 3 | 一个关键词 |
| 에어컨 설치 · 에어컨설치 | 2 | 一个关键词 |
| İstanbul klima · istanbul klima | 2 | 一个关键词 |
ovdn lhadk | 1 条无意义的查询 | «خرید ماشین»,但输入时键盘仍设置为英语 |
标记为 🌍 的工具会在分析前将这些内容合并,并为每种文字脚本制定相应规则。你看到的文本不会被更改,只有分组方式会改变。分为两个级别:标准级别会合并同一个词的不同输入形式,宽松级别还会合并拼写相近的词。
| 语言 / 文字脚本 | 标准 | 宽松级别还会合并 |
|---|---|---|
| 波斯语、阿拉伯语、乌尔都语、普什图语 | ی/ي/ى、ک/ك、ه/ة/ۀ、ا/أ/إ/آ;元音符号;tatweel;半空格;波斯数字和阿拉伯-印度数字 | ؤ→و、ئ→ی、删除 ء、乌尔都语 ے/ھ/ہ;空格差异 |
| 中文 | 全角形式、标点 | 繁体→简体(需额外安装 zh) |
| 日语 | 半角片假名、用横线代替 ー | 平假名↔片假名、中点 |
| 韩语 | 组合形式 | 空格差异 |
| 印地语及其他印度文字脚本 | 有意保留连接符(它们会改变拼写) | — |
| 希伯来语 | 元音符号 | — |
| 土耳其语 | 正确处理带点和不带点的 i(İ→i、I→ı) | 重音符号 |
| 越南语、法语、德语、西班牙语等 | 大小写、标点 | 变音符号(điều hòa = dieu hoa、straße = strasse) |
| 俄语、乌克兰语 | ё→е | — |
| 希腊语 | 大小写 | 重音符号、词尾 sigma |
可识别 26 种文字系统。仅使用英语的网站也不会丢失任何内容:大小写、分隔符和空格差异也会合并,同时 c++、c# 和 .net 仍保持独立,3.5 也绝不会变成 35。
对于中文、日语和泰语,安装额外组件后,top_terms 会使用真正的分词器——uvx --from "gsc-mcp-full[zh]" gsc-mcp-full(或 [ja]、[th]、[all])。每条规则背后的原理:语言指南。
超过 16 个月的历史记录
Google 会在 16 个月后删除 Search Console 数据,并限制单次请求返回的行数。sync_history 会将每天的数据存储在本地 SQLite 文件中,因此从开始使用当天起,这两项限制都不再适用。
uvx gsc-mcp-full sync example.com --days 480 # first run: everything Google still has
uvx gsc-mcp-full sync example.com --days 7 # daily, from cron: only new days are fetched
所有标记为 🗄️ 的工具都接受 source="history"。详情和 cron 示例:历史记录指南。
配置
设置以环境变量的形式放在客户端的 env 块中。只有第一项是必需的。
| 变量 | 默认值 | 含义 |
|---|---|---|
GSC_CREDENTIALS_PATH | — | OAuth 客户端 JSON 或服务账号密钥(自动检测) |
GSC_TIMEZONE | — | 本地日期报告所用的时区,例如 Asia/Tehran、Europe/Berlin |
GSC_LANG | auto | 当查询所用文字存在歧义时的语言提示(fa、ar、tr……) |
GSC_ALLOW_WRITE | off | 1 可启用 ✍️ 工具(然后运行一次 gsc-mcp-full auth --force) |
GSC_DATA_STATE | all | all 与 Search Console 界面一致;final 仅返回已结算的日期 |
GSC_CONFIG_DIR | ~/.config/gsc-mcp-full | 保存登录信息和历史记录的位置 |
GSC_TOKEN_PATH、GSC_DB_PATH | 配置目录内 | 单独指定文件位置 |
GSC_ROW_CAP | 100000 | 单次工具调用可获取的最大行数 |
GSC_ALLOWED_HOSTS | — | 仅限 HTTP 模式:允许通过代理访问服务的公共主机名,以逗号分隔 |
GSC_USE_ADC | off | 未设置凭据文件时,在云虚拟机上使用 Google Application Default Credentials,则设为 1 |
GSC_BIDI_ISOLATE | off | 如果表格中的从右向左文本显示混乱,则设为 1 |
命令行
gsc-mcp-full # run the server — what your AI client starts
gsc-mcp-full auth [--force] # sign in with Google
gsc-mcp-full doctor # check setup and list properties
gsc-mcp-full sync SITE --days N # store history locally
gsc-mcp-full serve --transport streamable-http --port 8000 # serve over HTTP instead of stdio
gsc-mcp-full tools # print the tool reference
安全
- 除非你另行启用,否则仅限只读。 默认登录方式无法更改 Search Console 中的任何内容。
- 所有内容都保留在你的设备上。 服务在本地运行,只与 Google 通信。登录信息保存在只有你能读取的文件中,且绝不会被记录到日志。
- 写入工具受
GSC_ALLOW_WRITE=1保护,并且每次调用都会进行检查。 - 搜索查询会被视为数据。 任何人都可以在 Google 中输入任意内容;你的数据中没有任何内容能触发操作。
更多信息请参阅安全指南。如需私下报告漏洞,请参阅 SECURITY.md。
常见问题
有官方的 Google Search Console MCP 服务吗? 截至撰写本文时(2026 年 10 月),还没有。Google 发布了 Google Analytics 的 MCP 服务,但没有发布 Search Console 的,因此像本项目这样的社区服务会使用 Google 公开的 Search Console API。
它免费吗? 是的。该服务采用 MIT 许可证开源,Search Console API 不收费,Google Cloud 项目也无需关联结算账号。
它适用于哪些 AI 助手? 任何 MCP 客户端都可以:Claude Desktop、Claude Code、Cursor、Windsurf、Agent 模式下的 VS Code、OpenAI Codex CLI 等,支持 stdio 或可流式传输的 HTTP。
它会更改或破坏我的网站吗? 不会。它只读取 Search Console 报告。启用写入权限后,它可以在 Search Console 中添加或移除资源,以及提交或删除站点地图,但不会对你的网站本身进行任何操作。
它与导出到电子表格有什么不同? 你提出问题,它就返回答案。服务会获取数据、合并拼写变体、执行分析并返回简短表格,同时限制结果大小,避免占满 AI 的上下文。
它支持 Search Console 最新的报告选项吗?
24 小时视图(按小时显示数据点,包括初步数据)以及按小时、日、周和月汇总的粒度均已支持:使用 hourly_performance 并设置 hours=24,以及在 performance_overview 和 history_trend 中设置 granularity。将网页搜索拆分为基于文本和多模态搜索(Google Lens、Circle to Search)是 Search Console 界面才有的新功能;Google 的 API 尚未返回这类数据,因此任何 MCP 服务都无法提供。
它包含网页索引、Core Web Vitals 或链接报告吗? 不包含——Google 不通过其 API 提供这些报告,因此任何 MCP 服务都无法提供。检查工具可以查询单个 URL 的索引状态。
数据可以追溯多久? Google 提供最近 16 个月的数据。开始在本地同步历史数据后,追溯范围不再受限。
我需要懂 Python 吗?
不需要。uvx 会运行所有内容;你只需编辑一个配置文件。
开发
git clone https://github.com/mamrrez/gsc-mcp-full && cd gsc-mcp-full
uv venv && uv pip install -e ".[dev,all]"
uv run pytest # no network or credentials needed
uv run ruff check
uv run python scripts/live_check.py # optional: read-only check of every tool against your own property
欢迎贡献,尤其是语言规则和真实查询示例——请参阅 CONTRIBUTING.md。
相关项目
- gtrends-mcp-full — 配套的 Google Trends MCP 服务:Trending Now、随时间和地区变化的兴趣度、相关搜索、季节性和搜索份额,无需 API 密钥。
许可证
本项目与 Google 无关,也未获 Google 认可。Google Search Console 是 Google LLC 的商标。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。