F
Official Search & Web

Fetch

Anthropic's official URL fetcher with HTML to Markdown conversion.

Works with: Claude DesktopClaude CodeCursorWindsurfClineVS Code (Continue)Zed
Quick install
uvx mcp-server-fetch

How to install the Fetch MCP server

Add this to your Claude Desktop MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Add this to your Claude Code MCP configuration:

uvx mcp-server-fetch

Add this to your Cursor MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Add this to your Windsurf MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Add this to your Cline MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Add this to your VS Code (Continue) MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Add this to your Zed MCP configuration:

{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

The Fetch MCP server is Anthropic’s official URL fetcher. Give Claude a URL, get back the page content as clean Markdown. It’s the simplest possible web-access primitive and one of the most useful first installs.

The server is a thin wrapper over an HTTP client and an HTML-to-Markdown converter. No browser engine, no rendering, no JavaScript. Just HTTP plus parse plus return. That simplicity is the point.

Why use it

Most “let Claude read a webpage” tasks don’t need a full browser. They need to fetch the HTML, strip the navigation, convert to Markdown, return. Fetch does exactly this and stays out of the way.

For research workflows, Fetch is the missing piece between Claude and the open web. Brave Search finds the URLs, Fetch reads them, Claude synthesises. Three tools, one prompt, full coverage.

What it actually does

A single primitive: fetch a URL and return the content. The server handles redirects, content-type detection, and HTML to Markdown conversion. It supports basic auth headers if you pass them in. Output length can be paginated for large pages.

Practical patterns:

  • “Fetch this article and summarise the three main points.”
  • “Read the latest release notes from this URL and tell me what changed.”
  • “Pull the docs for this API and explain how authentication works.”

Gotchas

JavaScript-heavy sites return mostly empty Markdown. If the page is a single-page app that renders content via JS, Fetch sees the unhydrated HTML. For these sites you need a real browser. Firecrawl is the lighter option (managed cloud rendering); Playwright is heavier but local.

User-agent strings are basic. Some sites block default user agents. Most servers let you customise the UA; check the specific server’s config if a fetch returns 403.

The natural pairing is Brave Search plus Fetch. Brave finds the URL, Fetch reads it. Add Perplexity for cases where you want a synthesised answer rather than raw pages, and you’ve covered most web-research workflows.

For research where you’ve already got a personal library of saved sources, ContextBolt plus Fetch is even better. Claude searches your bookmarks first, fetches anything missing, then synthesises across both.

Fetch MCP server: FAQs

Is the Fetch server official?

Yes. It's part of the Anthropic-maintained reference servers in the modelcontextprotocol/servers monorepo. Run it with uvx mcp-server-fetch.

Does it bypass paywalls?

No. The server fetches a URL exactly as a regular HTTP client would. If a site requires login, JavaScript, or has a paywall, the fetcher gets whatever a non-logged-in browser would see.

How is it different from Brave Search?

Brave Search returns search results. Fetch retrieves a specific URL. The natural pattern is to chain them: Brave finds candidate URLs, Fetch retrieves the ones Claude wants to read in detail.

Does it handle JavaScript-rendered pages?

No. It's a plain HTTP fetcher with HTML to Markdown conversion. For sites that need JS execution (most React or Next.js apps), use [Firecrawl](/tools/mcp-server-directory/firecrawl/) or one of the browser automation servers like [Playwright](/tools/mcp-server-directory/playwright/) or [Puppeteer](/tools/mcp-server-directory/puppeteer/) instead.

Why uvx instead of npm?

Fetch is a Python server in the Anthropic reference suite. uvx is the easiest way to run a one-shot Python tool without globally installing it. If you already have uv installed, you're done. Otherwise install uv first, then uvx mcp-server-fetch will work.