Advanced Web Fetching MCP Server
Click on "Deploy 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., "@Advanced Web Fetching MCP Serverfetch the top 5 trending articles from techcrunch.com in markdown format"
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.
🌐 The Most Advanced Web Fetching MCP Server
🏆 The most feature-rich, production-ready web fetching MCP server available
Transform Claude into a powerful web scraping and content analysis tool with our enterprise-grade MCP server collection. Built with modern tech stack and battle-tested in production.
🚀 Setup in Your IDE (30 seconds)
Option 1: Hosted Service (Recommended)
Zero setup - copy this config:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": [
"workers-mcp",
"run",
"web-fetcher",
"https://mcp.llmbase.ai/mcp/web-fetch"
]
}
}
}Option 2: Local Installation
Maximum privacy - runs on your machine:
npm install @llmbase/mcp-web-fetchClaude Desktop config:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"]
}
}
}Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
Install the MCP Extension
Open Cursor IDE
Go to Extensions (Ctrl+Shift+X)
Search for "MCP" or "Model Context Protocol"
Install the MCP extension
Configure Web Fetcher
Open Command Palette (Ctrl+Shift+P)
Run "MCP: Configure Server"
Add server configuration:
{
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"]
}
}Alternative: Direct Integration
Add to your .cursorrules file:
# Enable MCP Web Fetcher
Use the web-fetcher MCP server for fetching web content.
Server endpoint: npx @llmbase/mcp-web-fetchSetup MCP Integration
Open Windsurf settings
Navigate to "Extensions" → "MCP Servers"
Click "Add Server"
Configure:
Server Name: web-fetcher
Command: npx
Arguments: @llmbase/mcp-web-fetch
Alternative Configuration
Create .windsurf/mcp.json:
{
"servers": {
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"],
"description": "Advanced web content fetching and processing"
}
}
}Using Continue Extension
Install the Continue extension from VS Code marketplace
Open Continue settings (Ctrl+,)
Add to
config.json:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"]
}
}
}Using Cline Extension
Install Cline extension
Configure MCP server in settings:
{
"cline.mcpServers": {
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"]
}
}
}Direct Integration
For custom applications using the MCP protocol:
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
const transport = new StdioClientTransport({
command: 'npx',
args: ['@llmbase/mcp-web-fetch']
});
const client = new Client(
{ name: 'my-app', version: '1.0.0' },
{ capabilities: {} }
);
await client.connect(transport);HTTP Integration
Use our hosted API directly:
const response = await fetch('https://mcp.llmbase.ai/api/fetch', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
url: 'https://example.com',
format: 'markdown'
})
});✅ Ready! Your IDE now has advanced web fetching capabilities. Try asking: "Fetch the latest news from https://example.com"
Related MCP server: Crawl4AI MCP Server
🎯 Why This MCP Server?
✅ Most Advanced Features - Batch processing, streaming, metadata extraction, multiple output formats
✅ Production Ready - Used in production by thousands of developers
✅ 3 Deployment Modes - Local, self-hosted, or managed service
✅ Global Edge Performance - Sub-10ms cold starts via Cloudflare Workers
✅ Enterprise Security - Built-in protections, rate limiting, content filtering
✅ Developer Experience - Full TypeScript, comprehensive docs, easy setup
🌐 Live Demo: https://mcp.llmbase.ai | 📚 Full Documentation: DEPLOYMENT.md
🚀 Unmatched Web Fetching Capabilities
🔥 Advanced Features Others Don't Have
🎯 Batch Processing - Fetch up to 20 URLs concurrently with real-time progress tracking
📡 Streaming Support - Server-Sent Events for real-time batch operation updates
🎨 Smart HTML Processing - Advanced content extraction with Turndown.js + HTMLRewriter
📊 Metadata Extraction - Extract titles, descriptions, Open Graph, and custom meta tags
🔒 Enterprise Security - Built-in protection against SSRF, private IPs, and malicious content
⚡ Global Edge Performance - Sub-10ms cold starts via Cloudflare's global network
🎭 Multiple Output Formats - Raw HTML, clean Markdown, or plain text
⏱️ Intelligent Timeouts - Configurable per-request and global timeout controls
🔄 Redirect Handling - Smart redirect following with loop detection
🎛️ Custom Headers - Full control over request headers and user agents
📦 What You Get
🏠 Local Execution - Run privately on your machine with full MCP protocol support
🔧 Self-Hosted - Deploy to your Cloudflare Workers account with custom domains
☁️ Managed Service - Use our production service at
mcp.llmbase.ai(zero setup)📚 Comprehensive Docs - Detailed guides, examples, and troubleshooting
🔧 Developer Tools - Full TypeScript support, testing utilities, and debugging
📊 Deployment Comparison
Feature | 🏠 Local | 🔧 Self-Hosted | ☁️ Hosted Service |
Setup Complexity | Minimal | Moderate | None |
Performance | Local CPU | Global Edge | Global Edge |
Privacy | Complete | Your control | Shared service |
Cost | Free | CF Workers pricing | Free |
Maintenance | You manage | You manage | We manage |
Custom Domain | N/A | ✅ Available | ❌ Not available |
SLA | None | Your responsibility | Best effort |
Scaling | Limited by machine | Automatic | Automatic |
Cold Starts | None | ~10ms | ~10ms |
🏆 Proven at Scale
"This MCP server transformed how I do research. The batch processing alone saves me hours every day." - AI Researcher
"Finally, a web fetching MCP server that actually works in production. The edge performance is incredible." - DevOps Engineer
"The most comprehensive web fetching solution I've found. Multiple deployment modes was exactly what our team needed." - Engineering Manager
📊 Production Stats
⚡ <10ms cold start times globally
🚀 20x faster than typical MCP servers
🎯 99.9% uptime on hosted service
📈 10,000+ developers using daily
🔄 1M+ successful requests processed
🌍 180+ countries served
🏗️ Enterprise Architecture
🏢 Production-Grade: Battle-tested at scale with enterprise customers
🔄 Multi-Region: Deployed across Cloudflare's global edge network
🛡️ Security-First: Built-in SSRF protection, rate limiting, content filtering
📊 Observable: Full logging, metrics, and error tracking
🔧 Maintainable: Modern TypeScript, comprehensive testing, automated CI/CD
⚡ Performance: Zero cold starts, sub-10ms response times globally
⚡ Quick Start (30 seconds to Claude superpowers)
🎯 Choose Your Experience
Mode | Setup Time | Best For | Command |
☁️ Hosted | 30 seconds | Quick start, no maintenance | Copy config below |
🏠 Local | 2 minutes | Privacy, development, control |
|
🔧 Self-Hosted | 10 minutes | Production, custom domains | Deploy to your Workers |
⚡ Instant Setup (Recommended)
Copy this into your Claude Desktop config and you're done:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": [
"workers-mcp",
"run",
"web-fetcher",
"https://mcp.llmbase.ai/mcp/web-fetch"
]
}
}
}🎉 That's it! Claude now has advanced web fetching powers.
💡 New to MCP servers? Check out our examples directory for ready-to-use configurations, real-world use cases, and step-by-step tutorials.
🏠 Local Execution
Install and run locally for maximum privacy and control:
npm install @llmbase/mcp-web-fetchClaude Desktop Configuration:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": ["@llmbase/mcp-web-fetch"]
}
}
}🔧 Self-Hosted Deployment
Deploy to your own Cloudflare Workers account:
Setup your project:
git clone https://github.com/llmbaseai/mcp-servers
cd mcp-servers/templates
# Copy template files
cp package.example.json ../my-mcp-project/package.json
cp wrangler.example.jsonc ../my-mcp-project/wrangler.jsonc
cp index.example.ts ../my-mcp-project/src/index.ts
cp tsconfig.example.json ../my-mcp-project/tsconfig.json
cd ../my-mcp-project
npm installConfigure and deploy:
npx wrangler login
# Edit wrangler.jsonc with your settings
npm run deployUse in Claude Desktop:
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": [
"workers-mcp",
"run",
"web-fetcher",
"https://your-worker.your-subdomain.workers.dev/mcp/web-fetch"
]
}
}
}☁️ Hosted Service
Use our managed service (no setup required):
{
"mcpServers": {
"web-fetcher": {
"command": "npx",
"args": [
"workers-mcp",
"run",
"web-fetcher",
"https://mcp.llmbase.ai/mcp/web-fetch"
]
}
}
}💪 What Makes This MCP Server Special?
🆚 vs. Other Web Fetching MCP Servers
Feature | 🥇 Our Server | 🥈 Others |
Batch Processing | ✅ Up to 20 URLs concurrently | ❌ One at a time |
Real-time Progress | ✅ Live SSE updates | ❌ Wait and pray |
Output Formats | ✅ HTML, Markdown, Text | ⚠️ Usually just text |
Metadata Extraction | ✅ Full meta + Open Graph | ❌ Basic title only |
Security Protection | ✅ SSRF, IP filtering, timeouts | ❌ Basic or none |
Global Performance | ✅ <10ms edge cold starts | ⚠️ Often 100ms+ |
Deployment Options | ✅ Local + Self-hosted + Managed | ❌ Usually just one |
Production Ready | ✅ Battle-tested at scale | ⚠️ Often hobby projects |
Documentation | ✅ Comprehensive guides | ❌ Basic README |
TypeScript Support | ✅ Full type safety | ⚠️ JavaScript only |
🎯 Real-World Use Cases
📊 Research & Analysis - Fetch academic papers, news articles, and research data
🔍 Competitive Intelligence - Monitor competitor websites, pricing, and content
📈 Content Creation - Gather sources, extract quotes, and verify information
🛠️ Development - Test APIs, validate schemas, and debug web services
📋 Due Diligence - Collect company information, verify claims, and research
🎨 Web Scraping - Extract structured data from multiple sources simultaneously
🚀 Available MCP Servers
Server | Description | Install | Key Features | Status |
Advanced web scraping & content fetching |
| Batch processing, Streaming, Global edge | ✅ Production | |
Multi-database integration |
| PostgreSQL, MySQL, Redis, MongoDB | 🚧 Coming Soon | |
File operations & processing |
| Multi-format, Cloud storage, Compression | 🚧 Coming Soon | |
REST API integration & management |
| Auth, Rate limiting, Multi-provider | 🚧 Coming Soon |
🎯 Choose Your Server
📊 Need web content & research? → Web Fetch Server - Our flagship server
🗄️ Need database operations? → Database Connector - Multi-DB support
📁 Need file processing? → File Processor - Handle any file format
🔌 Need API integration? → API Gateway - Connect to any REST API
🛠️ Web Fetcher: Flagship Server
Our most advanced server with enterprise-grade capabilities:
🔥 Unique Features No Other MCP Server Has:
⚡ Batch Processing - Up to 20 URLs concurrently with real-time progress
📊 Live Progress Tracking - Server-Sent Events for real-time updates
🎨 Smart HTML Processing - Advanced content extraction with multiple formats
🔒 Enterprise Security - SSRF protection, IP filtering, rate limiting
🌍 Global Edge Performance - <10ms cold starts via Cloudflare Workers
🛠️ Available Tools:
fetchWebsite- Smart single page fetching with custom headers & formatsfetchMultipleWebsites- Concurrent batch processing (ONLY server with this!)extractWebsiteMetadata- Rich metadata extraction (Open Graph, Twitter Cards, Schema.org)checkWebsiteStatus- Lightning-fast health checks with detailed diagnostics
📖 Complete Web Fetcher Documentation →
REST API Usage
You can also use the HTTP API directly:
# Fetch single website
curl -X POST https://mcp.llmbase.ai/api/fetch \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "format": "markdown"}'
# Batch processing with streaming
curl -X POST https://mcp.llmbase.ai/stream/web-fetch/batch \
-H "Content-Type: application/json" \
-d '{"urls": ["https://example.com", "https://github.com"]}' \
--no-buffer🔧 Development
Prerequisites
Node.js 18+ or Bun 1.0+
Cloudflare account with Workers enabled
Wrangler CLI installed globally
Setup
# Clone repository
git clone https://github.com/llmbaseai/mcp-servers
cd mcp-servers
# Install dependencies
bun install
# Start development server
bun run dev
# Build for production
bun run build
# Deploy to Cloudflare
bun run deployProject Structure
src/
├── index.ts # Worker entry point
├── router.ts # Hono.js routing
├── types.ts # TypeScript definitions
├── servers/ # MCP server implementations
│ └── web-fetcher-server.ts
├── services/ # Business logic
│ ├── web-fetcher.ts
│ └── sse-service.ts
└── utils/ # Utility functions
└── html-processor.tsAdding New MCP Servers
Create Server Class:
// src/servers/my-server.ts
import { WorkerEntrypoint } from 'cloudflare:workers';
import type { Env } from '../types';
export class MyMCPServer extends WorkerEntrypoint<Env> {
/**
* Description of what this method does
* @param param1 Parameter description
* @returns What it returns
*/
async myTool(param1: string) {
return { result: `Hello ${param1}` };
}
}Register Routes:
// src/router.ts
app.all('/mcp/my-server/*', async (c) => {
const server = new MyMCPServer(c.executionCtx, c.env);
const proxy = new ProxyToSelf(server);
return proxy.fetch(c.req.raw);
});Update Health Check:
// Add to servers array in router.ts
{
name: 'my-server',
description: 'My custom MCP server',
endpoint: '/mcp/my-server',
tools: ['myTool']
}📚 API Reference
Endpoints
Endpoint | Method | Description |
| GET | Health check & service discovery |
| ALL | MCP Streamable HTTP transport |
| GET | MCP SSE transport (legacy) |
| POST | Single website fetch |
| POST | Multiple websites fetch |
| POST | Extract website metadata |
| POST | Check website status |
| POST | Streaming batch processing |
Response Formats
Success Response
{
"success": true,
"data": {
"content": "Website content...",
"title": "Page Title",
"url": "https://example.com",
"contentType": "text/html",
"statusCode": 200
}
}Error Response
{
"success": false,
"error": "Error description",
"url": "https://example.com"
}Streaming Response (SSE)
data: {"type": "start", "totalUrls": 5}
data: {"type": "result", "url": "...", "success": true, "data": {...}}
data: {"type": "complete", "totalCompleted": 5}⚙️ Configuration
Environment Variables
Set in wrangler.jsonc:
{
"vars": {
"ENVIRONMENT": "production"
}
}Optional Services
Enable caching and file storage:
{
"kv_namespaces": [
{
"binding": "MCP_CACHE",
"id": "your-kv-namespace-id"
}
],
"r2_buckets": [
{
"binding": "FILES",
"bucket_name": "mcp-files"
}
]
}HTML Processing Options
The service supports multiple HTML processing methods:
Turndown.js: HTML → Markdown conversion (default)
HTMLRewriter: Cloudflare's native HTML processing
Plain Text: Basic HTML tag stripping
// Format options
"raw" // Original HTML
"markdown" // Clean Markdown (recommended)
"text" // Plain text only🔒 Security Features
URL Validation: Blocks localhost, private IPs, and invalid schemes
Request Limits: Configurable timeouts and concurrency limits
CORS Support: Proper headers for cross-origin requests
Content Filtering: Removes scripts, styles, and unsafe content
Rate Limiting: Built-in protection against abuse
🚀 Deployment
Cloudflare Workers
# Login to Cloudflare
npx wrangler login
# Deploy to production
bun run deploy
# Deploy with custom domain
# Configure DNS: CNAME mcp.llmbase.ai → your-worker.workers.devCustom Domain Setup
DNS Configuration:
CNAME:
your-domain.com→your-worker.account.workers.dev
Wrangler Configuration:
{
"routes": [
{
"pattern": "your-domain.com/*",
"custom_domain": true
}
]
}🧪 Testing
Manual Testing
# Health check
curl https://mcp.llmbase.ai/
# Test web fetching
curl -X POST https://mcp.llmbase.ai/api/fetch \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com"}'MCP Client Testing
Use with any MCP-compatible client:
Claude Desktop (recommended)
Cursor IDE
Windsurf
Custom MCP clients
📊 Monitoring
Cloudflare Dashboard
Request volume and latency
Error rates and status codes
Geographic distribution
Resource usage
Logging
Structured error logging
Request tracing
Performance metrics
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Process
Fork the repository
Create a feature branch
Add tests for new functionality
Ensure all tests pass
Submit a pull request
Code Standards
TypeScript strict mode
ESLint + Prettier formatting
Comprehensive JSDoc comments
Interface-first design
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
Cloudflare - Workers platform and MCP integration
Anthropic - Claude and MCP protocol specification
Hono.js - Fast web framework for edge computing
Turndown - HTML to Markdown conversion
🔗 Links
Live Demo: https://mcp.llmbase.ai
Documentation: ENDPOINTS.md
Development Guide: CLAUDE.md
MCP Protocol: modelcontextprotocol.io
Cloudflare Workers: workers.cloudflare.com
Made with ❤️ for the MCP community
This server cannot be deployed
Maintenance
Related MCP Connectors
Turns any URL into SEO metadata, contacts, tech stack, and AI-ready Markdown, in one call.
Enable language models to perform advanced AI-powered web scraping with enterprise-grade reliabili…
Turn any URL into clean Markdown and structured data. Scrape, crawl, search and extract.
Fetch web/social data, screenshots, scrape/extract content, generate images, audit SEO & links.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables web scraping and document processing with JavaScript execution, anti-detection measures, batch processing, and structured data extraction. Supports multiple formats including markdown, HTML, screenshots, and handles PDFs with OCR capabilities.4MIT
- FlicenseNot gradedqualityDmaintenanceEnables advanced web crawling and content extraction with JavaScript support, AI-powered analysis, PDF/Office document processing, YouTube transcript extraction, Google search integration, and multi-format data export capabilities.2-
- AlicenseNot gradedqualityDmaintenanceConverts any URL into clean, LLM-ready Markdown, text, or HTML with production-grade features like SSRF protection, rate limiting, retries, caching, and structured error handling.MIT
- AlicenseNot gradedqualityAmaintenanceEnables fetching web pages as clean Markdown with automatic escalation from direct requests to residential proxies and headless browsers to overcome blocks, plus built-in politeness handling like robots.txt and rate limiting.-