MCP 服务使 AI 能够原生使用社交媒体数据。爬虫部分参考了 MediaCrawler,升级其 CLI 爬虫至 MCP 标准工具,允许 Claude/ChatGPT 直接调用,配置一次即可长期使用。

MediaCrawler MCP 服务是一个个人数据采集工具包,它使用 MCP(模型上下文协议)将社交媒体公开信息转化为可以直接被 AI 助手调用的标准工具。核心能力包括“外部化登录管理”、“任务级别配置隔离”、“浏览器上下文复用”以及“结构化数据输出”。
该项目目前专注于“高质量内容的爬取与自动化”,优先考虑稳定性和质量:
关注方向(高质量内容):
同时,数据持久化目录和显示统一在平台代码下:
bili、xhs,不再使用历史目录名(如 bilibili)。data/bili/videos。json/csv 和 videos 子目录体积。
Media crawler mcp 服务打破了传统的临时脚本模式,转变为可复用的标准 MCP 工具。支持跨多平台的数据捕获,模块化设计使得扩展和维护更加高效,无需重复编写脚本。
采用外部登录机制,提供可视化界面和二维码/Cookie 双模式,使身份验证更加灵活。支持持久登录状态,避免频繁登录操作,提高数据捕获的稳定性和便利性。
采用分层解耦架构和 Pydantic 模型确保高效的数据验证和一致性。状态缓存和风控设计使系统更加稳定,减少负载,提高捕获效率。

与其他类似的 MCP 相比,Media crawler mcp 服务捕获的数据简洁且无冗余,特别适合 AI 分析。避免复杂的嵌套数据让 AI 模型更容易和高效地处理数据。
| 特性 | media-crawler-mcp-service | xiaohongshu-mcp (GitHub) | MediaCrawler | Bowenwin MCP Server |
|---|---|---|---|---|
| 核心定位 | ✅ 多平台爬虫+MCP发布服务 | ✅ 小红书专用MCP | ❌ CLI爬虫脚本,非MCP | ✅ 基础MCP服务 |
| 支持平台 | ✅ B站、小红书、抖音、微博等平台 | ⚠️ 仅限小红书平台 | ✅ 多平台CLI脚本 | ⚠️ 平台支持有限 |
| 技术栈 | 🐍 Python + Playwright + FastMCP | 🔷 Go + Playwright | 🐍 Python + Playwright | 🐍 Python |
| 从脚本到标准 | ✅ 标准化MCP工具,高度可复用 | ✅ 标准MCP实现 | ❌ 仅有CLI脚本,不可复用 | ✅ 支持部分模块化 |
| 登录管理 | ✅ Web UI+二维码/Cookie双模式 | ✅ 独立登录工具 | ❌ 基本登录,无可视化 | ❌ 登录功能不全 |
| 浏览器池管理 | ✅ 智能实例复用+延迟销毁 | ⚠️ 基本浏览器管理 | ❌ 无池化管理 | ❌ 无池化管理 |
| 工程设计 | ✅ 层级解耦、Pydantic模型、Redis缓存 | ✅ 清晰代码结构 | ❌ 架构紧耦合 | ❌ 缺乏工程设计 |
| 数据格式 | ✅ AI友好,扁平JSON,无冗余 | ✅ 结构化JSON | ❌ 复杂嵌套JSON | ❌ 数据结构混乱 |
| 发布功能 | ✅ 小红书图文/视频发布(开发中) | ✅ 小红书图文/视频发布 | ❌ 无发布功能 | ❌ 无发布功能 |
| 管理界面 | ✅ FastMCP UI完整管理页面 | ⚠️ 基本HTTP API | ❌ 无管理界面 | ❌ 无管理界面 |
| 可扩展性 | ✅ 模块化设计,易于扩展到新平台 | ⚠️ 专注于小红书列表平台 | ❌ 扩展困难 | ⚠️ 可扩展性一般 |
| 部署方式 | 🐳 Python服务+Docker支持 | 🐳 Go二进制+Docker | 🐍 Python脚本 | 🐍 Python服务 |
| 适用场景 | 🎯 多平台数据采集+AI分析+自动发布 | 🎯 深度运营小红书 | 🎯 一次性数据收集 | 🎯 基础MCP集成 |
[x] 独立登录模块
[x] Bilibili 搜索/详情/创作者/评论
bili_searchbili_detailbili_creatorbili_comments[] 小红书搜索/详情/创作者/评论,近期正在修复风控措施
xhs_searchxhs_detailxhs_creatorxhs_comments非目标:
环境要求:Python 3.13+· Redis · Chrome/Chromium · (可选) Node.js 16+
git clone <your-repo-url>
cd media-crawler-mcp-service
poetry install
poetry run playwright install chromium
cp .env.example .env
# 按需修改端口/平台开关/Redis等
redis-server # 如未启动
poetry run python main.py # 默认端口 9090
# 管理界面: http://localhost:9090/admin
# 工具调试: http://localhost:9.090/admin/inspector
http://localhost:9090/admin


http://localhost:9090/mcphttp://localhost:9090/inspector{platform}_{tool},平台代码:biliBilibilixhs小红书bili_search、bili_crawler_detail、bili_crawler_creator、bili_search_time_range_http、bili_crawler_commentsxhs_search、xhs_crawler_detail、xhs_crawler_creator、xhs_crawler_comments/inspector 验证。{
"keywords": "Python 机器学习",
"page_size": 3,
"page_num": 1
}
{
"video_ids": ["444445981"]
}
{
"keywords": "咖啡",
"page_num": 1,
"page_size": 20
}
{
"note_id": "68f9b8b20000000004010353",
"xsec_token": "从搜索结果或分享链接解析",
"xsec_source": "pc_search"
}
管理页面上的 MCP 工具检查器将按平台分组显示已注册的工具,并可以在线调用和调试。
服务工具
service_info - 服务信息service_health - 健康检查list_tools - 工具列表tool_info - 工具详情Bilibili 站
bili_search - 关键词搜索bili_crawler_detail - 视频详情bili_crawler_creator - 创作者内容/信息bili_search_time_range_http - 时间范围搜索bili_crawler_comments - 视频评论小红书(XHS)
xhs_search - 关键词搜索xhs_crawler_detail - 笔记详情(需要 xsec_token)xhs_crawler_creator - 创作者作品xhs_crawler_comments - 笔记和评论
🤖 AI助手 (Claude / ChatGPT)
│ MCP协议
▼
🎯 MediaCrawler MCP服务
├─ 管理层: 登录/状态/配置
├─ 服务层: 各平台编排 (Bili...)
└─ 工具层: bili_search/detail/creator/comments
│
▼
🌐 Playwright 浏览器(上下文复用 / 风控友好)
├─ BrowserManager 统一管理
├─ 平台级实例隔离(每个平台独立浏览器)
├─ Login 和 Crawler 共享同一实例
└─ 引用计数 + 互斥锁保护
│
▼
💾 Redis 状态缓存 · 本地/结构化存储
Agent.md:1无法启动?
poetry install
poetry run playwright install chromium
redis-cli ping # 期望 PONG
APP__DEBUG=true poetry run python main.py
二维码不显示?
BROWSER__HEADLESS=false poetry run python main.py
poetry run playwright install-deps chromium
登录状态容易丢失?
搜索为空或慢?
bili_search 减少页面大小,增大请求间隔此项目定位为个人效率工具:
如果此项目对您的学习有帮助,欢迎 ⭐ Star 支持!