home / mcp / fetch url mcp server

Fetch URL MCP Server

Fetches public web pages, extracts meaningful content with Readability, and returns clean Markdown optimized for MCP context windows.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "j0hanz-fetch-url-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@j0hanz/fetch-url-mcp@latest",
        "--stdio"
      ],
      "env": {
        "HOST": "127.0.0.1",
        "PORT": "3000",
        "LOG_LEVEL": "info",
        "USER_AGENT": "fetch-url-mcp/{version}",
        "CACHE_ENABLED": "true",
        "FETCH_TIMEOUT_MS": "15000"
      }
    }
  }
}

Fetch URL MCP Server fetches public web pages, extracts meaningful content using Mozilla Readability, and converts it into clean Markdown optimized for large language model context windows. It removes noise, supports caching, and provides both transport options for integration with MCP clients.

How to use

You run the server in stdio mode to connect MCP clients directly via standard input and output. Your MCP client sends requests to the server, which returns content-enhanced Markdown suitable for context windows. Use this when you want to fetch and cleanly format public web content for ingestion by an AI model.

How to install

Prerequisites you need before installing are Node.js version 24 or newer and npm. Ensure you have network access to fetch packages.

npx -y @j0hanz/fetch-url-mcp@latest --stdio

Configuration and usage notes

To connect a client, configure your MCP client to load the fetch-url-mcp server in stdio mode. You can also add it to your MCP client configuration so it starts automatically.

{
  "mcpServers": {
    "fetch_url": {
      "command": "npx",
      "args": ["-y", "@j0hanz/fetch-url-mcp@latest", "--stdio"]
    }
  }
}

Security and safety notes

The server enforces strict SSRF protections, blocks access to private IP ranges, and uses secure token handling in memory. It also maintains a rate limit in HTTP mode and confines worker resources to prevent abuse.

Configuration essentials

Key runtime capabilities and environment controls are available to tailor performance and behavior. Core settings influence binding, port, logging, fetch timeouts, caching, and access control.

Troubleshooting

If you encounter issues, verify that the server is running in stdio mode when using an MCP client that communicates over stdin/stdout. Check that you are using the correct startup command and that your MCP client is configured to interface with the fetch_url server.

Available tools

fetch-url

Fetches a webpage and converts it to clean Markdown optimized for LLM context. Includes noise removal, caching, and optional async task execution.