The Fetch MCP Server allows you to fetch web content in various formats and apply transformations:
Fetch HTML: Retrieve raw HTML content from a webpage
Fetch JSON: Fetch and parse JSON content from a URL
Fetch Plain Text: Extract text content from webpages without HTML tags, scripts, or styles
Fetch Markdown: Convert and retrieve webpage content in Markdown format
Custom Headers: Add optional headers to requests for additional customization
Allows converting web content to Markdown format using the fetch_markdown tool, using TurndownService for HTML to Markdown conversion
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Fetch MCP Serverfetch the latest blog post from techcrunch.com as markdown"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Fetch MCP Server

An MCP server for fetching web content in multiple formats — HTML, JSON, plain text, Markdown, readable article content, and YouTube transcripts.
Tools
All tools accept the following common parameters:
Parameter | Type | Required | Description |
| string | Yes | URL to fetch |
| object | No | Custom headers to include in the request |
| number | No | Maximum characters to return (default: 5000) |
| number | No | Start from this character index (default: 0) |
| string | No | Proxy URL (e.g. |
fetch_html — Fetch a website and return its raw HTML content.
fetch_markdown — Fetch a website and return its content converted to Markdown.
fetch_txt — Fetch a website and return plain text with HTML tags, scripts, and styles removed.
fetch_json — Fetch a URL and return the JSON response.
fetch_readable — Fetch a website and extract the main article content using Mozilla Readability, returned as Markdown. Strips navigation, ads, and boilerplate. Ideal for articles and blog posts.
fetch_youtube_transcript — Fetch a YouTube video's captions/transcript. Uses
yt-dlpif available, otherwise extracts directly from the page. Accepts an additionallangparameter (default:"en") to select the caption language.
Related MCP server: Fetch MCP Server
Installation
As an MCP server
Add to your MCP client configuration:
{
"mcpServers": {
"fetch": {
"command": "npx",
"args": ["mcp-fetch-server"]
}
}
}As a CLI
npx mcp-fetch <command> <url> [flags]Or install globally:
npm install -g mcp-fetch-server
mcp-fetch <command> <url> [flags]CLI Usage
mcp-fetch <command> <url> [flags]Commands
Command | Description |
| Fetch a URL and return raw HTML |
| Fetch a URL and return Markdown |
| Fetch a URL and return article content as Markdown (via Readability) |
| Fetch a URL and return plain text |
| Fetch a URL and return JSON |
| Fetch a YouTube video transcript |
Flags
Flag | Description |
| Maximum characters to return |
| Start from this character index |
| Proxy URL |
| Language code for YouTube transcripts (default: |
| Show help message |
| Show version |
Examples
# Fetch a page as markdown
mcp-fetch markdown https://example.com
# Extract article content without boilerplate
mcp-fetch readable https://example.com/blog/post
# Get a YouTube transcript in Spanish
mcp-fetch youtube https://www.youtube.com/watch?v=dQw4w9WgXcQ --lang es
# Fetch with a length limit
mcp-fetch html https://example.com --max-length 10000
# Fetch through a proxy
mcp-fetch json https://api.example.com/data --proxy http://proxy:8080Environment Variables
Variable | Description |
| Default character limit for responses (default: |
| Maximum response body size in bytes (default: |
Example with a custom limit:
{
"mcpServers": {
"fetch": {
"command": "npx",
"args": ["mcp-fetch-server"],
"env": {
"DEFAULT_LIMIT": "50000"
}
}
}
}Features
Fetch web content as HTML, JSON, plain text, or Markdown
Extract article content with Mozilla Readability (strips ads, nav, boilerplate)
Extract YouTube video transcripts (via
yt-dlpor direct extraction)Proxy support for requests behind firewalls
Pagination with
max_lengthandstart_indexCustom request headers
SSRF protection (blocks private/localhost addresses and DNS rebinding)
Response size limits to prevent memory exhaustion
Development
bun install
bun run dev # start with watch mode
bun test # run tests
bun run build # build for productionLicense
This project is licensed under the MIT License.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.