详细演示通过Apify MCP服务器赋予Claude实时数据查询能力,解决AI幻觉和训练数据过时的问题。
Model Context Protocol(MCP)是一个开放标准,允许 AI 客户端调用外部工具。Apify MCP 服务器(https://mcp.apify.com)在 Apify 平台之上实现了这个标准,这意味着 Apify Store 中成千上万个 Actor 中的每一个都可以成为 agent 可以调用的工具。
Agent 决定何时获取数据。Claude 读取对话,注意到它需要一个没有的事实,然后自己调用这个工具。你不需要为每个问题编写胶水代码。
结构化输入和输出。MCP 服务器把 Actor 的输入 schema 传递给 Claude,所以模型可以正确地填充参数,并返回一个干净的数据集供其推理。
一个连接,多个工具。同一个 MCP 端点公开了搜索 Actor、获取 Actor 详情和调用 Actor 等功能,所以 agent 可以发现并运行任何 Actor,无需新的配置。
没有基础设施。服务器是托管的。你只需要在配置文件中添加几行就完成了。
我们将暴露美国餐厅检查爬虫:食品卫生机构(US Restaurant Inspections Scraper: Food Establishments)。它搜索美国公开的食品卫生机构检查记录,并为每次检查返回:业务名称(DBA 和 AKA)、许可证号、设施类型、风险等级、完整地址和地理坐标、检查日期和类型、通过/不通过结果、违规计数以及包含检查员评论的完整违规摘要。
这个字段集正是食品安全或市场信任检查所需的。你可以按卫生机构名称、城市、结果和日期范围过滤,所以查询可以像 "这一家咖啡馆的每一次不通过检查" 一样具体,也可以像 "上个月这个城市的所有检查" 一样宽泛。

登录 Apify Console,打开 Settings → Integrations,复制你的个人 API token。MCP 服务器用它来认证并将 Actor 运行计费到你的帐户。
📌 注:token 是一个密钥。只在客户端配置中保持,永远不要在提示或提交的文件中使用。
打开 Claude Desktop 的配置文件(Settings → Developer → Edit Config,或 macOS 上的 ~/Library/Application Support/Claude/claude_desktop_config.json),添加 Apify 服务器。tools 查询参数是重要的部分:它告诉服务器要暴露哪个 Actor,所以 Claude 得到一个集中的工具,而不是整个 Store。
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=scrapers_lat/usa-restaurant-inspections-scraper",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}
Cursor 在 .cursor/mcp.json 中使用相同的 JSON。如果你更喜欢在本地通过 stdio 而不是托管端点运行它:
{
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server", "--tools", "scrapers_lat/usa-restaurant-inspections-scraper"],
"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }
}
}
}
重启 Claude Desktop,以便它加载新的服务器。
重启后,Actor 显示为可调用的工具。如果你列出 Apify 服务器暴露的工具,你将看到存储辅助程序加上 Actor 本身,其名称为其 Store 句柄:
get-actor-run, get-dataset-items, get-key-value-store-record,
abort-actor-run, scrapers_lat--usa-restaurant-inspections-scraper
最后一个条目 scrapers_lat--usa-restaurant-inspections-scraper 是我们的食品安全工具。Claude 现在知道它存在,它做什么(从 Actor 的 README),以及它接受什么输入(从服务器传递的输入 schema)。
现在是回报的时候。在一个正常的聊天中,问一个需要事实基础的问题:
"我们正在把一个星巴克品牌的咖啡馆在芝加哥 Palmer House 上线到我们的外卖市场。拉取它最后的卫生检查记录,以便我可以检查任何最近的不通过。"
Claude 认识到它无法从记忆中可靠地回答这个问题,选择检查工具,并从你的问题中填充输入。在底层,客户端发送一个 tools/call,包含 Actor 的参数:
{
"name": "scrapers_lat--usa-restaurant-inspections-scraper",
"arguments": {
"searchQueries": ["Starbucks"],
"cities": ["CHICAGO"],
"maxInspections": 20
}
}
Apify MCP 服务器启动 Actor,等待它完成,然后返回数据集。这是它产生的真实运行元数据:
{
"runId": "7NUszN8Ahes7pybfI",
"actorName": "scrapers_lat/usa-restaurant-inspections-scraper",
"status": "SUCCEEDED",
"startedAt": "2026-07-30T17:47:30.797Z",
"finishedAt": "2026-07-30T17:47:35.233Z",
"stats": { "runTimeSecs": 4.3 }
}
不到五秒钟,对公开检查记录的实时查询。
该工具返回的数据集是结构化的检查数据,每个检查一个对象。这是来自运行的真实记录(精简为对信任检查重要的字段):
{
"inspectionId": "2632789",
"dbaName": "STARBUCKS PALMER HOUSE",
"licenseNumber": "2948168",
"facilityType": "Restaurant",
"risk": "Risk 2 (Medium)",
"result": "Fail",
"inspectionType": "Complaint",
"inspectionDate": "2026-03-19T00:00:00.000Z",
"address": "17 E MONROE ST",
"city": "CHICAGO",
"state": "IL",
"zip": "60603",
"violationCount": 14,
"violationsSummary": "38. INSECTS, RODENTS, & ANIMALS NOT PRESENT - Comments: OBSERVED EVIDENCE OF 3 LIVE ROACHES ... (CITATION ISSUED) | 2. CITY OF CHICAGO FOOD SERVICE SANITATION CERTIFICATE - Comments: OBSERVED NO CERTIFIED FOOD MANAGER ON DUTY WHILE TCS FOODS ARE BEING PREPARED ... (CITATION ISSUED)"
}
Claude 读取后用纯文本回答:Palmer House 星巴克(17 E Monroe St)在 2026-03-19 投诉检查中不通过,有 14 项违规,其中三项被处以罚款,包括发现活蟑螂、没有持证食品经理值班,以及员工在拖完地后没有洗手就处理食物。一次之前的核心违规被标记为未更正。每一个这样的事实都可以追踪到一份官方检查报告,而不是模型的记忆。

