关于 Google Trends
Google Trends 是一个面向趋势研究、营销和内容规划的 MCP 服务,可查询热门搜索、关键词兴趣、地区分布及相关查询,并提供趋势分析。它还支持保存本地趋势历史;无需 API 密钥或登录。
主要功能
- 01查询实时热门搜索及其搜索量
- 02查看关键词的时间与地区兴趣
- 03获取相关查询、主题和趋势
- 04分析季节性、动量与搜索份额
- 05保存并检索本地趋势历史
适用场景
- 01发现特定国家或地区的热门话题
- 02比较品牌或关键词的搜索兴趣
- 03规划季节性内容发布时间
- 04追踪趋势变化及搜索份额
MCP 相关
作为 MCP 服务,它向客户端提供 32 个工具、4 个工作流提示词和 2 个参考资源,涵盖 Google Trends 查询与分析。支持 stdio 和 HTTP;部分工具可读取或保存本地历史数据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
32收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Google Trends MCP Server — gtrends-mcp-full
功能完整的 Google Trends MCP 服务。 询问 Claude、Cursor、Windsurf、VS Code、Codex 或任何其他 MCP 客户端:人们在搜索什么、在哪里搜索、何时搜索,以及当下什么正在走红——你得到的是分析结果,而不是一张需要费力查看的图表。
32 个工具 · Trending Now 提供真实搜索量 · 随时间、地区和相关搜索变化的兴趣度 · 季节性、发展势头和搜索份额 · 无需 API 密钥、浏览器或登录。
项目主页 · 快速开始 · 工具 · 提示词 · 配置 · 如何避免被拦截 · 常见问题 · 文档

