
Fetch MCP Server by zcaceres (not the reference Fetch server): Setup for Claude and Cursor
Lets Claude, Cursor and other assistants fetch a web page or API and read it as Markdown, text, JSON or a clean article.
This is a community fetch server by zcaceres, not the reference Fetch server from the MCP project. It runs on your computer, needs no account or key, and fetches pages from your own connection.
Responses are cut to 5,000 characters by default so a big page does not flood the chat. Raise it with the DEFAULT_LIMIT setting or ask for a later section.
Good for
- Anyone who wants an assistant to read a link they paste
- Developers who want API responses fetched in chat
- Researchers who want a YouTube transcript pulled into a conversation
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install fetch MCP
Claude Code
- 1
Copy this prompt.
Add the fetch MCP server to Claude Code. Run this command: claude mcp add fetch -- npx -y mcp-fetch-server Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
Built from the package data we hold. Not yet tested by us.
Tools
Downloads a page's raw HTML
Fetches a web address and returns its HTML as is. You can set headers, a character limit and where to start reading.
Try: “Fetch the raw HTML of example.com.”
Network ·
fetch_htmlTurns a page into Markdown
Fetches a web address and converts the page to Markdown, which is easier for an assistant to read than raw HTML.
Try: “Get example.com/docs as Markdown.”
Network ·
fetch_markdownGets a page as plain text
Fetches a page and strips tags, scripts and styles so only the text is left.
Try: “Give me the plain text of this page.”
Network ·
fetch_txtCalls a JSON address
Fetches a URL and returns the JSON response, with optional headers.
Try: “Fetch https://api.example.com/status and show the JSON.”
Network ·
fetch_jsonPulls out just the article
Uses Mozilla Readability to keep the main article and drop menus, ads and boilerplate, returned as Markdown.
Try: “Extract the article from this blog post.”
Network ·
fetch_readableGets a YouTube video's captions
Returns a video's transcript in the language you choose, default English. It runs yt-dlp if installed and otherwise reads the page directly.
Try: “Get the English transcript of this YouTube video.”
Runs code ·
fetch_youtube_transcript
Read from the source code
Permissions
low risk · 4 things to watch · 1 advisory
Low risk
It only reads from the web, but it fetches whatever address the assistant gives it, and page text can try to steer the assistant. Do not give it other tools that can act on your accounts without checking.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
Fetched pages can contain hidden instructions
Anything on a web page ends up in the assistant's context. Treat summaries of unknown pages with care. github.com
It blocks private and local addresses
The code rejects localhost, private IP addresses and hostnames that resolve to private IPs, to stop SSRF. github.com
The transcript tool can run yt-dlp
If yt-dlp is installed, fetch_youtube_transcript runs it and writes subtitles to a temporary folder it then removes. github.com
The proxy option may be ignored on Node
A code comment says the proxy setting is a Bun feature and is silently ignored on Node.js. github.com
Security advisories
Technical details
| Talks to | Any public web address the assistant requests |
|---|---|
| Sign-in and keys | No credentials. |
Questions
Is the Fetch MCP server by zcaceres official?
No. It is a community project by zcaceres, not the reference Fetch server in modelcontextprotocol/servers and not from any website it fetches. The reference server has its own page: Fetch MCP. This one has six separate tools for HTML, Markdown, text, JSON, readable articles and YouTube transcripts.
Does it need an API key?
No. It runs locally with npx and fetches pages directly.
Can it fetch pages on my own network?
No. The code blocks localhost, private IP addresses and names that resolve to them.
Why are responses cut short?
The default limit is 5,000 characters. Set DEFAULT_LIMIT higher in the server's environment, or ask for the next part with the start index.
Does it need yt-dlp?
No. The YouTube tool uses yt-dlp when it is installed and otherwise reads the page directly.
Can I use it from the command line?
Yes. The same package ships a mcp-fetch command with html, markdown, readable, txt, json and youtube subcommands.
Information
updated Nov 2, 2026
- Publisher
- Community
- Package
mcp-fetch-server- Registry
- npm
- Transport
- stdio
- Auth
- None
- Version
- 1.1.2
- License
- MIT
- Last commit
- Mar 12, 2026
- Open issues
- 4
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 3Hide
- README.md · github.com
- index.ts · github.com
- Fetcher.ts · github.com