用途
cn-scraper-mcp 的目标是让 AI Agent 直接搜索中国互联网。每个 AI Agent(如 Codex、Claude Code、Cursor、Trae)都能搜网页,但中文平台通常需要登录态、浏览器环境或平台专用参数,这个项目把相关的适配打包成一个 MCP Server,让 Agent 一句话就能发起搜索,例如 taobao_search("儿童学习桌")。
支持的平台与能力
- 淘宝:需要浏览器一致的网络指纹和登录 Cookie。无硬性限流,但平台可能随时收紧,不建议高频批量抓取。
- 京东:依赖已登录的本地浏览器环境;由本地 Chrome 生成登录态和动态签名,工具读取结构化 API 响应,通过
guided_login("jd")可自动初始化持久化 Profile。 - 小红书:需要住宅 IP、本地浏览器和搜索结果中的访问参数;仅允许住宅 IP,云浏览器/数据中心 IP 直接封,必须用本地 Chrome。
- 知乎:游客搜索已关闭,全部 API 需要登录态。
- 拼多多:平台限制严格,每个浏览器会话仅放行第一次搜索,之后永久“系统繁忙”,单次搜索结果零实用价值,引擎代码保留但不推荐使用。
- 微博:搜索 API 需要登录态(SUB token),热搜游客即可访问。
- 抖音:需要浏览器登录并可能人工处理验证码;搜索需要登录态加手动过滑块验证码,支持 120s 等待用户手动验证,通过后自动抓取,
guided_login("douyin")可引导登录。 - B站:搜索、热门、视频详情和评论可直接使用公开 API。
- 豆瓣:条目搜索、条目详情和短评/影评。
- 大众点评:商户搜索、商户详情和用户评价。
- 知识星球:付费社群,内容藏在 cookie 认证的 REST API 后面。
使用方式
登录与 Cookie
推荐使用 CDP 自动登录并保存 Cookie:安装并连接 MCP 后,直接让 Agent 调用登录工具,它会打开本地 Chrome 并进入平台官方登录页;用户自己扫码或输入密码后,工具通过 CDP 自动读取完整 Cookie(包括 JavaScript 无法读取的 HttpOnly Cookie),再保存到本机 ~/.cn-scraper-cookies/。京东则保存到本地持久化 Chrome Profile。可用平台名包括 taobao、jd、xiaohongshu、zhihu、weibo、zsxq、douyin、pdd、douban 和 dianping。已有通过远程调试端口启动且登录完成的 Chrome 时,也可以调用相应工具。
安装与连接
容器内预装 Chromium,无需本地浏览器。远程服务器部署可以切换到 HTTP transport,通过 IP + 端口连接,也可以使用 Docker Compose。远程 MCP endpoint 可配置。
注意:请把 /本机绝对路径/ 替换为真实路径;MCP 客户端直接启动进程时不会替你展开 ~。Docker 镜像内置 Chromium 加 --no-sandbox;京东 headful 模式如需 Xvfb,设置环境变量 XVFB_WRAPPER=1;小红书仍需住宅 IP——数据中心 IP 会被封。
客户端配置
- Codex:
~/.codex/config.toml,保存后可用codex mcp list检查连接状态。 - Claude Code / Cursor / Reasonix:这三个客户端都支持标准的 mcpServers JSON。Claude Code 为项目根目录
.mcp.json;Cursor 为全局~/.cursor/mcp.json,或项目目录.cursor/mcp.json;Reasonix 为项目根目录.mcp.json。 - Trae:不同版本的配置文件位置可能不同。建议在设置中的 MCP 管理界面添加本地 stdio Server:名称填写
cn-scraper,命令填写cn-scraper-mcp,参数留空。
如果客户端提示找不到命令,先用 where cn-scraper-mcp(Windows)或 which cn-scraper-mcp(macOS/Linux)找到完整路径,再把 command 替换为该路径。
安全与隐私
cn-scraper-mcp 在本地运行,不需要把 Cookie、账号密码或浏览器 Profile 上传到任何中转服务器。Cookie 默认保存在 ~/.cn-scraper-cookies/,京东登录态保存在本地 Chrome Profile。登录过程直接发生在平台官方页面,软件不会读取或保存账号密码。Cookie 值不会写入日志,也不会通过 MCP 工具结果返回给 Agent;工具只返回状态、字段名和本地路径等非敏感信息。发起抓取或在线登录验证时,凭证只会发送给对应平台域名。代码完全开源,所有凭证处理流程都可以审查。建议仍像保护浏览器登录态一样保护本机账号:不要分享 Cookie 文件,不要把凭证提交到 Git,并限制本地文件的访问权限。
远程 HTTP 模式会让 MCP 工具通过网络访问本机 Cookie/Profile 目录,请勿直接裸露公网端口。建议放在内网、VPN、防火墙白名单或带鉴权的反向代理后面。小红书、京东、抖音等依赖本地浏览器、住宅 IP 或人工验证码的平台,在远程服务器上的稳定性取决于服务器网络与图形环境。
人工处理机制
当平台要求人工处理登录、验证码或风控页时,工具会返回统一的 ACTION_REQUIRED 结构,并在 action_required 字段中说明平台、原因、处理动作、处理链接和建议重试的工具。当前抖音验证码已接入该结构;远程 Docker 场景下仍需要用户通过可见浏览器或后续 noVNC 网页完成验证。
适用场景与限制
适用于需要让 AI Agent 访问中文平台数据的学习和研究场景。限制方面:拼多多不推荐使用;小红书必须使用住宅 IP 和本地 Chrome;抖音需要登录态和人工过验证码;淘宝不建议高频批量抓取;远程服务器部署的部分平台稳定性取决于服务器网络与图形环境。本项目采用 MIT 许可证,仅用于学习和研究目的,批量抓取可能违反平台服务条款,风险自负,切勿用于垃圾信息、DDoS 或商业级大规模抓取。项目依赖包括 curl_cffi(TLS 指纹伪装)、FastMCP(MCP Server 框架)和 websockets(异步 WebSocket)。