Server profile

Fetch MCP Server

Fetch MCP Server retrieves web pages as HTML, text, Markdown, JSON, or cleaned article content. It also extracts YouTube transcripts and supports bounded, paginated responses.

Server facts

Fetch MCP Server

Project

Author
zcaceres
License
MIT

Tech

Runtime / language
node
Transports
stdio
Remote available
No
Authentication
Not specified

Activity

GitHub stars
825
Last commit
Data as of

Tags

  • Content Extraction
  • Http
  • Markdown
  • Web Content
  • Youtube

Overview

Fetch MCP Server is a web-content retrieval service for MCP clients, with a companion command-line interface. The README describes separate tools for raw HTML, Markdown conversion, plain text, JSON responses, readable articles, and YouTube transcripts. Article extraction uses Mozilla Readability to remove surrounding navigation and other boilerplate before returning Markdown. Transcript retrieval can use yt-dlp when installed or fall back to direct page extraction, with a language option for captions. These are distinct output choices for bringing external material into an assistant's context.

Requests accept custom headers and an optional proxy. Returned content can be divided into character ranges using a start index and maximum length, with a default response character limit of 5,000. A separate response-body limit defaults to 10 MB, and the README describes protections against private-address requests and DNS rebinding. The documented MCP configuration starts mcp-fetch-server through npx; the mcp-fetch CLI offers matching format-oriented commands. The input also includes a structured tool list naming generic HTTP, GraphQL, browser, and WebSocket operations, while the README presents the format-specific tool set. That difference matters when checking the capabilities actually exposed by a running installation. The strongest documented fit is retrieving and converting web material, especially articles, structured responses, and video captions.

Install & configure

Requirements

  • Node.js with npx
  • Optional yt-dlp for transcript extraction
Documented launch / install command
npx mcp-fetch-server

This is the README MCP launch, not the mcp-fetch CLI invocation. The supplied structured tool catalog and README list different tools; verify the running server tool list.

Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Desktop configuration
{
  "mcpServers": {
    "fetch-mcp-zcaceres": {
      "command": "npx",
      "args": [
        "mcp-fetch-server"
      ],
      "env": {
        "DEFAULT_LIMIT": "<Optional default response character limit>",
        "MAX_RESPONSE_BYTES": "<Optional response-body byte limit>"
      }
    }
  }
}

Read the Claude Desktop setup guide

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.

Cursor configuration
{
  "mcpServers": {
    "fetch-mcp-zcaceres": {
      "command": "npx",
      "args": [
        "mcp-fetch-server"
      ],
      "env": {
        "DEFAULT_LIMIT": "<Optional default response character limit>",
        "MAX_RESPONSE_BYTES": "<Optional response-body byte limit>"
      }
    }
  }
}

Read the Cursor setup guide

Config file · Workspace: .vscode/mcp.json

For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.

VS Code configuration
{
  "servers": {
    "fetch-mcp-zcaceres": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "mcp-fetch-server"
      ],
      "env": {
        "DEFAULT_LIMIT": "<Optional default response character limit>",
        "MAX_RESPONSE_BYTES": "<Optional response-body byte limit>"
      }
    }
  }
}

Read the VS Code setup guide

Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json

Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json

Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.

Windsurf configuration
{
  "mcpServers": {
    "fetch-mcp-zcaceres": {
      "command": "npx",
      "args": [
        "mcp-fetch-server"
      ],
      "env": {
        "DEFAULT_LIMIT": "<Optional default response character limit>",
        "MAX_RESPONSE_BYTES": "<Optional response-body byte limit>"
      }
    }
  }
}

Read the Windsurf setup guide

Config file · Project scope: .mcp.json at the repository root

The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Code configuration
{
  "mcpServers": {
    "fetch-mcp-zcaceres": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "mcp-fetch-server"
      ],
      "env": {
        "DEFAULT_LIMIT": "<Optional default response character limit>",
        "MAX_RESPONSE_BYTES": "<Optional response-body byte limit>"
      }
    }
  }
}

Read the Claude Code setup guide

Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.

Tools

Source: repository README and repository tool metadata. Tool descriptions are a documented snapshot, not a live capability check.

ToolWhat it does
fetch_htmlRetrieve a page as raw HTML.
fetch_markdownConvert fetched page content to Markdown.
fetch_txtReturn page text without HTML tags, scripts, or styles.
fetch_jsonRetrieve a URL returning JSON.
fetch_readableExtract the main article body as Markdown using Readability.
fetch_youtube_transcriptRetrieve video captions with an optional language selection.
fetchIssue an HTTP request with configurable method, headers, body, and options.
get-rulesRetrieve guidance on using the server tools.
graphqlRun GraphQL queries or mutations with variables and headers.
puppeteerOperate browser pages, execute JavaScript, and capture screenshots.
socketOpen, inspect, use, or close WebSocket connections.

Names, permissions, and defaults can change. Check the current upstream documentation before granting access.

Use cases

  • Bring a web article into an assistant as cleaned Markdown.
  • Retrieve JSON from a URL with custom request headers.
  • Read long pages in character-based chunks.
  • Extract a YouTube transcript in a selected language.

Strengths

  • Several content formats plus dedicated article extraction.
  • Supports headers, proxies, and character-range pagination.
  • Documents SSRF defenses and response-size limits.

Limitations

  • Default response character and byte limits constrain large fetches.
  • Structured input tools differ from the README tool list.
  • Private and localhost targets are blocked by the documented SSRF protection.

Frequently asked questions

The README provides fetch_readable, which uses Mozilla Readability and returns Markdown.

Yes. Tools accept max_length and start_index for character-based slices.

No. The README says transcript retrieval falls back to direct page extraction when yt-dlp is unavailable.

The README describes SSRF protection that blocks private and localhost addresses.

The supplied structured facts list generic network tools, while the README documents format-specific fetch tools. Both are attributed to their respective source.

Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.

Related MCP servers

Apify MCP Server

Search & Web Data

Use Apify Actors as MCP tools for web extraction and automation. Assistants can discover Actors, inspect their schemas, run them, and retrieve results, with hosted OAuth access or a local stdio option.

Browserbase MCP Server

Browser Automation

Browserbase MCP Server lets assistants operate cloud browser sessions through Browserbase and Stagehand. Six tools handle sessions, navigation, page actions, observation, and extraction, with hosted and self-hosted connection options.

Firecrawl MCP Server

Search & Web Data

Firecrawl MCP connects AI agents to web search, scraping, crawling, and live browser interaction. It offers hosted access or a local server for collecting structured web context and running research tasks.

Tavily MCP Server

Search & Web Data

Tavily MCP Server connects AI clients to web search, page extraction, site mapping, and crawling. Run it locally with an API key or connect to the hosted service using API-key or OAuth authentication.

AgentQL MCP Server

Search & Web Data

AgentQL MCP Server extracts structured JSON from a web page using a natural-language description of the desired fields. It provides one focused extraction tool for MCP assistants.

Exa MCP Server

Search & Web Data

Exa MCP Server gives AI assistants web search and readable page retrieval, with optional advanced search and agent research tools. It supports hosted connections and a local npm package for research and coding context.

Perplexity API Platform MCP Server

Search & Web Data

The Perplexity API Platform MCP Server gives assistants web search, conversational answers, research, and reasoning tools. It connects to Perplexity’s Search API and Sonar models through local stdio or an HTTP deployment.

ArXiv MCP Server

Search & Web Data

Search arXiv, download papers, and read their contents through an AI assistant. Local storage and research prompts support repeatable literature review and paper analysis.