Crawl4AI MCP Server
Crawl4AI MCP 服务器是一个智能信息检索服务器,提供强大的搜索功能和针对 LLM 优化的网络内容理解能力。它利用多引擎搜索和智能内容提取,高效地收集和理解互联网信息。
README
Crawl4AI MCP 服务器
这是一个基于MCP (Model Context Protocol)的智能信息获取服务器,为AI助手系统提供强大的搜索能力和面向LLM优化的网页内容理解功能。通过多引擎搜索和智能内容提取,帮助AI系统高效获取和理解互联网信息,将网页内容转换为最适合LLM处理的格式。
特性
- 🔍 强大的多引擎搜索能力,支持DuckDuckGo和Google
- 📚 面向LLM优化的网页内容提取,智能过滤非核心内容
- 🎯 专注信息价值,自动识别和保留关键内容
- 📝 多种输出格式,支持引用溯源
- 🚀 基于FastMCP的高性能异步设计
安装
方式1: 大部分的安装场景
-
确保您的系统满足以下要求:
- Python >= 3.9
- 建议使用专门的虚拟环境
-
克隆仓库:
git clone https://github.com/yourusername/crawl4ai-mcp-server.git
cd crawl4ai-mcp-server
- 创建并激活虚拟环境:
python -m venv crawl4ai_env
source crawl4ai_env/bin/activate # Linux/Mac
# 或
.\crawl4ai_env\Scripts\activate # Windows
- 安装依赖:
pip install -r requirements.txt
- 安装playwright浏览器:
playwright install
方式2: 安装到Claude桌面客户端 via Smithery
通过 Smithery 将 Crawl4AI MCP 的 Claude 桌面端服务安装自动配置至您本地的 Claude 伸展中心
:
npx -y @smithery/cli install @weidwonder/crawl4ai-mcp-server --client claude
使用方法
服务器提供以下工具:
search
强大的网络搜索工具,支持多个搜索引擎:
- DuckDuckGo搜索(默认): 无需API密钥,全面处理AbstractText、Results和RelatedTopics
- Google搜索: 需要配置API密钥,提供精准搜索结果
- 支持同时使用多个引擎获取更全面的结果
参数说明:
query
: 搜索查询字符串num_results
: 返回结果数量(默认10)engine
: 搜索引擎选择- "duckduckgo": DuckDuckGo搜索(默认)
- "google": Google搜索(需要API密钥)
- "all": 同时使用所有可用的搜索引擎
示例:
# DuckDuckGo搜索(默认)
{
"query": "python programming",
"num_results": 5
}
# 使用所有可用引擎
{
"query": "python programming",
"num_results": 5,
"engine": "all"
}
read_url
面向LLM优化的网页内容理解工具,提供智能内容提取和格式转换:
markdown_with_citations
: 包含内联引用的Markdown(默认),保持信息溯源fit_markdown
: 经过LLM优化的精简内容,去除冗余信息raw_markdown
: 基础HTML→Markdown转换references_markdown
: 单独的引用/参考文献部分fit_html
: 生成fit_markdown的过滤后HTMLmarkdown
: 默认Markdown格式
示例:
{
"url": "https://example.com",
"format": "markdown_with_citations"
}
示例:
# DuckDuckGo搜索(默认)
{
"query": "python programming",
"num_results": 5
}
# Google搜索
{
"query": "python programming",
"num_results": 5,
"engine": "google"
}
如需使用Google搜索,需要在config.json中配置API密钥:
{
"google": {
"api_key": "your-api-key",
"cse_id": "your-cse-id"
}
}
LLM内容优化
服务器采用了一系列针对LLM的内容优化策略:
- 智能内容识别: 自动识别并保留文章主体、关键信息段落
- 噪音过滤: 自动过滤导航栏、广告、页脚等对理解无帮助的内容
- 信息完整性: 保留URL引用,支持信息溯源
- 长度优化: 使用最小词数阈值(10)过滤无效片段
- 格式优化: 默认输出markdown_with_citations格式,便于LLM理解和引用
开发说明
项目结构:
crawl4ai_mcp_server/
├── src/
│ ├── index.py # 服务器主实现
│ └── search.py # 搜索功能实现
├── config_demo.json # 配置文件示例
├── pyproject.toml # 项目配置
├── requirements.txt # 依赖列表
└── README.md # 项目文档
配置说明
- 复制配置示例文件:
cp config_demo.json config.json
- 如需使用Google搜索,在config.json中配置API密钥:
{
"google": {
"api_key": "your-google-api-key",
"cse_id": "your-google-cse-id"
}
}
更新日志
- 2025.02.08: 添加搜索功能,支持DuckDuckGo(默认)和Google搜索
- 2025.02.07: 重构项目结构,使用FastMCP实现,优化依赖管理
- 2025.02.07: 优化内容过滤配置,提高token效率并保持URL完整性
许可证
MIT License
贡献
欢迎提交Issue和Pull Request!
作者
- Owner: weidwonder
- Coder: Claude Sonnet 3.5
- 100% Code wrote by Claude. Cost: $9 ($2 for code writing, $7 cost for Debuging😭)
- 3 hours time cost. 0.5 hours for code writing, 0.5 hours for env preparing, 2 hours for debuging.😭
致谢
感谢所有为项目做出贡献的开发者!
特别感谢:
- Crawl4ai 项目提供的优秀网页内容提取技术支持
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
Excel MCP Server
一个模型上下文协议服务器,使 AI 助手能够读取和写入 Microsoft Excel 文件,支持诸如 xlsx、xlsm、xltx 和 xltm 等格式。
Playwright MCP Server
提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。
@kazuph/mcp-fetch
用于获取网页内容和处理图像的模型上下文协议服务器。这使得 Claude Desktop(或任何 MCP 客户端)能够适当地获取网页内容和处理图像。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
Apple MCP Server
通过 MCP 协议与 Apple 应用(如“信息”、“备忘录”和“通讯录”)进行交互,从而使用自然语言发送消息、搜索和打开应用内容。
DuckDuckGo MCP Server
一个模型上下文协议 (MCP) 服务器,通过 DuckDuckGo 提供网页搜索功能,并具有内容获取和解析的附加功能。