关于 WebSearch - Advanced Web Search and Content Extraction Tool
WebSearch 是一个通过 Firecrawl API 进行网页搜索和页面处理的 Python MCP 服务,提供搜索、信息提取、网站爬取和页面抓取工具;部分增强功能可选用 OpenAI API 密钥。
主要功能
- 01按可配置参数搜索网页
- 02使用自然语言提示词提取信息
- 03按深度和页面数限制爬取网站
- 04以多种格式抓取页面
适用场景
- 01查找某个查询的网页结果
- 02从一组 URL 提取指定信息
- 03收集网站多个页面的内容
- 04抓取页面内容或截图
MCP 相关
该服务将 Search、Extract、Crawl 和 Scrape 作为 MCP 工具提供给 Claude for Desktop 等客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
WebSearch - 高级网页搜索和内容提取工具
这是一款功能强大的网页搜索和内容提取工具,使用 Python 构建,并借助 Firecrawl API 实现高级网页抓取、搜索和内容分析功能。
🚀 功能
- 高级网页搜索:使用可自定义参数执行智能网页搜索
- 内容提取:使用自然语言提示词从网页中提取特定信息
- 网页爬取:按照可配置的深度和限制爬取网站
- 网页抓取:抓取网页,并支持多种输出格式
- MCP 集成:构建为模型上下文协议(MCP)服务,可无缝集成
📋 前提条件
- Python 3.8 或更高版本
- uv 包管理器
- Firecrawl API 密钥
- OpenAI API 密钥(可选,用于增强功能)
- Tavily API 密钥(可选,用于扩展搜索功能)
🛠️ 安装
- 安装 uv:
# On Windows (using pip)
pip install uv
# On Unix/MacOS
curl -LsSf https://astral.sh/uv/install.sh | sh
# Add uv to PATH (Unix/MacOS)
export PATH="$HOME/.local/bin:$PATH"
# Add uv to PATH (Windows - add to Environment Variables)
# Add: %USERPROFILE%\.local\bin
- 克隆仓库:
git clone https://github.com/yourusername/websearch.git
cd websearch
- 使用 uv 创建并激活虚拟环境:
# Create virtual environment
uv venv
# Activate on Windows
.\.venv\Scripts\activate.ps1
# Activate on Unix/MacOS
source .venv/bin/activate
- 使用 uv 安装依赖:
# Install from requirements.txt
uv sync
- 设置环境变量:
# Create .env file
touch .env
# Add your API keys
FIRECRAWL_API_KEY=your_firecrawl_api_key
OPENAI_API_KEY=your_openai_api_key
🎯 使用方法
在 Claude for Desktop 中设置
无需直接运行服务,你可以配置 Claude for Desktop 来访问 WebSearch 工具:
-
找到或创建 Claude for Desktop 配置文件:
- Windows:
%env:AppData%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
-
在
mcpServers部分添加 WebSearch 服务配置:
{
"mcpServers": {
"websearch": {
"command": "uv",
"args": [
"--directory",
"D:\\ABSOLUTE\\PATH\\TO\\WebSearch",
"run",
"main.py"
]
}
}
}
-
请务必将目录路径替换为 WebSearch 项目文件夹的绝对路径。
-
保存配置文件并重启 Claude for Desktop。
-
配置完成后,WebSearch 工具将显示在 Claude for Desktop 的工具菜单(锤子图标)中。
可用工具
-
搜索
-
提取信息
-
爬取网站
-
抓取内容
📚 API 参考
搜索
query(str):搜索查询- 返回:JSON 格式的搜索结果
提取
urls(List[str]):要从中提取信息的 URL 列表prompt(str):提取说明enableWebSearch(bool):启用辅助网页搜索showSources(bool):包含来源引用- 返回:以指定格式提取的信息
爬取
url(str):起始 URLmaxDepth(int):最大爬取深度limit(int):最大爬取页面数- 返回:Markdown/HTML 格式的爬取内容
抓取
url(str):目标 URL- 返回:抓取的内容,可选择包含截图
🔧 配置
环境变量
此工具需要配置特定 API 密钥才能正常运行。我们提供了 .env.example 文件,可用作模板:
- 复制示例文件:
# On Unix/MacOS
cp .env.example .env
# On Windows
copy .env.example .env
- 编辑
.env文件并填入 API 密钥:
# OpenAI API key - Required for AI-powered features
OPENAI_API_KEY=your_openai_api_key_here
# Firecrawl API key - Required for web scraping and searching
FIRECRAWL_API_KEY=your_firecrawl_api_key_here
获取 API 密钥
-
OpenAI API 密钥:
- 访问 OpenAI 平台
- 注册或登录
- 前往 API 密钥页面
- 创建新的密钥
-
Firecrawl API 密钥:
- 访问 Firecrawl 网站
- 创建账户
- 前往控制面板
- 生成新的 API 密钥
如果配置正确,你应该会收到包含搜索结果的 JSON 响应。
故障排除
如果遇到错误:
- 确保已在
.env文件中设置所有必需的 API 密钥 - 确认 API 密钥有效且未过期
- 检查
.env文件是否位于项目根目录 - 确保环境变量已正确加载
🤝 贡献
- Fork 此仓库
- 创建功能分支(
git checkout -b feature/AmazingFeature) - 提交更改(
git commit -m 'Add some AmazingFeature') - 推送到分支(
git push origin feature/AmazingFeature) - 创建 Pull Request
📝 许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
🙏 致谢
📬 联系方式
José Martín Rodriguez Mortaloni - @m4s1t425 - [email protected]
使用 Python 和 Firecrawl 倾心打造 ❤️
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。