关于 subimpact data (Apify)
@subimpact/data-mcp 通过一个 MCP 服务向 AI Agent 提供多种公开数据工具,实际采集由 Apify actors 执行。覆盖搜索、社交、招聘、地图、电商等来源,运行费用计入使用者的 Apify 账户。
主要功能
- 01搜索结果和 Google AI 答案
- 02新闻、社交媒体和视频数据
- 03地图、职位和活动信息
- 04网页内容提取和 SEO 审计
- 05筛选工具并设置单次费用上限
- 06获取长时间任务的运行结果
适用场景
- 01采集搜索结果和 AI Overview
- 02监测新闻及社交媒体提及
- 03收集职位、活动或地图信息
- 04为 RAG 工作流提取网页内容
MCP 相关
服务使用配置的 APIFY_TOKEN 启动 Apify actors,并将数据集条目返回给 MCP 客户端。长时间运行的调用会返回 runId,可通过 get_run_results 查询结果。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
23收录的工具列表 · 更新于 3 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| gl | string | 否 | Google 结果的两字母国家代码,例如 us、my、uk、sg。 |
| hl | string | 否 | 两字母语言代码,例如 en、ms、zh。 |
| udm56 | boolean | 否 | 为 true 时,会在搜索 URL 后追加 &udm=56。测量后默认值为 FALSE(2026-09-07 A/B 测试,10 个查询 x 2 个变体):udm=56 将 AIO 覆盖率从 8/10 降至 4/10,且未固定经典界面(AI Mode 占比不变)。保留此选项用于对照;若要使用 Google 的默认路由,请保持关闭。 |
| mobile | boolean | 否 | 为 true 时,会使用设置了移动设备标头的设备抓取 SERP 和 folsrch 片段(got-scraping 标头生成器,设备:['mobile'])。默认值为 FALSE。测量结果(2026-09-07 峰值测试,10 个查询 x 4 个变体,gl=sg):移动 UA 将截断率从 6/8(75%)降至 3/8(37%),平均答案长度从 687 提高到 852 个字符,抓取成功数从 15/20 提高到 19/20。样本量 n=10,仅一个市场、一天的数据——EnterRank 的配对 A/B 测试(30 个查询 x 2,MY 市场)结论不明确:29 个查询中,没有一个在两组中都呈现带有 AI Overview 的经典结果(商业提示词集合会路由到 AI Mode)。在经典结果提示词集合得出可靠结论前,不要更改默认值。 |
| queries | array | 是 | 要运行的搜索查询列表。每次运行最多 1000 个。 |
| location | string | 否 | 结果的地理位置目标,例如 "New York, NY" 或 "Kuala Lumpur"。留空 = Google 使用代理 IP 地理位置。通过 Google uule 在服务器端编码(与 SerpAPI 相同)。 |
| _maxItems | integer | 否 | 向模型返回的数据集项数(1-1000,默认 50)。仅截断响应;Actor 收集的数据或收费不会因此改变。 |
| maxResults | integer | 否 | 每个查询返回的自然搜索结果数(1-10,默认 10)。 |
| concurrency | integer | 否 | 并行查询数(1-30,默认 10)。A/B 测量结果:c5 下 20 个查询耗时 34 秒,c10 下 35 秒,c20 下 65 秒——瓶颈在 SERP 代理池,因此超过约 10 个工作线程后延迟会大幅增加。10 个工作线程的吞吐量与 5 个相同,并为 AI Overview 密集型集合留有余量。 |
| _maxChargeUsd | number | 否 | 每次运行的 USD 支出上限(默认 0.5)。作为运行选项 maxTotalChargeUsd 传递给 Apify,因此运行会在达到此费用时停止。 |
| excludeAiMode | boolean | 否 | 默认值为 TRUE。当 Google 提供 AI Mode 界面而非经典 AI Overview 时(如果启用了可选的 retryAiModeForClassic 重新抓取,则在该操作之后),该行不包含 ai_overview。search_metadata.ai_mode_detected 和 search_metadata.ai_mode_excluded 为 true。仍会返回自然搜索结果和「用户也会问」;该行状态为 Success 并计费,与 Google 未显示 AI Overview 的查询相同。设为 false 可像以前一样提供 AI Mode 答案(标记 ai_mode_detected,状态为 Success,且计费)。 |
| captureRawHtml | boolean | 否 | 为 true 时,会将每个查询的原始 SERP HTML 保存到键值存储中(键:raw-<query>-<ts>.html)。用于构建黄金测试语料和调试选择器偏移。每个查询会向 KV 存储增加约 200-400KB。默认值为 false。 |
| retryDeferredAIO | boolean | 否 | Google 会异步生成 AI Overviews——首次抓取有时只会返回占位符外壳。为 true 时,Actor 会重新抓取(总次数最多为 retryDeferredMaxFetches),并保留内容最丰富的响应。每次重试仅对受影响的查询产生一次额外代理请求费用(约 $0.0025)和计算费用。设为 false 可确保每个查询始终只抓取一次。 |
| resolveGotoTokens | boolean | 否 | 为 true(默认值)时,如果 AI Overview 引用在解析链结束后仍带有原始 /goto? 令牌,则通过读取 google.com/goto?url=<token> 的 Location 标头来解析(每个约 90 毫秒,约占引用的 11.5%)。原始令牌会作为来源信息保留在 goto_url 中;解析失败的引用仍保持未解析状态,并保留 unresolved_citations。已通过 EnterRank 验证 93/93,并通过我们的探测验证 6/6。设为 false 可禁用。 |
| retryDeferredPoll | boolean | 否 | 为 true 时,如果检测到延迟加载的 AI Overview 外壳,则重新获取 SERP,最多重试 retryDeferredMaxFetches 次,并保留内容最丰富的响应。默认关闭:folsrch 恢复路径可处理 90% 以上的延迟 AIO,而压力测试中轮询恢复数为 0/120,每次外壳查询还会增加约 10 秒耗时和额外代理请求。仅在 folsrch 出现退化时启用。 |
| retryThinOverview | boolean | 否 | 为 true 时,如果 AI Overview 返回的内容部分呈现(以未完成的标题结尾,或答案文本少于 600 个字符),则重新获取一次 SERP;仅保留内容更丰富的答案,不会换成更差的答案。需要 retryDeferredAIO 和 retryDeferredMaxFetches > 1。仅对受影响的行增加一次代理请求。设为 false 可按原样提供内容较少的答案。 |
| retryPartialResults | boolean | 否 | Google 有时会返回包含其他模块(People Also Ask、知识图谱、头条新闻)但没有自然搜索结果的精简页面。为 true(默认值)时,Actor 会重新获取页面以恢复自然搜索结果。始终没有自然搜索结果的查询会标记为 status=Partial,且不收费。重新获取的请求也计入价格。 |
| captureFlaggedFolsrch | boolean | 否 | 为 true 时,如果查询以 truncation_detected true 结束(AI Overview 缺少部分内容:在行内实体链接处截断、括号未闭合、末尾逗号或连接词处截断),则将答案的源 HTML 保存到默认键值存储中:若 resolved_by 为 folsrch,则保存原始 folsrch 片段,否则保存外壳;键名为 folsrch-evidence-<query>-<ts>,且 search_metadata.folsrch_evidence 指向该键。用于诊断和研究确切的截断位置;尽力保存,不会导致行失败。每个截断行增加一个 KV 值。默认值为 false。 |
| retryAiModeForClassic | boolean | 否 | 为 true 时,如果返回 AI Mode,则重新获取一次,尝试获得经典 AI Overview。测量后默认值为 FALSE(EnterRank,2026-09-07:4 次运行共 101/101 个答案):在商业查询组合中,重新获取未能恢复任何经典结果——Google 目前会将商业查询路由到 AI Mode,因此重新获取只会重复获取 SERP,无法恢复结果。保留此输入项是因为路由曾发生变化(2026-09-02:2/2 次重新获取返回经典结果),未来可能再次变化。为 false(默认值)时,不会重新获取 AI Mode 答案:若 excludeAiMode 为 true(默认值),则丢弃答案(不包含 ai_overview);若 excludeAiMode 为 false,则原样提供(Success,ai_mode_detected: true,设置警告,并收费)。 |
| retryPartialMaxFetches | integer | 否 | 自然搜索结果缺失时,每个查询的总获取次数上限(retryPartialResults=true)。1 = 不重新获取,2 = 重新获取一次,3 = 重新获取两次。范围:1-3。 |
| retryDeferredMaxFetches | integer | 否 | 检测到延迟加载的 AI Overview 外壳时,每个查询的总获取次数上限。1 = 单次获取(等同于 retryDeferredAIO=false)。数值越高,恢复概率越高,但受影响的查询会消耗更多代理资源。范围:1-5。 |
详细介绍
@subimpact/data-mcp
为 AI Agent 提供的公共数据工具,集成在一个 MCP 服务中。连接到你自己的 Apify 账号后,你的模型就可以搜索 Google(自然搜索结果、「用户还会问」问题、知识图谱和完整的 AI Overviews)、运行 Google AI Mode 查询、监控东南亚各地出版商的新闻提及、收集 Google Maps 地点、Google Jobs、Trends、网站联系信息、网页转 Markdown、Ads Transparency 数据、YouTube、TikTok、Eventbrite、ATS 招聘页面、Substack、Bluesky、Lazada 商品、JSON-LD 实体图、SEO 审核和 Pinterest——所有结果都以 JSON 返回,无需切换浏览器标签页。每个工具都封装了 subimpact Apify Store 中的一个 actor:服务使用你的 APIFY_TOKEN 启动 actor,等待其运行完成,然后返回数据集条目。所有抓取都不会在本地进行,也不会使用我们的凭据。
安装
你需要一个 Apify API token:console.apify.com → Settings → Integrations。运行费用按各 actor 的 Store 定价(按事件计费),记入该 Apify 账号。
Claude Code
claude mcp add subimpact-data -e APIFY_TOKEN=... -- npx -y @subimpact/data-mcp
Claude Desktop
将此内容添加到 claude_desktop_config.json(macOS 上为 ~/Library/Application Support/Claude/,Windows 上为 %APPDATA%\Claude\):
{
"mcpServers": {
"subimpact-data": {
"command": "npx",
"args": ["-y", "@subimpact/data-mcp"],
"env": {
"APIFY_TOKEN": "apify_api_your_token"
}
}
}
}
Cursor
将相同的内容添加到 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局):
{
"mcpServers": {
"subimpact-data": {
"command": "npx",
"args": ["-y", "@subimpact/data-mcp"],
"env": {
"APIFY_TOKEN": "apify_api_your_token"
}
}
}
}
想要更精简的工具列表?将 "--tools", "google_search,news_mentions" 添加到 args,或在 env 中设置 SUBIMPACT_TOOLS=google_search,news_mentions。get_run_results 始终可用。
工具
| 工具 | 功能 | 价格 |
|---|---|---|
google_search | 将 Google 搜索结果以 JSON 格式返回:完整的 AI Overview 答案(列表、引文、来源),以及自然搜索结果、「其他人还问了」、知识图谱、头条新闻和本地结果…… | Google SERP:$0.003 |
google_ai_mode | 获取真实的 Google AI Mode 答案(udm=50 标签页),在 Android Chrome 中呈现,支持任何国家和语言:完整答案、结构化内容块、解析后的来源 URL,以及逐段…… | AI Mode 搜索完成:$0.003 + 平台用量费 |
news_mentions | 按关键词搜索精选的出版商新闻源索引,并获取整洁的文章条目:标题、摘要、出版商 URL、来源、地区、主题、语言和发布时间…… | 文章:$0.001 + 平台用量费 |
google_maps_places | 提取 Google Maps 地点信息:标题、地址、坐标、电话、网站、评分、评论数、营业时间、热门时段、图片、价格等级、菜单、地点 ID。按……搜索 | 地点抓取:$0.001;评论抓取:$0.0005;Actor 启动:$0.00005 + 平台用量费 |
google_jobs | 按查询词和国家抓取 Google Jobs 招聘信息:职位名称、公司、地点、来源(LinkedIn、Indeed 等)、发布日期、薪资、工作类型、描述和申请链接。无…… | 职位:$0.001 + 平台用量费 |
website_contacts | 从任意网站列表中提取电子邮件、电话号码和社交主页链接(Facebook、Instagram、LinkedIn、X、TikTok、YouTube、WhatsApp、Telegram)。使用纯 HTTP,无…… | 扫描页面:$0.0008 + 平台用量费 |
google_trends | 抓取关键词的 Google Trends 随时间变化的热度、相关查询/主题,以及各地区热度。无需 API 密钥、浏览器或验证码。最多可比较 5 个关键词…… | 关键词趋势套餐:$0.0025 + 平台用量费 |
web_page_markdown | 面向 AI Agent 和 RAG 工作流的网页搜索与抓取工具。查询 Google Search,通过原始 HTTP 抓取排名前 N 的页面,并返回整洁的 Markdown。每页 $0.001,另加…… | 页面提取:$0.001 + 平台用量费 |
google_ads_transparency | 抓取 Google Ads Transparency Center:按名称或 ID 查找广告客户,并导出其广告信息,包括格式、首次和最后展示日期、预览及广告链接,还可按……筛选 | 广告:$0.0008;广告客户:$0.0005 + 平台用量费 |
youtube | 快速 YouTube 抓取工具,无需浏览器和 API 密钥:支持带筛选条件的关键词搜索、频道视频和 Shorts、频道简介数据、播放列表、视频详情(精确点赞数,…… | 结果:$0.001 + 平台用量费 |
tiktok_hashtag | 高速 TikTok 话题标签抓取工具。按话题标签提取视频、观看次数、点赞数、评论数、分享数、音频详情和创作者主页,价格极具竞争力。 | 视频:$0.001 |
eventbrite_events | 抓取 Eventbrite 活动,默认包含场地和主办方数据。每个活动 $0.002,使用费用由买家支付。支持按城市/查询词/类别搜索、URL 模式、主办方模式和 dryRun。 | 活动:$0.002 + 平台用量费 |
company_career_jobs | 直接获取公司招聘页面上的实时职位信息——Greenhouse、Lever、Ashby、Workday、SmartRecruiters——并统一为一种数据结构,还支持新职位监控…… | 职位抓取:$0.001;公司监控:$0.02 + 平台用量费 |
substack | Substack 情报 API — 帖子、存档和出版物统计数据 | 运行启动:$0.00005;帖子或出版物条目:$0.001 + 平台用量费 |
bluesky | 按关键词、话题标签或账号名抓取 Bluesky 帖子、主页、帖子串和关注者关系图。无需登录。快速 AT Protocol API,支持导出 JSON/CSV,仅按……付费 | 帖子抓取:$0.001;主页抓取:$0.002 + 平台用量费 |
lazada_products | 通过 Apify 住宅代理的真实浏览器会话,抓取东南亚 6 个市场(MY/SG/TH/ID/PH/VN)的 Lazada 搜索结果和分类页面。监控降价…… | 商品抓取:$0.00099;商品检查:$0.003;提醒创建:$0.01 + 平台用量费 |
jsonld_entities | 提取深层嵌套的 JSON-LD,依据 Schema.org(979 种类型、1,633 个属性)进行验证,并将互不关联的数据块整合为统一的知识图谱,其中包含类型化的…… | Actor 启动:$0.00005;页面处理:$0.0015 + 平台用量费 |
seo_page_audit | 将 SEO Minion 扩展移植为 API:按 URL 执行完整的页面 SEO 审核(元标签、标题、图片、链接、结构化数据、hreflang),并提供 Google SERP 摘要预览…… | 页面审核:$0.001;SERP 预览:$0.001 + 平台用量费 |
pinterest | 从关键词搜索、画板和主页抓取 Pinterest Pin。支持全分辨率原图、视频变体、画板/Pin 发布者元数据和重复 Pin 数量。纯 HTTP,无浏览器,无…… | Pin 抓取:$0.00199;媒体下载:$0.005 + 平台用量费 |
| 每个工具还接受两个可选的控制参数: |
_maxItems(整数,默认值为 50,最大值为 1000)——返回给模型的数据集项目数。它只会截断响应;Actor 仍会收集输入要求的数据,并据此收费。_maxChargeUsd(数字,默认值为 0.5)——每次运行的美元支出上限,会作为运行选项maxTotalChargeUsd发送给 Apify。运行达到上限时便会停止,因此意外的大批量任务不会超出此金额。
额外的 get_run_results 工具(runId、_maxItems、offset)可获取工具调用返回时仍在运行的任务状态和项目。耗时较长的任务会返回 runId,而不是一直阻塞;稍后调用该工具即可收集结果。
费用控制
每次调用都会在你的账户上运行一次真实的 Apify 任务,费用按 Actor 的事件计价(例如,google_search 每个 SERP 收费 $0.003,news_mentions 每篇文章收费 $0.001)。本服务没有订阅费用,也不会向你收费:费用由 Apify 直接从你的账户扣除。
- 从默认的
_maxChargeUsd$0.50开始;该上限会传递给 Apify,并由平台强制执行。 - 使用
_maxItems控制模型上下文大小(以及模型侧的 Token 消耗)。 - 需要更少、更有针对性的结果时,应缩小 Actor 输入范围,而不是提高上限。
- 每个响应都包含
itemCount(数据集中的项目总数)和returned(发送给模型的项目数),因此你可以看出结果是否被截断。
单次工具调用最多等待 SUBIMPACT_TIMEOUT_SECS(默认值为 240 秒)。如果任务仍在运行,你会获得其 runId,并可使用 get_run_results 收集结果。
配置
| 变量 | 必填 | 说明 |
|---|---|---|
APIFY_TOKEN | 是(用于调用) | 你的 Apify API Token。不设置此项也可以使用 tools/list,以便目录检查此服务。 |
SUBIMPACT_TOOLS | 否 | 要公开的工具名称子集,以逗号分隔,例如 google_search,news_mentions。 |
SUBIMPACT_TIMEOUT_SECS | 否 | 每次调用的等待时限,单位为秒(默认值为 240)。 |
SUBIMPACT_API_BASE | 否 | 覆盖 Apify API 基础 URL(默认值为 https://api.apify.com/v2);用于对模拟服务进行测试。 |
CLI 标志:--tools a,b,c、--help、--version。
它不是什么
- 不是本地抓取工具。 它不会自行获取页面或解析 HTML;它会运行 Apify Actor,由 Actor 在 Apify 基础设施上执行抓取。
- 不持有我们的凭据。 它使用的唯一 Token 是你设置的
APIFY_TOKEN。此服务不包含任何密钥,也不会调用任何私有后端。 - 不是免费的。 每次工具调用都会运行一次 Apify 任务,并按照 Actor Store 中的价格计入你的 Apify 账户。
_maxChargeUsd上限仅限制单次运行费用,不限制你每月的 Apify 总支出。 - 不是 Apify 的官方产品,也不隶属于 Google、TikTok、Meta、Lazada 或其他 Actor 会读取其公开数据的平台。
- 不保证数据可用。 公共网站会发生变化;请查看各 Actor 的 Store 页面,了解当前的数据覆盖范围、价格和限制。
开发
npm install
npm run build # tsc + copy src/tools.json into dist/
npm test # offline tests: mocked fetch + a stdio round trip
npm run typecheck
npm run gen:readme # regenerate the tool table above from src/tools.json
node dist/index.js # run the stdio server
src/tools.json 是 Apify Store 公共 Actor 元数据的原样快照:工具名称、描述、按事件计价信息和输入架构。MCP 工具定义、描述以及本 README 中的工具表格均根据该文件生成。
许可证
MIT © 2026 subimpact network
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。