DataForSEO MCP Server
A stdio-based Model Context Protocol (MCP) server for DataForSEO API.
Installation
You can run directly with npx:
npx @skobyn/mcp-dataforseo --config '{"username":"your_username","password":"your_password"}'
Or install globally:
npm install -g @skobyn/mcp-dataforseo
mcp-dataforseo --config '{"username":"your_username","password":"your_password"}'
Usage
Send JSON requests to stdin and receive JSON responses from stdout:
echo '{"type":"dataforseo_serp","keyword":"artificial intelligence"}' | npx @skobyn/mcp-dataforseo --config '{"username":"your_username","password":"your_password"}'
Supported Request Types
SERP API
{
"type": "dataforseo_serp",
"keyword": "artificial intelligence",
"location_code": 2840,
"language_code": "en",
"device": "desktop",
"os": "windows"
}
Keywords Data API
{
"type": "dataforseo_keywords_data",
"keywords": ["seo", "search engine optimization"],
"location_code": 2840,
"language_code": "en"
}
Backlinks API
{
"type": "dataforseo_backlinks",
"target": "example.com",
"limit": 100
}
On-Page API
{
"type": "dataforseo_onpage",
"url": "https://example.com",
"check_spell": true,
"enable_javascript": true
}
Domain Analytics API
{
"type": "dataforseo_domain_analytics",
"domain": "example.com"
}
App Data API
{
"type": "dataforseo_app_data",
"app_id": "com.example.app"
}
Merchant API
{
"type": "dataforseo_merchant",
"keyword": "bluetooth speakers",
"location_code": 2840,
"language_code": "en"
}
Business Data API
{
"type": "dataforseo_business_data",
"keyword": "pizza delivery",
"location_code": 2840,
"language_code": "en"
}
Integration Example
Here’s how to use this MCP server in your Node.js code:
const { spawn } = require('child_process');
// Start the MCP server
const server = spawn('npx', ['@skobyn/mcp-dataforseo', '--config', '{"username":"your_username","password":"your_password"}']);
// Define the request
const request = {
type: 'dataforseo_serp',
keyword: 'artificial intelligence'
};
// Send the request
server.stdin.write(JSON.stringify(request) + 'n');
server.stdin.end();
// Process the response
server.stdout.on('data', (data) => {
const response = JSON.parse(data.toString());
console.log(response);
});
// Handle errors
server.stderr.on('data', (data) => {
console.error(`Error: ${data}`);
});
Environment Variables
You can also use environment variables instead of the config:
export DATAFORSEO_USERNAME=your_username
export DATAFORSEO_PASSWORD=your_password
npx @skobyn/mcp-dataforseo
Publishing
To publish this package to npm:
Login to npm if not already logged in:
npm login
Publish the package:
npm publish --access public
To update the package later:
npm version patch npm publish
DataForSEO API Server
Project Details
- Skobyn/mcp-dataforseo
- @skobyn/mcp-dataforseo
- Last Updated: 3/20/2025
Recomended MCP Servers
Official Firecrawl MCP Server - Adds powerful web scraping to Cursor, Claude and any other LLM clients.
mcp server
MCP Server for IDA Pro
Lightweight MCP server to give your Cursor Agent access to the Cloudflare API.
Sherlock Domains MCP Server for buying & managing domains
Using ffmpeg command line to achieve an mcp server, can be very convenient, through the dialogue to achieve...
Playwrite wrapper for MCP
MCP server for semantic search with Qdrant vector database
A task management Model Context Protocol (MCP) server that helps AI assistants break down user requests into manageable...
PubMed MCP Server for accessing research papers