mcpField
T
trenddata

trenddata

本地服务
github.com/CloudCorpRecords数据与分析03 天前更新

关于 trenddata

trenddata 是用于获取 Google Trends 数据 JSON 的本地桥接工具,适合探索搜索热度的分析人员和应用。它将请求转发至 HasData 托管的 MCP 服务,并提供命令行和 stdio MCP 接入。

主要功能

  1. 01获取随时间和地区变化的热度
  2. 02查询相关主题和搜索词
  3. 03按地理位置、日期和类别筛选
  4. 04选择 Google 属性和时区
  5. 05命令行与 stdio MCP 模式

适用场景

  1. 01比较不同地点的搜索热度
  2. 02跟踪指定日期范围内的词条
  3. 03探索主题相关搜索

MCP 相关

通过本地 MCP 服务向客户端提供 Google Trends 数据查询工具,并将调用转发至 HasData 托管的 MCP 服务。同一工具也可通过命令行使用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-trenddata": {
"command": "npx",
"args": [
"-y",
"@reneturcios/trenddata"
]
}
}
}
启动命令npx -y @reneturcios/trenddata

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/trenddata0.1.0
ocighcr.io/cloudcorprecords/trenddata:0.1.0

工具

1

收录的工具列表 · 更新于 2 天前

参数类型必填说明
qstring是指定要检索趋势数据的搜索词。
tznumber否定义以分钟为单位的时区偏移量。默认值为 420(太平洋夏令时间(PDT):UTC-7)。此参数的有效范围为 -1439 至 1439。 要计算特定时区的 `tz` 值,可以使用 UTC +0 与目标时区之间的时差。 示例: - `420`:太平洋夏令时间(PDT) - `60`:中欧时间(CET) - `-540`:日本标准时间
catstring否搜索词的类别。默认值为 0("All categories")。请提供一个有文档记录的准确值(允许 1133 个),例如 `0`、`3`。
geostring否指定搜索位置。如果未设置或为空,则默认为 Worldwide。请提供一个文档中列出的精确值(共允许 3517 个),例如 `AF`、`AF-BDS`。
datestring否定义搜索的日期范围。可用选项: - `now 1-H`:过去 1 小时 - `now 4-H`:过去 4 小时 - `now 1-d`:过去 1 天 - `now 7-d`:过去 7 天 - `today 1-m`:过去 30 天 - `today 3-m`:过去 90 天 - `today 12-m`:过去 12 个月 - `today 5-y`:过去 5 年 - `all`:2004 年至今 也可以使用以下格式之一指定自定义日期范围: - `yyyy-mm-dd yyyy-mm-dd` -(例如 2021-10-15 2022-05-25),用于 2004 年至今的日期。 - `yyyy-mm-ddThh yyyy-mm-ddThh` -(例如 2022-05-19T10 2022-05-24T22),用于一周范围内带小时的日期。小时将根据 tz(时区)参数计算。
gpropenum否按特定属性对结果排序。默认属性为 Web Search(未设置 `gprop` 参数或该参数为空时应用)。 可用选项: - `images`:图片搜索 - `news`:新闻搜索 - `froogle`:Google Shopping - `youtube`:YouTube 搜索images | news | froogle | youtube
regionenum否使用“Interest by region”数据类型时,用于获取更具体的结果。其他数据类型不接受此参数。默认值取决于设置的 geo 位置。 可选值: - `country`:国家 - `region`:次级区域 - `dma`:都市圈 - `city`:城市 注意:并非所有区域选项都能在每个 geo 位置返回结果。country | region | dma | city
dataTypeenum否定义要执行的搜索类型。 可选值: - `timeseries`:随时间变化的兴趣度(默认)。每次搜索可接受单个或多个查询词。 - `geoMap`:按区域查看兴趣度。每次搜索可接受单个或多个查询词。 - `relatedTopics`:相关主题。每次搜索仅接受单个查询词。 - `relatedQueries`:相关查询。每次搜索仅接受单个查询词。timeseries | geoMap | relatedTopics | relatedQueries

详细介绍

trenddata

