HTTP请求服务器

一个为Claude和其他LLM提供高级HTTP请求能力的模型上下文协议服务器,支持浏览器模拟和文档转换。

  • by xxxbrian
  • Python
  • 本地部署
  • 48 星标
  • 更新于
在 GitHub 查看 xxxbrian/mcp-rquest

使用说明

mcp任务

一种模型上下文协议(MCP)服务器,为Claude和其他LLM提供高级HTTP请求功能。建立在 请求,该服务器通过精确的TLS/JA3/JA4指纹实现了逼真的浏览器模拟,使模型能够更自然地与网站交互,并绕过常见的反机器人措施。它还支持将PDF和HTML文档转换为Markdown,以便LLM更容易处理。

特性

  • 完整的HTTP方法:支持GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS和TRACE
  • 浏览器指纹:准确的TLS、JA3/JA4和HTTP/2浏览器指纹
  • 内容处理:
    • 通过令牌计数自动处理大型响应
    • HTML到Markdown的转换,以更好地处理LLM
    • 使用Marker库将PDF转换为Markdown
    • 在系统临时目录中安全存储响应
  • 身份验证支持:基本、承载和自定义身份验证方法
  • 请求定制:
    • 标头、Cookie、重定向
    • 表单数据、JSON有效载荷、多部分/表单数据
    • 查询参数
  • SSL安全:使用BoringSSL进行具有真实浏览器指纹的安全连接

可用工具

  • HTTP请求工具:

    • http_get -使用可选参数执行GET请求
    • http_post -通过POST请求提交数据
    • http_put -使用PUT请求更新资源
    • http_delete -使用DELETE请求删除资源
    • http_patch -部分更新资源
    • http_head -仅从资源中检索标头
    • http_options -检索资源的选项
    • http_trace -诊断请求跟踪
  • 响应处理工具:

    • get_stored_response -检索存储的大响应,可选按行范围检索
    • get_stored_response_with_markdown -将HTML或PDF响应转换为Markdown格式,以更好地处理LLM
    • get_model_state -获取PDF模型加载过程的当前状态
    • restart_model_loading -如果加载PDF模型失败或卡住,请重新启动加载过程

PDF支持

mcp-rquest现在支持PDF到Markdown的转换,允许您下载PDF文件并将其转换为易于LLM处理的Markdown格式:

  1. 自动PDF检测:根据内容类型自动检测PDF文件
  2. 无缝转换:相同 get_stored_response_with_markdown 该工具适用于HTML和PDF文件
  3. 高质量转换:使用 标记 用于精确PDF到Markdown转换的库
  4. 优化性能:模型在包安装过程中预先下载,以避免请求处理过程中的延迟

安装

使用紫外线(推荐)

使用时 uv 不需要特定的安装。我们将 使用 uvx 直接运行 mcp任务.

使用pip

或者,您可以安装 mcp-rquest 通过pip:

pip install mcp-rquest

安装后,您可以使用以下命令将其作为脚本运行:

python -m mcp_rquest

配置

为Claude.app进行配置

添加到您的Claude设置中:

使用 uvx:

{
  "mcpServers": {
    "http-rquest": {
      "command": "uvx",
      "args": ["mcp-rquest"]
    }
  }
}

使用 pip:

{
  "mcpServers": {
    "http-rquest": {
      "command": "python",
      "args": ["-m", "mcp_rquest"]
    }
  }
}

使用 pipx:

{
  "mcpServers": {
    "http-rquest": {
      "command": "pipx",
      "args": ["run", "mcp-rquest"]
    }
  }
}

浏览器模拟

mcp-rquest利用rquest强大的浏览器模拟功能提供逼真的浏览器指纹,这有助于绕过机器人检测,并访问通常仅适用于标准浏览器的内容。支持的浏览器指纹包括:

  • Chrome(多个版本)
  • 火狐
  • Safari浏览器(包括iOS和iPad版本)
  • 边缘
  • OkHttp

这确保了通过mcp-rquest发送的请求显示为合法的浏览器流量,而不是机器人请求。

发展

建立开发环境

  1. 克隆存储库
  2. 使用uv创建虚拟环境:
    uv venv
    
  3. 激活虚拟环境:
    # Unix/macOS
    source .venv/bin/activate
    # Windows
    .venv\Scripts\activate
    
  4. 安装开发依赖项:
    uv pip install -e ".[dev]"
    

致谢

  • 该项目建立在 请求,它为高级HTTP客户端提供了浏览器指纹识别功能。
  • rquest基于 reqwest.