MCP server and CLI for fetching web content as HTML, Markdown, plain text, JSON, or YouTube transcripts. Current stable version 1.1.2, released regularly on npm. Key differentiators: multiple output formats, Mozilla Readability integration for article extraction, YouTube transcript support via yt-dlp or direct page extraction, and proxy support. Minimal configuration, designed for MCP ecosystem but also usable as standalone CLI. Requires Node.js >=18.
npm install mcp-fetch-serverVerified import paths — ran on the pinned version, not inferred.
Shows how to add the MCP server to client config and run CLI commands for markdown and YouTube transcript.
Use npx mcp-fetch-server to run as MCP server, or use CLI commands. If you need a fetch function programmatically, use libraries like undici or node-fetch directly.
Install yt-dlp globally (pip install yt-dlp) for more reliable transcript fetching.
Use fetch_html or fetch_markdown for non-article pages; fetch_readable is designed for blog posts and articles.
Set max_length parameter appropriately per request, or configure DEFAULT_LIMIT environment variable to a higher value or 0 for no limit (with caution).
Keep up-to-date with the MCP specification and package changelog on GitHub: https://github.com/zcaceres/fetch-mcp
Install Node.js >=18 and ensure npm is up to date. Run: node --version && npm --version
Do not try to import this package in code. Use npx mcp-fetch-server to run it as an MCP server, or use CLI commands directly.
Try a different language code (--lang). Install yt-dlp globally for better extraction: pip install yt-dlp
Check network connectivity. If using a proxy, verify proxy URL. Try a different URL. Consider adding custom headers to simulate a browser User-Agent.