mcp-rquest
A Model Context Protocol (MCP) server that provides advanced HTTP request capabilities for Claude and other LLMs. Built on rquest, this server enables realistic browser emulation with accurate TLS/JA3/JA4 fingerprints, allowing models to interact with websites more naturally and bypass common anti-bot measures. It also supports converting PDF and HTML documents to Markdown for easier processing by LLMs.
Features
- Complete HTTP Methods: Support for GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, and TRACE
- Browser Fingerprinting: Accurate TLS, JA3/JA4, and HTTP/2 browser fingerprints
- Content Handling:
- Automatic handling of large responses with token counting
- HTML to Markdown conversion for better LLM processing
- PDF to Markdown conversion using the Marker library
- Secure storage of responses in system temporary directories
- Authentication Support: Basic, Bearer, and custom authentication methods
- Request Customization:
- Headers, cookies, redirects
- Form data, JSON payloads, multipart/form-data
- Query parameters
- SSL Security: Uses BoringSSL for secure connections with realistic browser fingerprints
Available Tools
-
HTTP Request Tools:
http_get
- Perform GET requests with optional parametershttp_post
- Submit data via POST requestshttp_put
- Update resources with PUT requestshttp_delete
- Remove resources with DELETE requestshttp_patch
- Partially update resourceshttp_head
- Retrieve only headers from a resourcehttp_options
- Retrieve options for a resourcehttp_trace
- Diagnostic request tracing
-
Response Handling Tools:
get_stored_response
- Retrieve stored large responses, optionally by line rangeget_stored_response_with_markdown
- Convert HTML or PDF responses to Markdown format for better LLM processingget_model_state
- Get the current state of the PDF models loading processrestart_model_loading
- Restart the PDF models loading process if it failed or got stuck
PDF Support
mcp-rquest now supports PDF to Markdown conversion, allowing you to download PDF files and convert them to Markdown format that's easy for LLMs to process:
- Automatic PDF Detection: PDF files are automatically detected based on content type
- Seamless Conversion: The same
get_stored_response_with_markdown
tool works for both HTML and PDF files - High-Quality Conversion: Uses the Marker library for accurate PDF to Markdown transformation
- Optimized Performance: Models are pre-downloaded during package installation to avoid delays during request processing
Installation
Using uv (recommended)
When using uv
no specific installation is needed. We will
use uvx
to directly run mcp-rquest.
Using pip
Alternatively you can install mcp-rquest
via pip:
1pip install mcp-rquest
After installation, you can run it as a script using:
1python -m mcp_rquest
Configuration
Configure for Claude.app
Add to your Claude settings:
Using uvx
:
1{ 2 "mcpServers": { 3 "http-rquest": { 4 "command": "uvx", 5 "args": ["mcp-rquest"] 6 } 7 } 8}
Using pip
:
1{ 2 "mcpServers": { 3 "http-rquest": { 4 "command": "python", 5 "args": ["-m", "mcp_rquest"] 6 } 7 } 8}
Using pipx
:
1{ 2 "mcpServers": { 3 "http-rquest": { 4 "command": "pipx", 5 "args": ["run", "mcp-rquest"] 6 } 7 } 8}
Browser Emulation
mcp-rquest leverages rquest's powerful browser emulation capabilities to provide realistic browser fingerprints, which helps bypass bot detection and access content normally available only to standard browsers. Supported browser fingerprints include:
- Chrome (multiple versions)
- Firefox
- Safari (including iOS and iPad versions)
- Edge
- OkHttp
This ensures that requests sent through mcp-rquest appear as legitimate browser traffic rather than bot requests.
Development
Setting up a Development Environment
- Clone the repository
- Create a virtual environment using uv:
1uv venv
- Activate the virtual environment:
1# Unix/macOS 2source .venv/bin/activate 3# Windows 4.venv\Scripts\activate
- Install development dependencies:
1uv pip install -e ".[dev]"