HTTP Request logo

HTTP Request

Community
xxxbrian

A MCP server providing realistic browser-like HTTP request capabilities with accurate TLS/JA3/JA4 fingerprints for bypassing anti-bot measures. It also supports converting PDF and HTML documents to Markdown for easier processing by LLMs.

Publisherxxxbrian
Repositorymcp-rquest
LanguagePython
Forks
11
Stars
45
Available tools
0
Transport typestdio
Categories
LicenseMIT
Links
  • Connect tools to AI workflows

    HTTP Request exposes MCP capabilities that can be used by compatible AI clients and agents.

  • 0 available tools

    Browse the callable actions below, including names and descriptions when provided by the server.

  • Ready-to-copy setup

    Use the installation snippets to configure this server in your preferred MCP client.

  • Open source signals

    45 stars and 11 forks from the linked repository.

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. 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 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 or PDF responses to Markdown format for better LLM processing
    • get_model_state - Get the current state of the PDF models loading process
    • restart_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:

  1. Automatic PDF Detection: PDF files are automatically detected based on content type
  2. Seamless Conversion: The same get_stored_response_with_markdown tool works for both HTML and PDF files
  3. High-Quality Conversion: Uses the Marker library for accurate PDF to Markdown transformation
  4. 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:

bash
pip install mcp-rquest

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

bash
python -m mcp_rquest

Configuration

Configure for Claude.app

Add to your Claude settings:

Using uvx:

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

Using pip:

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

Using pipx:

json
{
  "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:
    bash
    uv venv
  3. Activate the virtual environment:
    bash
    # Unix/macOS
    source .venv/bin/activate
    # Windows
    .venv\Scripts\activate
  4. Install development dependencies:
    bash
    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.

Installation

TypingMind
Prerequisites:

Node.js 18+

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

Use HTTP Request MCP with multiple AI models

TypingMind connects MCP tools at the workspace level, so once HTTP Request is connected, you can use it with different AI models in TypingMind instead of setting it up separately for each model. This MCP runs locally through the TypingMind MCP connector on your device.

Setup guide to use the local connector

Use this when the MCP server needs access to local files, apps, or private resources on your computer.

1

Open the MCP settings

In TypingMind, go to Settings, Advanced Settings, then Model Context Protocol and choose Setup Connector.

  1. Open TypingMind in your browser.
  2. Click the Settings icon.
  3. Go to Advanced Settings.
  4. Open the Model Context Protocol section.
  5. Click Setup Connector and choose This Device.
TypingMind MCP connector setup screen with This Device selected
2

Run the connector command

Choose This Device, copy the command from TypingMind, and run it in Terminal. Keep the process running while you use MCP.

  1. Copy the setup command shown by TypingMind.
  2. Open Terminal on macOS or Windows Terminal on Windows.
  3. Paste and run the command.
  4. Approve the package install if Terminal asks you to proceed.
  5. Keep the Terminal window running while using MCP tools.
3

Add HTTP Request as a server

When the connector status is Ready, click Edit Servers and paste the MCP server configuration.

  1. Wait until the connector status shows Ready.
  2. Click Edit Servers.
  3. Paste the HTTP Request MCP server configuration.
  4. Save the server list.
  5. Refresh if you want to confirm the connector is still ready.
TypingMind MCP settings showing active server and Edit Servers button
{
  "mcpServers": {
    "http-request": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-rquest"
      ]
    }
  }
}
4

Use it across models

Save the server list, open Plugins, enable the HTTP Request MCP tools, then select any supported AI model in TypingMind and use the tools in chat or assign them to an AI agent.

  1. Open the Plugins page in TypingMind.
  2. Enable the HTTP Request MCP tools.
  3. Start a chat and choose the AI model you want to use.
  4. Use the MCP tools in chat or assign them to an AI agent.
  5. Switch to another AI model whenever needed without reconnecting MCP.
TypingMind chat using enabled MCP tools with a selected AI model
Can you use HTTP Request to help me with this task?
HTTP Request
Sure. I read it.
Here is what I found using HTTP Request.

Frequently asked questions

What is the HTTP Request MCP server used for?

HTTP Request is an MCP server that lets compatible AI clients connect to external tools and context. In TypingMind, you can add this MCP server once and make its tools available in your AI workspace.

Can I use HTTP Request MCP with multiple AI models in TypingMind?

Yes. TypingMind connects MCP tools at the workspace level, so you can use HTTP Request with different AI models such as Claude, ChatGPT, Gemini, or other models you have configured in TypingMind without setting up the MCP server separately for each model.

Why use HTTP Request MCP with TypingMind?

TypingMind is one of the best frontends for LLM chat because it brings multiple AI models, prompts, plugins, AI agents, API keys, and MCP tools into one workspace. With HTTP Request connected, you can use its MCP tools across your preferred models while keeping your chat workflow organized in TypingMind.

How do I connect HTTP Request MCP to TypingMind?

HTTP Request runs through the TypingMind local MCP connector. This is best when the MCP server needs access to local files, desktop apps, command-line tools, or private resources on your computer.

What tools does HTTP Request MCP provide in TypingMind?

HTTP Request exposes MCP capabilities that can be enabled from the TypingMind Plugins page and used in chat or assigned to AI agents.

Do I need to share my API keys with TypingMind to use HTTP Request MCP?

No. TypingMind is local-first and lets you keep your model providers, API keys, prompts, and MCP configuration under your control. If HTTP Request requires authentication, add the required headers, OAuth settings, or local configuration for that MCP server when you create the connection.

Related MCP Servers

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