mcpField
G
google-forums-search

google-forums-search

github.com/finpeakinc生产力241 次安装3 天前更新
代码仓库

关于 google-forums-search

通过 Frevana 搜索 Google Forums 结果的技能,适合查找论坛式讨论。它验证返回内容为 JSON,将相同数据保存到本地文件并输出。

主要功能

  1. 01搜索 Google Forums 结果
  2. 02支持设备、语言、地区和日期参数
  3. 03校验响应是否为 JSON
  4. 04将结果保存到本地文件
  5. 05原样输出响应数据

适用场景

  1. 01查找特定主题的论坛讨论
  2. 02按语言或地区筛选搜索结果
  3. 03保存搜索响应以供后续处理

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/finpeakinc/frevana-skills --skill google-forums-search

安装后在 Claude Code 中输入/google-forums-search确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
evals.json
scripts/
search_google_forums.sh
tests/
test_search_google_forums.sh

详细介绍

Google 论坛搜索

通过 Frevana 搜索 Google 论坛结果。

用途

此技能用于从 Google 的“论坛”标签页查找论坛类 Google 结果。

输入:

  • q
  • 可选的 device
  • 可选的 hl
  • 可选的 gl
  • 可选的 start
  • 可选的 start_date
  • 可选的 end_date

输出:

  • 已验证的 Google 论坛结果响应 JSON
  • 每次成功运行时保存到本地文件的同一份已验证 JSON

此技能会验证响应是否为 JSON,将其保存到磁盘,并在标准输出上原样返回。除非用户明确要求转换,否则不要改写或重塑返回的数据。

此技能所需内容

  • 用户提供的 q
  • 可选的 device
  • 可选的 hl
  • 可选的 gl
  • 可选的 start
  • 可选的 start_date
  • 可选的 end_date
  • 环境变量中的 FREVANA_TOKEN,或本次运行使用的显式 --token 覆盖值
  • curl
  • bash
  • python3

执行顺序

按以下流程操作,确保请求简单可靠:

  1. 确认用户已提供 q 或等效的论坛搜索查询。
  2. 优先使用脚本,不要临时编写 curl 命令。
  3. 让脚本先读取 FREVANA_TOKEN。
  4. 在交互式 Shell 中,如果缺少 FREVANA_TOKEN,脚本可以提示用户输入。
  5. 在非交互式或 Agent 工作流中,如果缺少令牌,应立即失败,并告知用户设置 FREVANA_TOKEN 或显式传入 --token。
  6. 运行一次脚本。它会将已验证的 JSON 打印到标准输出,并将同一份 JSON 保存到文件。
  7. 后续解析或总结时使用已保存的 JSON 文件,而不是再次调用搜索 API。
  8. 返回已验证的响应 JSON;如果用户不需要完整内容,则总结最相关的论坛结果。

命令

基本论坛搜索
bash <skill-path>/scripts/search_google_forums.sh \
  --q "best programming language"

--query 可作为 --q 的别名。

使用国家/地区、语言和设备进行搜索
bash <skill-path>/scripts/search_google_forums.sh \
  --q "vibe coding" \
  --gl us \
  --hl en \
  --device mobile
使用分页和日期范围进行搜索
bash <skill-path>/scripts/search_google_forums.sh \
  --q "vibe coding" \
  --start 10 \
  --start-date 20260101 \
  --end-date 20260525
将响应 JSON 保存到指定文件
bash <skill-path>/scripts/search_google_forums.sh \
  --q "vibe coding" \
  --output ./out/google-forums-search-result.json
覆盖本次运行使用的令牌
bash <skill-path>/scripts/search_google_forums.sh \
  --q "vibe coding" \
  --token "your bearer token"

固定请求结构

脚本发送以下结构的载荷,并省略未提供的可选字段:

{
  "q": "vibe coding",
  "device": "mobile",
  "hl": "en",
  "gl": "us",
  "start": 10,
  "start_date": "20260101",
  "end_date": "20260525"
}

只有 q 是必填项。用户未提供时,不要自行编造 device、hl、gl、start、start_date 或 end_date 的值。

Frevana 端点架构目前仅公开 q、device、hl、gl、start、start_date 和 end_date;不要传递 engine、api_key、output、no_cache、async 或 zero_trace 等不受支持的透传字段,也不要传递 location、uule、period_unit、period_value、nfpr、filter 或 tbs 等其他不受支持的 Google 论坛字段,除非 Frevana 端点架构先行扩展。

响应结构

API 返回 Frevana JSON。常见字段包括:

  • search_metadata
  • search_parameters
  • search_information
  • organic_results
  • related_searches
  • pagination
  • pagination

输出

  • 成功:脚本验证响应正文是否为 JSON,将其写入文件,将保存路径打印到标准错误,并将 JSON 打印到标准输出
  • 默认文件路径:./out/google-forums-search-<UTC timestamp>-<pid>.json
  • 使用 --output:将同一份 JSON 写入指定文件路径,而非默认路径
  • 失败:脚本打印响应正文或解析错误,并以非零状态退出

备注

  • 需要使用 --q 或 --query
  • 不要为了保存并总结结果而调用脚本两次。脚本打印的 JSON 与保存的 JSON 始终相同。
  • 仅在设备为 desktop、mobile 或 tablet 时使用 --device
  • 用户请求语言代码时使用 --hl
  • 用户请求国家代码时使用 --gl
  • 用户请求按结果偏移量分页时使用 --start
  • 仅在用户要求按特定日期范围搜索时使用 --start-date 和 --end-date;Frevana 要求日期字符串采用 YYYYMMDD 格式
  • 如果缺少 curl,请停止并告知用户安装 curl
  • 如果缺少 python3,请停止并告知用户安装 python3
  • 不要向用户回显 Bearer 令牌
  • 除非用户要求完整内容,否则在可用时总结论坛标题、来源/社区、链接、摘要、评论/回答数量、日期、站点链接以及后续分页信息

示例提示词

中文
  • "搜索 Google Forums 上的 vibe coding"
  • "查 Google Forums 里 q=vibe coding,gl=us,hl=en,移动端"
  • "Google Forums 搜索 AI coding,从 20260101 到 20260525,并保存原始 JSON"
英文
  • "Search Google Forums for vibe coding"
  • "Look up Google Forums results for vibe coding with gl=us, hl=en, and device=mobile"
  • "Search Google Forums for AI coding from 20260101 to 20260525 and save the raw JSON"

评论

支持 Markdown