XFetch Mcp

XFetch Mcp

Fetch on steroids. Allow to retrieve content from any web pages, including those protected by Cloudflare and other security systems.

xfetchai

Developer Tools
Visit Server

README

XFetch MCP Server

PyPI version Python Versions License: MIT

Enhanced Model Context Protocol server for web content fetching (fetch on steroids). This server enables LLMs to retrieve and process content from any web pages, including those protected by Cloudflare and other security systems that regular fetch can't handle.

Key Features

  • 🚀 Bypass Protection Systems: Access content from websites protected by Cloudflare and other security systems
  • 🌐 JavaScript Rendering: Fetch content from dynamic websites that require JavaScript execution
  • 🎯 CSS Selectors: Extract specific content from web pages using CSS selectors
  • ⏱️ Dynamic Content Loading: Wait for dynamic content to load before fetching
  • 📝 Markdown Conversion: Automatically converts HTML to markdown for easier LLM consumption
  • 🔄 Chunked Reading: Read long pages in chunks using start_index parameter

Available Tools

  • xfetch - Enhanced web content fetching tool with advanced capabilities
    • url (string, required): URL to fetch
    • max_length (integer, optional): Maximum number of characters to return (default: 5000)
    • start_index (integer, optional): Start content from this character index (default: 0)
    • raw (boolean, optional): Get raw content without markdown conversion (default: false)
    • render (boolean, optional): Enable JavaScript rendering for dynamic content (default: false)
    • selector (string, optional): CSS selector to extract specific content
    • timeout (integer, optional): Wait time in seconds for dynamic content loading (1-10 seconds)

Prompts

  • xfetch
    • Fetch a URL and extract its contents as markdown
    • Arguments:
      • url (string, required): URL to fetch
      • render (boolean, optional): Enable JavaScript rendering
      • selector (string, optional): CSS selector for content extraction
      • timeout (integer, optional): Dynamic content loading timeout

Installation

Using pip

pip install mcp-server-xfetch

Using uv (recommended)

When using uv, no specific installation is needed:

uvx mcp-server-xfetch

Configuration

Configure for Claude.app

Add to your Claude settings:

<details> <summary>Using uvx (recommended)</summary>

"mcpServers": {
  "xfetch": {
    "command": "uvx",
    "args": ["mcp-server-xfetch"]
  }
}

</details>

<details> <summary>Using pip installation</summary>

"mcpServers": {
  "xfetch": {
    "command": "python",
    "args": ["-m", "mcp_server_xfetch"]
  }
}

</details>

API Token

XFetch service offers two usage tiers:

Free Tier

The package includes a default API token that allows limited free usage. This is great for:

  • Testing and evaluation
  • Personal projects
  • Small-scale non-commercial use

However, the free tier has rate limits and may have occasional stability issues.

Commercial/Production Use

For stable and reliable service, especially for:

  • Commercial projects
  • Production environments
  • High-volume requests
  • Guaranteed uptime and support

Visit xfetch.ai to:

  1. Register for a commercial account
  2. Get your dedicated API token
  3. Access premium features and support

Once you have your token, you can set it up in one of these ways:

# Option 1: Environment variable (recommended)
export XFETCH_API_TOKEN=your_token_here
# Option 2: Command line argument
python -m mcp_server_xfetch --api-token=your_token_here

Or in your Claude configuration:

"mcpServers": {
  "xfetch": {
    "command": "python",
    "args": ["-m", "mcp_server_xfetch", "--api-token=your_token_here"]
  }
}

Examples

Basic Usage

# Simple fetch with markdown conversion
{
    "url": "https://example.com"
}

JavaScript Rendering

# Fetch from a dynamic website
{
    "url": "https://dynamic-site.com",
    "render": true,
    "timeout": 5  # Wait up to 5 seconds for content to load
}

Content Extraction

# Extract specific content using CSS selector
{
    "url": "https://news-site.com",
    "selector": "article.main-content",
    "render": true
}

Reading Long Content

# First request
{
    "url": "https://long-article.com",
    "max_length": 5000
}

# Continue reading from where it left off
{
    "url": "https://long-article.com",
    "start_index": 5000,
    "max_length": 5000
}

Debugging

You can use the MCP inspector to debug the server:

npx @modelcontextprotocol/inspector uvx mcp-server-xfetch

Contributing

We welcome contributions! Whether you want to add new features, fix bugs, or improve documentation, your help is appreciated.

  1. Fork the repository
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
MCP Package Docs Server

MCP Package Docs Server

Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.

Featured
Local
TypeScript
Claude Code MCP

Claude Code MCP

An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.

Featured
Local
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.

Featured
Local
JavaScript
Linear MCP Server

Linear MCP Server

Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.

Featured
JavaScript
mermaid-mcp-server

mermaid-mcp-server

A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.

Featured
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP server to provide Jira Tickets information to AI coding agents like Cursor

Featured
TypeScript
Linear MCP Server

Linear MCP Server

A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Featured
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.

Featured
Python