
FetchSERP
STDIOHTTP-SSEOfficialMCP server for FetchSERP API providing SEO, SERP analysis, web scraping, and keyword research
MCP server for FetchSERP API providing SEO, SERP analysis, web scraping, and keyword research
A Model Context Protocol (MCP) server that exposes the FetchSERP API for SEO, SERP analysis, web scraping, and keyword research.
This MCP server provides access to all FetchSERP API endpoints:
No installation required! This MCP server runs directly from GitHub using npx.
Get your FetchSERP API token: Sign up at https://www.fetchserp.com to get your API token. New users get 250 free credits to get started!
This MCP server supports two transport modes:
npx mode (Option 1):
HTTP mode (Option 2):
Option 1: Using npx (Local/Remote GitHub) Add this server to your MCP client configuration. For example, in Claude Desktop using github registry :
{ "mcpServers": { "fetchserp": { "command": "npx", "args": [ "github:fetchSERP/fetchserp-mcp-server-node" ], "env": { "FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here" } } } }
or using npm registry
{ "mcpServers": { "fetchserp": { "command": "npx", "args": ["fetchserp-mcp-server"], "env": { "FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here" } } } }
Option 2: Claude API with MCP Server For programmatic usage with Claude's API and your deployed MCP server:
const claudeRequest = { model: "claude-sonnet-4-20250514", max_tokens: 1024, messages: [ { role: "user", content: question } ], // MCP Server Configuration mcp_servers: [ { type: "url", url: "https://mcp.fetchserp.com/sse", name: "fetchserp", authorization_token: FETCHSERP_API_TOKEN, tool_configuration: { enabled: true } } ] }; const response = await httpRequest('https://api.anthropic.com/v1/messages', { method: 'POST', headers: { 'x-api-key': CLAUDE_API_KEY, 'anthropic-version': '2023-06-01', 'anthropic-beta': 'mcp-client-2025-04-04', 'content-type': 'application/json' } }, JSON.stringify(claudeRequest));
Option 3: OpenAI API with MCP Server For programmatic usage with OpenAI's API and your deployed MCP server:
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY }); const res = await openai.responses.create({ model: "gpt-4.1", tools: [ { type: "mcp", server_label: "fetchserp", server_url: "https://mcp.fetchserp.com/sse", headers: { Authorization: `Bearer ${FETCHSERP_API_TOKEN}` } } ], input: question }); console.log(res.choices[0].message);
Option 4: Docker Use the pre-built Docker image from GitHub Container Registry for containerized deployment:
{ "mcpServers": { "fetchserp": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "FETCHSERP_API_TOKEN", "ghcr.io/fetchserp/fetchserp-mcp-server-node:latest" ], "env": { "FETCHSERP_API_TOKEN": "your_fetchserp_api_token_here" } } } }
Docker Features:
Manual Docker Usage:
# Pull the latest image docker pull ghcr.io/fetchserp/fetchserp-mcp-server-node:latest # Run with environment variable docker run -i --rm \ -e FETCHSERP_API_TOKEN="your_token_here" \ ghcr.io/fetchserp/fetchserp-mcp-server-node:latest # Or run in HTTP mode on port 8000 docker run -p 8000:8000 \ -e FETCHSERP_API_TOKEN="your_token_here" \ -e MCP_HTTP_MODE=true \ ghcr.io/fetchserp/fetchserp-mcp-server-node:latest
get_backlinks
Get backlinks for a domain
get_domain_info
Get comprehensive domain information
get_domain_emails
Extract emails from a domain
get_webpage_seo_analysis
Comprehensive SEO analysis of a webpage
get_webpage_ai_analysis
AI-powered webpage analysis
get_moz_analysis
Get Moz domain authority and metrics
get_keywords_search_volume
Get search volume for keywords
get_keywords_suggestions
Get keyword suggestions
get_long_tail_keywords
Generate long-tail keywords
get_serp_results
Get search engine results
get_serp_html
Get SERP results with HTML content
get_serp_results
get_serp_text
Get SERP results with text content
get_serp_results
get_serp_js_start
Start AI Overview SERP job (returns UUID)
get_serp_js_result
Get AI Overview SERP results
check_page_indexation
Check if domain is indexed for keyword
get_domain_ranking
Get domain ranking for keyword
scrape_webpage
Scrape webpage without JavaScript
scrape_domain
Scrape multiple pages from domain
scrape_webpage_js
Scrape webpage with custom JavaScript
scrape_webpage_js_proxy
Scrape webpage with JavaScript and proxy
get_user_info
Get user information and API credits
You need a FetchSERP API token to use this server.
Getting your API token:
Set the token as an environment variable:
export FETCHSERP_API_TOKEN="your_token_here"
The server includes comprehensive error handling:
docker build --platform=linux/amd64 -t olivier86/fetchserp-mcp-server-node:latest --push .
docker run -p 8000:8000 olivier86/fetchserp-mcp-server-node:latest
nohup ngrok http 8000 --domain guinea-dominant-jolly.ngrok-free.app > /var/log/ngrok.log 2>&1 &