README
🚀 mcp-rquest
mcp-rquest 是一个基于模型上下文协议 (MCP) 的服务器,为 Claude 和其他大型语言模型提供高级 HTTP 请求功能。它能让模型更自然地与网站交互,绕过常见反机器人措施,还支持将 PDF 和 HTML 文档转换为 Markdown 格式,方便 LLM 处理。
🚀 快速开始
安装
使用 pip 安装 mcp-rquest:
pip install mcp-rquest
配置
在项目根目录下创建一个 mcp_server.json 文件,并添加以下内容:
{
"bind": ":3000",
"workers": 4,
"browser_fingerprints": {
"chrome": true,
"firefox": true,
"safari": true,
"edge": true,
"okhttp": true
},
"features": {
"content_conversion": true,
"proxy_support": true,
"rate_limiting": false
}
}
启动
启动服务器:
mcp-rquest start --config mcp_server.json
使用示例
以下是一个简单的使用示例:
import requests
response = requests.get("http://localhost:3000", params={"param": "value"})
print(response.text)
✨ 主要特性
完整的 HTTP 方法
支持 GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS 和 TRACE 等完整的 HTTP 方法。
浏览器指纹识别
具备准确的 TLS、JA3/JA4 和 HTTP/2 浏览器指纹,可有效绕过反机器人检测。
内容处理
- 自动处理大响应,带令牌计数功能。
- 将 HTML 转换为 Markdown 格式,提高 LLM 处理效果。
- 使用 Marker 库将 PDF 转换为 Markdown 格式。
- 安全地将响应存储在系统临时目录中。
浏览器模拟
支持 Chrome(多个版本)、Firefox、Safari(包括 iOS 和 iPad 版本)、Edge 和 OkHttp,确保请求看似来自标准浏览器而非机器人。
📦 安装指南
使用 pip 安装
pip install mcp-rquest
配置 MCP 服务器
在项目根目录下创建 mcp_server.json 文件,内容如下:
{
"bind": ":3000",
"workers": 4,
"browser_fingerprints": {
"chrome": true,
"firefox": true,
"safari": true,
"edge": true,
"okhttp": true
},
"features": {
"content_conversion": true,
"proxy_support": true,
"rate_limiting": false
}
}
启动服务器
mcp-rquest start --config mcp_server.json
💻 使用示例
基础用法
import requests
response = requests.get("http://localhost:3000", params={"param": "value"})
print(response.text)
🔧 技术细节
浏览器指纹模拟
mcp-rquest 利用 rquest 强大的浏览器模拟功能,提供现实的浏览器指纹,帮助绕过反机器人检测,访问通常仅限于标准浏览器的内容。支持的浏览器指纹包括:
- Chrome(多个版本)
- Firefox
- Safari(包括 iOS 和 iPad 版本)
- Edge
- OkHttp 这确保通过 mcp-rquest 发送的请求看似来自合法浏览器流量而非机器人。
开发环境搭建
- 克隆仓库:
git clone https://github.com/xxxbrian/mcp-rquest.git
- 创建虚拟环境(使用 uv):
uv venv
- 激活虚拟环境:
# Unix/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate
- 安装开发依赖项:
uv pip install -e ".[dev]"
📄 许可证
本项目的许可证信息请参考 GitHub 仓库。
Scan to join WeChat group