trenddata 是一个小型本地桥接程序,可连接托管的 HasData Google Trends MCP 服务,并以 JSON 格式返回 Google Trends 数据。提供一个或多个搜索词,它就会获取这些词的兴趣度随时间变化、 各地区兴趣度以及相关主题和相关查询。 可按地理位置、地区粒度(国家、次级区域、都市区或城市)、日期 范围、类别、时区偏移量和 Google 属性缩小查询范围 (默认使用网页搜索,也可使用图片、新闻、购物或 YouTube)。

此桥接程序不会存储自己的趋势数据。它会在本地提供上游服务的工具 列表,与从实时端点捕获的内容完全一致,并将每次 工具调用转发至上游,原样返回结果。捕获的接口仅包含一个只读获取 工具:其中没有写入、消息传递或支付工具。

工具

  • hasdata_google_trends_search_getTrendsData — 获取 某个查询的 Google Trends 数据。必需参数:q( 搜索词)。可选参数:geo(位置代码; 未设置或为空时表示全球)、region(country / region / dma / city,与 按地区兴趣度数据类型搭配使用)、dataType (timeseries / geoMap / relatedTopics / relatedQueries)、tz(以分钟为单位的时区偏移量, 默认值为 420)、cat(类别代码,默认值 0 表示 所有类别)、gprop(images / news / froogle / youtube;未设置时使用网页搜索),以及 date(命名范围,例如 today 12-m 或 all, 或自定义的 yyyy-mm-dd yyyy-mm-dd 范围)。返回 兴趣度随时间变化的序列、地理层级细分数据,以及 按相对分数排列的上升趋势和热门相关主题及查询。

配置

  • HASDATA_GOOGLE_TRENDS_MCP_URL(可选)— 覆盖 上游端点。默认值为 https://mcp.hasdata.com/mcp?apis=google_trends。 (此覆盖钩子是本次重建自行标注的还原。)
  • HASDATA_API_KEY(可选)— 设置后,每个 上游请求都会携带 x-api-key: <key> 标头,使用调用者自己的 HasData API 密钥。未设置时, 不会发送密钥标头。(标头名称和环境变量名称由原始项目的 注册记录确定;从此环境变量转发密钥是自行标注的还原 —— 原始接口是在不带密钥的情况下捕获的。)
转发机制

首次调用工具时,客户端会与上游建立可流式传输的 HTTP 会话:先发送 JSON-RPC initialize 请求(protocolVersion 2025-03-26, clientInfo 名称为 trenddata),然后发送 notifications/initialized 通知,最后发送携带调用者参数的 tools/call 请求,参数保持不变。上游在响应 initialize 时若返回 Mcp-Session-Id 标头,该值会随 会话的后续每个请求发送;此会话在进程运行期间重复使用。 响应可能是普通 JSON,也可能是服务器发送事件;两种格式都会读取。

成功的上游结果会原样传递,包括上游设置的任何 isError 标志。 失败情况——JSON-RPC 错误、非 2xx 状态码、无法读取响应或 无法完成的请求——会作为 isError 结果返回,文本以 trenddata error: 开头(此错误呈现方式是本次重建自行标注的还原)。

CLI

此工具也可作为子命令使用,接受一个 JSON 参数字符串:

npx @reneturcios/trenddata hasdata_google_trends_search_getTrendsData '{"q":"electric vehicles","geo":"US","dataType":"timeseries","date":"today 12-m"}'
npx @reneturcios/trenddata --version

退出代码:成功时为 0,结果为 isError 时为 1,用法错误时为 2。

MCP 服务

npx -y @reneturcios/trenddata mcp

MCP 客户端配置:

{
  "mcpServers": {
    "trenddata": {
      "command": "npx",
      "args": ["-y", "@reneturcios/trenddata", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/trenddata
docker run --rm ghcr.io/cloudcorprecords/trenddata --version

容器的默认命令是 mcp,因此第一种形式是 stdio MCP 服务;其他参数 均会正常传递给 CLI。

开发

npm install
npm run build
npm test
npm run dev

测试套件完全针对存根 JSON-RPC 上游运行,不会进行实时网络调用。

许可证

MIT — 参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。