你将获得
| ✅ 功能完整 | Google Trends 网站上的所有内容:完整的 Trending Now 列表(每个国家有数百条趋势,包含搜索量、增长幅度、开始时间、类别以及每条趋势中的查询),趋势背后的新闻、精确到分钟的随时间变化的兴趣度、按国家、地区、城市和都会区划分的兴趣度、相关查询和主题、所有类别和地点,以及网页、YouTube、新闻、图片和购物搜索。 |
| 🔑 无需任何设置 | 无需 API 密钥、Google Cloud 项目、登录或无头浏览器。安装后即可提问。 |
| 🧠 提供答案,而非图表 | 它是在增长还是消退?何时达到峰值,内容必须何时上线?谁的搜索份额正在领先?什么突然飙升,又是在何时?系统会为你计算,并以简短表格的形式返回,方便 AI 进行推理。 |
| 📈 突破网站限制 | 用同一标尺比较 25 个词条,而不是 5 个。查看多年来的每日数据,而不是仅限 9 个月。Trending Now 历史记录可按需长期保留,而不是仅保留一周。 |
| 🛡️ 持久稳定运行 | 控制请求频率、维持持久会话、退避等待而非反复请求,并使用即使 Google 无响应也能继续提供答案的缓存——还会明确说明这一点。相关搜索请求和图表请求分别计入预算,因此其中一项达到限制也不会导致其他功能不可用。 |
| 🎯 如实呈现数字 | 每个数值都会标明其含义:Google 的 0–100 指数,绝非搜索次数。部分时间段会明确标记。出错时会返回错误原因和后续操作建议,绝不会返回空结果。 |
| 💸 免费轻量 | 采用 MIT 许可。仅有两个依赖项。在你的设备上运行;除 Google 外,不会向任何地方发送数据。已在 Linux、macOS 和 Windows 上使用 Python 3.10–3.13 测试。 |
适用于: Claude Desktop · Claude Code · Cursor · Windsurf · VS Code(Copilot 代理模式)· OpenAI Codex CLI · 任何通过 stdio 或 HTTP 连接的 MCP 客户端。
工具
5 组共 32 个工具。你无需亲自调用它们——只需用日常语言提问,AI 就会选择合适的工具。
🗄️ 操作本地数据文件,不会向 Google 发送请求
🔥 当前热门趋势
| 工具 | 提供的内容 | 可以这样提问 |
|---|---|---|
trending_now | 某个国家或地区的完整「当前热门」列表:搜索量、增长情况、开始时间、仍在持续还是已经结束、类别,以及人们针对同一事件输入的其他搜索词。可按类别、状态、搜索量或文本筛选 | “过去 4 小时德国有哪些热门趋势?” · “美国搜索量超过 100K 的活跃体育趋势有哪些?” |
trend_details | 某个趋势的完整信息:其中的所有搜索词、背后的新闻文章,以及过去一周逐小时变化的趋势曲线 | “为什么 ‘pentobarbital’ 会成为热门趋势?” |
trending_feed | 每日热门趋势及其标题和链接——回答「那里今天有什么新闻」最快捷的方式 | “列出伊朗今天的热门搜索和新闻标题” |
trending_across_countries | 同时在多个国家出现的趋势,即使标题不同也会归为一组 | “美国和英国现在都有哪些热门趋势?” |
match_trends | 当前哪些趋势与你关注的主题、品牌或产品相关——可用于借势营销 | “今天有没有关于电动汽车、Tesla 或充电的热门趋势?” |
🔎 探索关键词
| 工具 | 提供的内容 | 可以这样提问 |
|---|---|---|
keyword_overview | 一次调用即可获取完整的 Trends 页面信息:趋势曲线、方向、热门地点、增长中的相关搜索词和热门相关搜索词 | “给我看看英国 ‘heat pump’ 的 Google Trends 情况” |
interest_over_time | 在同一刻度上查看最多 5 个词条的主要图表——时间范围可从 1 小时到 2004 年至今,也可设置地点、类别和搜索类型,并支持运算符(a + b、a -b、"a b") | “比较过去 5 年德国对 tesla 和 byd 的关注度” · “本周 YouTube 上对 ‘lofi’ 的关注度” |
interest_by_region | 查看某个词条最受关注的地区:国家、地区、城市或都会区。输入多个词条时,可比较各地的领先词条 | “美国哪些州搜索 ‘tesla’ 最多?” · “哪些地方对 byd 的关注度超过 tesla?” |
related_queries | 查看人们搜索某个词条时还会搜索什么——包括热门搜索词和增长中的搜索词,并标记搜索量突增项 | “‘solar panels’ 的相关搜索中,哪些正在增长?” |
related_topics | 查看与某个词条一起搜索的人物、品牌和事物,并附上主题 ID | “哪些主题与 ‘tesla’ 相关?” |
compare_periods | 在同一刻度上比较一个词条在两个时间段内的表现:今年对比去年、本季度对比上一季度 | “‘sunscreen’ 的热度是否超过去年夏天?” |
compare_locations | 并排比较一个词条在最多 5 个国家或地区的关注度 | “比较印度、英国和澳大利亚对板球的关注度” |
🧠 分析
| 工具 | 提供的内容 | 可以这样提问 |
|---|---|---|
trend_momentum | 对每个词给出判断——突破、上升、稳定、下降或新词;同时提供同比变化、最近一个季度与前一季度的对比、长期趋势斜率以及距峰值的差距 | “这八个产品创意中,哪些确实在增长?” |
seasonality | 全年的节奏:逐月指数、峰值月份和低谷月份、重复规律的稳定程度、逐年增长情况、未来六个月的趋势,以及内容应该上线的日期 | “人们什么时候搜索空调?我应该什么时候发布内容?” |
content_calendar | 最多 8 个主题的发布日历,按最早到期时间排序;常青主题单独列出 | “为这些主题制定一份内容日历” |
share_of_search | 你的品牌相对于最多 4 个竞争对手的搜索份额——整体、开始时、结束时以及百分点变化 | “Toyota 相对于 Honda、Ford 和 Tesla 的搜索份额是多少?” |
compare_many | 在同一尺度上对 6 至 25 个词进行排名,突破网站的五个词限制 | “按美国的搜索热度给这 20 个汽车品牌排名” |
find_spikes | 某个词热度飙升的时间:每次飙升的开始、峰值和结束时间,以及达到平时水平的多少倍 | “过去五年里,‘earthquake’ 的搜索热度什么时候飙升过?” |
daily_history | 多年来逐日的搜索热度(网站只提供约九个月的数据),以及星期规律 | “2024 年和 2025 年 ‘pizza delivery’ 的每日热度如何?哪一天最高?” |
keyword_ideas | 最多 5 个种子词的上升趋势相关查询和热门相关查询,合并并去重,突破性查询排在前面 | “围绕 ‘electric bike’ 和 ‘e-scooter’ 给我一些关键词创意” |
🗄️ Google 不会保留的历史记录
| 工具 | 提供的内容 | 可以这样提问 |
|---|---|---|
snapshot_trending | 将当前的 Trending Now 列表保存到本地文件。Google 大约一周后会移除趋势;此工具会将其保留下来 | “保存今天美国、英国和德国的趋势” |
trending_history 🗄️ | 搜索所有已保存的内容:某个主题何时成为趋势、热度有多高、持续了多久 | “上个月美国有没有关于 ‘iphone’ 的趋势?” |
watchlist_add 🗄️ | 按地点将词条添加到观察列表,并附上备注 | “在英国观察 ‘heat pump’ 和 ‘solar panels’” |
watchlist_report | 当前观察列表的测量结果:趋势方向、与上次报告相比的变化,以及某个词条今天是否正在成为趋势 | “我的观察列表表现如何?” |
watchlist_remove 🗄️ | 从观察列表中移除词条 | “停止观察 ‘fax machine’” |
history_sql 🗄️ | 对已保存的趋势、快照、观察列表和读数执行只读 SQL 查询 | “本月德国哪些类别最常成为趋势?” |
🧭 查询与实用工具
| 工具 | 提供的内容 | 可以这样提问 |
|---|---|---|
find_location | 任意国家、地区、州或都市区的代码,或其中包含的地点列表 | “德黑兰省的 Google Trends 代码是什么?” |
find_category | 类别 ID,用于将含义模糊的词限定为一种含义 | “将 ‘jaguar’ 限定为汽车” |
find_topic | Google 为某个名称提供的主题——一个 ID 即可涵盖某事物的所有语言和拼写形式 | “使用 Tesla 公司,而不是这个词” |
get_capabilities 🗄️ | 设置、会话状态、缓存和历史数据覆盖范围,以及工具列表 | “Trends 服务是否设置正确?” |
check_endpoints | 向每个 Google Trends 端点各发送一个问题,并报告哪些端点仍能正常响应 | “上一次 Trends 调用为什么失败?” |
clear_cache 🗄️ | 删除已保存的答复,也可以选择重置会话 | “刷新趋势数据” |
包含所有参数的完整参考文档见 docs/tools.md——该文档由代码生成,因此始终保持最新。
提示词
四个现成的工作流,会显示在客户端的提示词菜单中。每个工作流都会串联多个工具,并说明最终答案必须包含哪些内容。
| 提示词 | 生成内容 |
|---|---|
trend_report | 全面解读一个关键词:趋势方向、季节性、导致峰值的事件、新兴主题,以及应对建议 |
newsjacking_brief | 当天与你关注的主题相关的趋势、每个趋势背后的故事、要定位的查询、切入角度和风险提示 |
seasonal_content_plan | 针对主题列表制定的全年十二个月发布计划 |
market_comparison | 某品牌相对于竞争对手的搜索份额、各自领先的领域,以及每个品牌周边正在兴起的趋势 |
还公开了两个参考页面作为 MCP 资源:gtrends://guide(如何解读数据、时间范围、运算符和主题)以及 gtrends://trending-categories。
快速开始
你需要 Python 3.10 或更高版本,以及 uv(或 pip)。
1. 添加到客户端
无需提前下载:uvx 会从 PyPI 获取软件包并运行。
Claude Code
claude mcp add gtrends -- uvx gtrends-mcp-full
Claude Desktop、Cursor、Windsurf、VS Code —— 将以下内容添加到客户端的 MCP 配置中:
{
"mcpServers": {
"gtrends": {
"command": "uvx",
"args": ["gtrends-mcp-full"],
"env": {
"GTRENDS_GEO": "US",
"GTRENDS_TIMEZONE": "America/New_York"
}
}
}
}
两个 env 条目都是可选的。无需其他配置:不需要密钥,也不需要登录。
2. 检查
uvx gtrends-mcp-full doctor
doctor 会向每个 Google Trends 端点各发送一个请求;八项都应显示 OK。首次运行时,图表端点可能会提示会话仍在验证中——一分钟半后就会通过,此后不会再出现。
3. 提问
美国目前有哪些热门趋势?其中哪些与科技有关? “heat pump”在英国的搜索热度是否在上升?何时达到峰值? 按搜索兴趣度对德国的这 15 个汽车品牌进行排名。 今年 Toyota 相对于 Honda 和 Ford 的搜索份额是多少?
使用命令行
安装软件包后(uv tool install gtrends-mcp-full 或 pip install gtrends-mcp-full):
gtrends-mcp-full doctor # configuration and endpoint check
gtrends-mcp-full trending US # print what is trending now
gtrends-mcp-full snapshot US,GB,DE # save Trending Now to the local history (for cron)
gtrends-mcp-full --transport streamable-http --port 8000 # serve over HTTP instead of stdio
通过定期安排快照(例如每六小时一次)来保留趋势历史记录:
0 */6 * * * gtrends-mcp-full snapshot US,GB,DE
解读数据
Google Trends 返回的所有数据都是从 0 到 100 的指数,而非搜索次数:表示某个词条在所有搜索中的占比,并按单次请求中的最高点重新缩放为 100。由此可得三点,这些工具也正是围绕它们构建的:
- 只有同一请求中的词条才能相互比较。
compare_many、share_of_search、compare_periods和compare_locations会为你统一刻度。 - 跨地区比较的是当地搜索中的占比。 小国家的排名可能高于大国家。
- 时间范围的最后一个数据点通常不完整。 系统会标记该数据点,并将其排除在平均值之外。
例外是 Trending Now,它提供真实的搜索量(按区间统计),例如“200K+”。
搜索词会按字面匹配。若要将两种写法合并为一个词条,请用 + 将它们连接起来(e-mail + email);若要查询某个事物的名称,find_topic 会提供一个主题 ID,Google 可通过它匹配不同语言和拼写。
配置
所有设置均为可选。
| 变量 | 默认值 | 作用 |
|---|---|---|
GTRENDS_GEO | worldwide | 未指定位置的工具调用使用的默认位置代码(US、IR、US-CA) |
GTRENDS_HL | en-US | Google 返回的名称(位置、类别、主题)所用的语言 |
GTRENDS_TIMEZONE | this machine's | 结果中的时间和小时数据所用的 IANA 时区,例如 Asia/Tehran |
GTRENDS_PROXY | none | 向 Google 发送请求时使用的 HTTP(S) 代理 URL |
GTRENDS_MIN_INTERVAL | 1.5 | 向 Google 发送请求的间隔秒数 |
GTRENDS_CACHE_TTL | 3600 | 图表答案的复用时长(秒) |
GTRENDS_TRENDING_TTL | 300 | Trending Now 答案的复用时长(秒) |
GTRENDS_TIME_BUDGET | 50 | 单次工具调用等待 Google 响应的最长时间(秒),超时后会返回结果 |
GTRENDS_COOKIE / GTRENDS_COOKIES_FILE | none | 已登录的 Google 会话(原始 Cookie 标头或 Netscape cookies.txt)。仅 related_topics 需要;参见安全 |
GTRENDS_OFFLINE | off | 仅使用缓存作答,绝不联系 Google |
GTRENDS_CONFIG_DIR | ~/.config/gtrends-mcp-full | 数据文件和会话 Cookie 的存放位置 |
GTRENDS_DB_PATH | <config dir>/trends.sqlite | 数据文件:缓存、趋势历史记录、关注列表 |
GTRENDS_ALLOWED_HOSTS | none | 反向代理后 HTTP 模式允许的主机名。HTTP 模式没有身份验证,若未设置此项,则不会在公共地址上启动——参见安全 |
如何避免被封锁
Google Trends 没有面向一般用途的公共 API,因此此服务会调用与 Trends 网站相同的端点。这些端点设有速率限制,并会严厉限制行为像脚本的脚本。此服务采取了以下措施:
- 一个长期会话。 没有会话 Cookie,Google 会拒绝图表端点;而刚签发的 Cookie 在最初 90 秒内也会被拒绝。服务启动时会获取一个 Cookie,在后台等待其生效后将其保存,并在之后每次运行时重复使用。无需 Cookie 即可使用的端点——Trending Now、信息流、查询——不会等待它。
- 控制请求频率。 请求之间会留出间隔:默认 1.5 秒,图表请求为 2 秒,而最难应付的端点——相关搜索——两次请求之间间隔 6 秒。请求被拒后,间隔会在 5 分钟内加长。
- 退避,然后暂停。 遇到真正的速率限制时,会以逐渐加长的延迟重试几次。如果仍然受限,服务会暂停请求该组端点几分钟,而不是让封锁加重——其他组仍可正常工作。
- 缓存与回退。 每个答案都会被保存。同一问题问两次,只发出一个请求。如果 Google 拒绝请求,服务会返回较早的答案,并标明其时效。
- 从设计上减少请求。 一次图表请求可包含 5 个词条;同一问题的第二次图表请求会复用第一次请求的令牌。
- 时间预算。 工具调用会在预算时间内返回现有结果,并指出缺少的内容,而不是让客户端一直等待。
check_endpoints(或 gtrends-mcp-full doctor)会随时告知哪些端点可以响应,以及故障是由速率限制、端点变更还是网络问题导致的。
常见问题
这是 Google Trends 的官方 API 吗?
不是。Google 于 2025 年宣布推出官方 API,但目前仍处于仅向获批测试者开放的封闭 Alpha 阶段。此服务使用 Trends 网站背后的端点,无需密钥。这些端点没有文档,且可能发生变化;如果有端点变更,check_endpoints 会指出是哪一个,修复方法是更新软件包。
我需要 Google 账号吗?
不需要。匿名会话调用 related_topics 时会返回空列表——Google 不会提供该数据,并且工具会说明这一点。提供已登录的 Cookie 即可解锁此功能;其他所有功能都无需登录。
它能提供搜索量吗? Trending Now 会提供真实搜索量,按区间显示(2K+、200K+)。其他数据都是 0–100 的指数,用于衡量相对关注度。没有任何工具会对此作出误导性描述。
我两次请求了相同内容,但有一个数字相差了 1。 Google Trends 根据搜索样本计算数据,因此重复请求的结果可能略有不同。在缓存有效期内,缓存会返回相同结果。
工具提示 Google 正在进行速率限制。
请等待几分钟;缓存的结果仍可正常使用。如果经常遇到这种情况,请在一次调用中查询多个关键词,而不是每个关键词单独调用;也可以调高 GTRENDS_MIN_INTERVAL,或设置 GTRENDS_PROXY。
工具提示会话仍在验证中。 这是首次启动后的前 90 秒。在此期间,趋势工具仍可使用,而且验证不会再次发生:会话会被保存。
为什么小国的排名会超过大国? 因为该指数衡量的是某个地区自身搜索量中的占比,而非搜索次数。
我的数据存在哪里?
数据存储在你计算机上的一个 SQLite 文件中(~/.config/gtrends-mcp-full/trends.sqlite):缓存的结果、你保存的 Trending Now 快照,以及你的关注列表。除发送给 Google Trends 的请求外,任何数据都不会发送到其他地方。
开发
uv venv && uv pip install -e ".[dev]"
uv run pytest # no network needed: the tools run against a fake Google Trends
uv run ruff check src tests
python scripts/gen_tools_doc.py # after changing a tool's signature or docstring
python scripts/record_fixtures.py # re-record the real answers the contract tests replay (about 15 requests to Google)
请参阅 CONTRIBUTING.md 和 CHANGELOG.md。
相关项目
- gsc-mcp-full — 配套的 Google Search Console MCP 服务:提供 37 个工具、覆盖所有 API 端点、支持小时级数据,并可查看超过 16 个月的历史记录。
许可证
MIT。与 Google 无关联,也未获 Google 背书。Google Trends 是 Google LLC 的商标。Google Trends 数据的使用须遵守 Google 的服务条款。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。