Fetch

Popular
modelcontextprotocol

URL fetcher that returns clean markdown.

Official Python reference server. Pulls a URL, strips boilerplate, and returns readable markdown. Honours robots.txt and caps response size by default.

63k82k90/100

What it does

  • Fetches an arbitrary URL and returns readability-style markdown, stripping nav and ads
  • Consults robots.txt before each request and refuses disallowed paths
  • Caps response size at 1 MiB by default, configurable per request
  • Exposes a raw mode that returns the original HTML when the markdown extractor would lose fidelity
  • Follows up to 5 redirects, surfaces the final URL for citation
  • Sends a realistic User-Agent so sites that block default Python UAs still work

Best for

Article summarisationGrounding answers in live pagesRead-after-search pipelinesMarkdown extraction for RAG
About Fetch

Fetch is a MCP server categorised under web scraping, official, http, scraping. Official Python reference server. Pulls a URL, strips boilerplate, and returns readable markdown. Honours robots.txt and caps response size by default.

How to install

Pick your MCP client from the Install panel on this page to get a one-click install link (Cursor, VS Code) or a ready-to-paste configuration for Claude Desktop, Claude Code, Gemini, Codex, Windsurf, and other MCP-compatible clients. No local setup required for remote servers.

License

Fetch is released under the MIT license. This is a permissive open-source license, so you can freely use, modify, and distribute it — subject to its terms.

No reviews yet

Be the first to leave a review after using this server in production.

README

The Fetch server is one of the seven active reference servers. It lives at src/fetch in the modelcontextprotocol/servers monorepo and is distributed as mcp-server-fetch on PyPI. The common pairing is "search MCP + Fetch" — the search server returns URLs, Fetch turns each into clean markdown the agent can actually reason over. What it does: - Fetches an arbitrary URL and returns readability-style markdown, stripping nav and ads - Consults robots.txt before each request and refuses disallowed paths - Caps response size at 1 MiB by default, configurable per request - Exposes a raw mode that returns the original HTML when the markdown extractor would lose fidelity - Follows up to 5 redirects, surfaces the final URL for citation - Sends a realistic User-Agent so sites that block default Python UAs still work Example: Pair with the Brave Search entry in this registry. The agent runs a web search, picks the top three results, and calls fetch on each to extract the body text — it then summarises across the three articles instead of guessing from snippet text. Setup: No required configuration. Optional FETCH_TIMEOUT (seconds) and FETCH_MAX_SIZE (bytes) env vars adjust defaults. Run via "uvx mcp-server-fetch" for an isolated-env install or "pip install mcp-server-fetch" into an existing Python environment. Transport: stdio only. Single-process, no background workers. Notes: The server does not render JavaScript. For client-rendered pages that need a real browser (SPAs, dashboards behind auth, sites that ship skeleton HTML) use the Puppeteer entry in this registry instead. The robots.txt check is strict — sites that disallow your user-agent will return an explicit "robots disallowed" error rather than silently returning empty content.

Alternatives

Puppeteer
web scraping
free

Community Puppeteer MCP with new-tab and attach modes.

officialbrowserscraping
74/1001.1ktypescript
Featured

Brave's own search MCP with web, news, image, and video.

officialsearchweb
86/1002.4ktypescript
Filesystem
file system
Verified

Scoped file access with configurable allow-lists.

officialfilesystemnode
94/10063ktypescript
GitHub
version control
Verified

GitHub's own MCP server for issues, PRs, and code search.

officialgithubgit
92/10023kgo