完整历史视图同样重要。同样的查询返回 03-26 和 03-30 的后续重新检查,两者也都不通过,所以分析员可以一目了然地看到问题在第一次重新检查时没有得到解决。单一最新的记录可能看起来很干净;检查历史讲述了真实的故事。
将这放在背景中。一个食品外卖市场的信任和安全分析员正在激活一批新的餐厅列表,在它们上线之前,需要确认每个卫生机构:
拥有一个真实的、最新的检查记录,
没有坐在未解决的不通过检查上,并且
没有重复关键违规的模式(害虫、没有持证经理、温度滥用)。
没有工具,分析员打开城市检查门户,输入每个名称,读取最新报告,并将结果复制到上线表中,每家餐厅一次。有了接入 Claude 的工具,分析员将批次粘贴到聊天中,要求 agent 检查每一个。Claude 为每个卫生机构调用 Actor,按日期对返回的检查进行排序,标记任何最近的不通过或有条件通过,计算重复违规,并生成一个简短的激活/保留备注,以检查 ID 作为证据。手动查询步骤消失了;判断留给了人类。
相同的模式适用于给食品服务覆盖定价的保险公司、审核特许经营商的特许人,或想要在每个列表旁边显示实时安全徽章的面向消费者的应用程序。机械获取被删除;决策不是。
检查历史回答了 "这个厨房干净吗",但食品安全风险不会停在门口。一个品牌可以通过每一次检查,仍然在运送召回下的产品。同一个 MCP 连接可以通过扩展 tools 参数来暴露更多 Actor:
https://mcp.apify.com?tools=scrapers_lat/usa-restaurant-inspections-scraper,scrapers_lat/openfda-food-recalls-scraper
现在 agent 可以检查一个卫生机构的检查记录,并在同一个对话中针对 openFDA 食品召回与执法爬虫筛查它提供的品牌或产品,然后将两者合并为一个风险摘要:来自检查记录的本地卫生,来自联邦执法源的产品级召回。因为每个 Actor 都是一个单独的工具,agent 为每一步自己选择正确的工具。
🏹 故障排除:如果工具没有在 Claude 中出现,通常的两个原因是 tools 参数中缺少或拼写错误的 Actor 句柄(必须是 Store URL 中的确切用户名/actor 名称)和在 Claude 运行时编辑的配置。修复句柄,保存,并完全重启客户端。
📌 注:每个工具调用都是一个真实的 Actor 运行,计费到你的 Apify 帐户(这个 Actor 是按结果付费的)。对于单一上线检查,成本是一分钱的一小部分;如果你计划按计划扫描数千个卫生机构,直接通过 Apify API 或计划任务运行 Actor,而不是每个聊天消息调用一次。覆盖范围最强的是公开发布检查数据的司法管辖区,如芝加哥和纽约市,所以将你的城市过滤与卫生机构实际运营的地点相匹配。
你现在有一个 AI agent,可以按需在对话中即时检查一个美国食品卫生机构的官方检查记录,拥有真实信任决策所需的违规细节和通过/不通过历史。这个模式是可重用的:选择一个返回权威结构化数据的 Actor,通过带有 tools 参数的 Apify MCP 服务器暴露它,让 agent 决定何时调用它。
使用城市、结果和日期范围过滤来缩小或扩大查询,以构建从单店检查到城市范围扫描的任何东西。
添加上面的食品召回 Actor,或业务注册表 Actor,来构建一个多信号食品安全和供应商审查 agent。
阅读 Apify MCP 服务器文档,了解 OAuth 设置、资源读取,以及允许 agent 发现它没有预先配置的 Actor 的搜索 Actor / 调用 Actor 工具。
本指南中使用的 Actor:美国餐厅检查爬虫:食品卫生机构。