Skip to main content

A Model Context Protocol (MCP) server providing advanced HTTP request capabilities with realistic browser emulation for Claude and other LLMs

Project description

mcp-rquest

PyPI Version Python Versions GitHub Stars License

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.

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
    • 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 parameters
    • http_post - Submit data via POST requests
    • http_put - Update resources with PUT requests
    • http_delete - Remove resources with DELETE requests
    • http_patch - Partially update resources
    • http_head - Retrieve only headers from a resource
    • http_options - Retrieve options for a resource
    • http_trace - Diagnostic request tracing
  • Response Handling Tools:

    • get_stored_response - Retrieve stored large responses, optionally by line range
    • get_stored_response_with_markdown - Convert HTML responses to Markdown

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:

pip install mcp-rquest

After installation, you can run it as a script using:

python -m mcp_rquest

Configuration

Configure for Claude.app

Add to your Claude settings:

Using uvx:

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

Using pip:

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

Using pipx:

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

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

  1. Clone the repository
  2. Create a virtual environment using uv:
    uv venv
    
  3. Activate the virtual environment:
    # Unix/macOS
    source .venv/bin/activate
    # Windows
    .venv\Scripts\activate
    
  4. Install development dependencies:
    uv pip install -e ".[dev]"
    

Acknowledgements

  • This project is built on top of rquest, which provides the advanced HTTP client with browser fingerprinting capabilities.
  • rquest is based on a fork of reqwest.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_rquest-0.1.8.tar.gz (63.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_rquest-0.1.8-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file mcp_rquest-0.1.8.tar.gz.

File metadata

  • Download URL: mcp_rquest-0.1.8.tar.gz
  • Upload date:
  • Size: 63.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for mcp_rquest-0.1.8.tar.gz
Algorithm Hash digest
SHA256 4010e5f91b2271fe419bc0cf4ce4ebbd303b8423f94c93d6133a45de8a9344ba
MD5 babaabad1be23d4c92afaa05525156a8
BLAKE2b-256 603a9a27a5012fbccbbe7b36457d5c7e7613d3bd4387dc779190bc58bd9cb163

See more details on using hashes here.

File details

Details for the file mcp_rquest-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: mcp_rquest-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for mcp_rquest-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 28978cbb27546b3c939a5bc7b777d9e565d9c32e40dbc51b8f80906af9cbe288
MD5 83061bdff1084c5ef67e2b816a79188e
BLAKE2b-256 516cf4d2225a1e3dc0b046172070193fc59d17d2d8c04c90ab0ea1e750f9f242

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page