apify-mcp-server
让AI代理直接调用8000+网页爬虫工具的MCP协议服务器
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
让AI代理直接调用8000+网页爬虫工具的MCP协议服务器
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你正在用 Claude 或 Cursor 写一份市场调研报告,需要对比竞品在各大电商平台的价格。你会怎么做?传统方案是:手动打开几十个网页、复制粘贴数据、汇总到表格——这可能要花掉大半天。而 Apify MCP Server 告诉你:不如让 AI 直接替你完成这些操作。
Apify MCP Server 是一个基于 Model Context Protocol(MCP)标准的数据采集服务器。它将 Apify 平台上的 8000+ 网页爬虫和自动化工具(称为"Actor")封装为 AI 代理可以直接调用的工具,让大模型能够实时抓取社交媒体、搜索引擎、地图、电商网站等各类网页数据。整个方案无需编写爬虫代码,AI 代理只需调用一个工具名称,数据就会以结构化形式返回。
图1:Apify MCP Server 官方 Logo,支持深色/浅色模式自动切换
Apify 是一家来自捷克的网页数据采集平台公司,成立于 2015 年,其核心产品是一个托管了数千款预制爬虫工具的 Apify Store。与传统爬虫框架(如 Scrapy、Playwright)不同,Apify 的设计理念是"工具即服务"——用户不需要自己写爬虫逻辑,只需选择合适的 Actor、配置输入参数,就能获取数据。
然而,随着 AI Agent 浪潮的到来,Apify 团队发现了一个新痛点:AI 代理缺乏可靠的网络数据获取能力。LLM 虽然擅长理解和生成文本,但无法直接访问实时网页。当用户要求 AI"帮我查一下京东上某款手机的最新价格"时,传统做法是 AI 调用一个外部 API——但这需要开发者预先构建 API 接口,维护成本极高。
Model Context Protocol(MCP)标准的出现提供了解决方案。MCP 是 Anthropic 在 2024 年底发布的开放协议,旨在让 AI 模型与外部工具和数据源安全、标准地交互。Apify 团队迅速行动,在 2025 年 1 月发布了 apify-mcp-server 的首个版本,将 Apify Store 中所有 Actor 变成了 MCP 工具。
目前该项目已在 GitHub 获得约 1,336 颗星、172 个 Fork,是 Apify 官方生态中增长最快的 MCP 集成项目之一。项目采用 MIT 许可证,代码完全开源,持续活跃维护(最近一次提交为 2026-06-13)。
Apify MCP Server 本质上是一个两层封装结构:
第一层:MCP 协议适配。项目基于 @modelcontextprotocol/sdk(MCP 官方 SDK)构建,实现了标准的 MCP Server 接口。当 AI 客户端(如 Claude Code、Cursor)通过 stdio 或 Streamable HTTP 连接到服务器时,服务器响应 MCP 规范的握手协议(initialize → tools/list → tools/call),完成身份认证后暴露可调用的工具列表。
第二层:Apify Actor 调用层。工具列表中的每个工具对应一个 Apify Actor。服务器接收到工具调用请求后,通过 apify-client(Apify 官方 SDK)与 Apify API 通信,启动对应的 Actor 任务,等待执行结果,最后将输出转换为 MCP 标准格式返回给 AI 客户端。
项目使用 TypeScript 开发,编译为 Node.js 可执行程序,核心模块包括:
| 模块 | 文件 | 作用 |
|---|---|---|
| MCP Server 入口 | src/mcp/server.ts (88KB) | 服务器主逻辑,响应 MCP 协议 |
| Actor 调用核心 | src/tools/core/call_actor_common.ts (28KB) | 通用的 Actor 执行逻辑 |
| 结构化输出 | src/tools/structured_output_schemas.ts (30KB) | JSON Schema 校验 |
| x402 支付协议 | src/payments/x402.ts (13KB) | 支持 AI 代理无 Token 支付 |
| STDIO 传输 | src/stdio.ts (10KB) | 命令行 MCP 传输实现 |
| 定价信息 | src/utils/pricing_info.ts (20KB) | Actor 定价层级解析 |
| Web UI 组件 | src/web/src/pages/ActorRun/ActorRun.tsx (26KB) | React UI 小部件 |
项目支持两种 MCP 传输方式:
node dist/stdio.js --actors=apify/google-search-scraperActor 工具的注册通过 src/utils/tools_loader.ts 实现,支持三种加载方式:
--actors 指定tools add-actor 实时注册Apify MCP Server 的一个创新特性是支持无 API Token 支付。在传统的 Apify API 调用中,用户需要持有 API Token 来认证和付费。而通过 x402(HTTP 402 Payment Required 协议)和 Skyfire 两种支付提供商,AI 代理可以直接在请求中携带支付信息,由第三方代付。服务器实现了完整的 x402 协议栈(见 src/payments/x402.ts),包括支付签名验证、支付需求探测和 payment-required 响应处理。
项目在 src/web/ 目录下包含 React 前端代码,编译为嵌入式的 widget 小部件。当 AI 客户端(如 Claude.ai MCP Apps)支持 widget 渲染时,工具调用结果可以以更友好的可视化卡片形式呈现,而不仅是纯文本。
本地部署有两种方式:
方式一:npm 全局安装(推荐 CLI 用户)
npm install -g @apify/actors-mcp-server
actors-mcp-server --actors=apify/google-search-scraper
方式二:Docker 容器部署
项目提供了多阶段 Dockerfile,基于 node:24-alpine 构建,最终镜像极小(通过 pnpm deploy --legacy 裁剪依赖)。
支持 Claude Code、Claude.ai(付费版 MCP Apps)、Cursor、VS Code 等主流 MCP 客户端。配置方式是在客户端的 MCP 设置中添加服务器地址即可。官方提供了专门的配置页面 mcp.apify.com,指导用户一步步完成各客户端的集成。
在评测集(evals/ 目录)中,项目维护了大量端到端测试用例,覆盖了演员搜索、数据抓取、定价查询等常见场景。测试通过 Claude 作为评判模型,验证工具调用的正确性和数据输出的结构化程度。
structuredContent 包装,确保 AI 收到的数据格式可预测Apify MCP Server 的出现代表了 AI Agent 数据获取的一种范式转变:不是让 AI 学习爬虫代码,而是让爬虫工具"变成"MCP 工具。这种"工具标准化"思路正在被越来越多的 AI 数据平台采用。
从 GitHub 数据看(1,336 ★,2025年1月至今),MCP 生态正在快速增长。Anthropic、OpenAI 等厂商都在推动 MCP 成为 AI Agent 与外部工具交互的事实标准。Apify 作为网页数据领域的专业玩家,其 MCP Server 的成熟度(完整的支付协议、定价系统、结构化输出)在同类产品中处于领先地位。
随着 AI Agent 在企业场景的落地,对实时、可靠网络数据的需求会持续增长。Apify MCP Server 提供了一条不依赖昂贵 API 的替代路径——理论上,任何能在浏览器中完成的数据获取操作,都可以借助 Actor + MCP Server 的组合交由 AI 代理完成。
本报告基于 apify-mcp-server GitHub 仓库 master 分支(v0.11.1)源码分析生成。项目持续活跃更新中,建议关注官方 CHANGELOG 获取最新动态。