DataForSEO MCP Server
Allows analysis of historical keyword trends using Google Trends data.
Allows discovery of keywords for paid campaigns and analysis of site-related keywords using Google Ads data.
Click on "Install 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., "@DataForSEO MCP Serverfind keywords related to 'yoga mats' in Germany"
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.
DataForSEO MCP Server
Servidor MCP para keyword research y análisis SERP geolocalizado.
Herramientas profesionales de investigación SEO/SEM que te permiten:
🔍 Descubrir keywords con volumen de búsqueda y métricas de dificultad
🌍 Análisis geolocalizado por país para mercados específicos
🏆 Identificar competidores dominantes en nichos temáticos
📊 Analizar SERPs y rankings de URLs con filtros avanzados
📈 Obtener tendencias históricas de keywords (Google Trends)
🎯 Research completo de dominios y páginas específicas
Powered by DataForSEO API.
Requisitos
Python 3.11+
pippackage managerCredenciales de DataForSEO API
Related MCP server: DataForSEO MCP Server
Instalación
Navegar al directorio:
cd /Users/facundozupel/python_codigos/MCPs/mcp-dfsCrear archivo
.envcon tus credenciales:cp .env.example .env # Editar .env con tus credenciales de DataForSEOInstalar dependencias:
pip install -r requirements.txt
Ejecución del Servidor
El servidor usa HTTP transport con Server-Sent Events (SSE).
Iniciar el servidor:
python mcp_dfs.pyEl servidor se iniciará en http://0.0.0.0:8000 por defecto.
Puedes personalizar el host y puerto en el archivo .env:
MCP_HOST=0.0.0.0
MCP_PORT=8000Verificar que el servidor está corriendo:
curl -I http://localhost:8000/mcpDeberías ver una respuesta HTTP con status 405 (Method Not Allowed), lo cual es correcto.
Configuración en Claude Desktop
Agregar al archivo de configuración de Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"dataforseo": {
"url": "http://localhost:8000/mcp"
}
}
}Nota: El servidor debe estar corriendo antes de iniciar Claude Desktop.
Casos de Uso
SEO
Investigación de keywords para contenido y optimización on-page
Análisis de competidores orgánicos en nichos específicos
Identificación de oportunidades de ranking por país/región
Auditorías de keywords posicionadas de dominios propios o competencia
Análisis de tendencias estacionales para planificación de contenido
SEM / Google Ads
Descubrimiento de keywords para campañas pagas
Análisis de volumen de búsqueda por geolocalización
Identificación de keywords con bajo nivel de competencia
Research de sitios para campañas de display/remarketing
Análisis Competitivo
Identificar qué dominios dominan espacios temáticos
Reverse engineering de estrategias de keywords de competidores
Análisis de SERPs para entender intención de búsqueda
Evaluación de autoridad temática por nicho
Herramientas Disponibles
Investigación de Keywords
KeywordSuggestions
Obtiene sugerencias de keywords basadas en una keyword semilla.
Datos: Volumen, dificultad, backlinks, domain rank
Uso: Expansión de keywords, descubrimiento
KwsRelacionadas
Encuentra keywords semánticamente relacionadas.
Datos: Keywords relacionadas con métricas
Uso: Clustering temático, contenido relacionado
Tendencias
Analiza tendencias históricas de keywords (Google Trends).
Datos: Series temporales mensuales
Uso: Estacionalidad, análisis temporal
Análisis de Competidores
TopicalAuthority
Identifica competidores dominantes en un espacio temático.
Datos: Dominios, visibilidad, posiciones
Uso: Análisis competitivo, identificación de autoridades
SerpCompetidores
Extrae competidores de SERP y sus keywords.
Datos: URLs competidoras con keywords posicionadas
Uso: Análisis SERP, reverse engineering
Análisis de Rankings
RankedKeywordsGeneral
Obtiene keywords posicionadas para URLs específicas.
Datos: Keywords, posiciones, métricas, filtros avanzados
Uso: Auditoría SEO, análisis de rendimiento
Site
Keywords relacionadas a un sitio (Google Ads).
Datos: Keywords de dominio/página
Uso: Research de sitio completo
Utilidades
Locaciones
Obtiene códigos de geolocalización para las herramientas.
Datos: Mapeo país → código
Uso: Helper para otras herramientas
Ejemplos de Uso
1. Investigación de Keywords
Usuario: "Necesito keywords relacionadas con 'zapatos deportivos' en Argentina"
Claude usa:
1. Locaciones(pais="argentina") → código 2032
2. KeywordSuggestions(keyword="zapatos deportivos", locacion_codigo=2032)
3. KwsRelacionadas(keyword="zapatos deportivos", locacion_codigo=2032)2. Análisis Competitivo
Usuario: "¿Quiénes dominan el espacio de 'marketing digital' en España?"
Claude usa:
1. Locaciones(pais="españa") → código 2724
2. TopicalAuthority(keywords=["marketing digital", "seo", "sem"], locacion_codigo=2724)3. Auditoría de Sitio
Usuario: "Analiza para qué keywords rankea ejemplo.com"
Claude usa:
1. Locaciones(pais="...") → código
2. RankedKeywordsGeneral(url="ejemplo.com", locacion_codigo=codigo, filtro_posicion=20)Límites y Consideraciones
Rate Limiting: DataForSEO tiene límites de requests/segundo según tu plan
Costos: Cada llamada consume créditos de tu cuenta DataForSEO
Límites de resultados:
KeywordSuggestions: máx 10,000 por consulta (default: 1,000)
Tendencias: máx 4 keywords por consulta (se procesan en lotes automáticamente)
Troubleshooting
Error: "Faltan las variables de entorno"
Verifica que
.envexiste y contieneDFS_USERNAMEyDFS_PASSWORDReinicia Claude Desktop después de crear/modificar
.env
Error: "No se encontraron resultados"
Verifica el
locacion_codigo(usa herramienta Locaciones)Prueba con keywords más genéricas
Revisa tu balance de créditos en DataForSEO
Error de autenticación
Verifica tus credenciales en https://app.dataforseo.com/api-access
Asegúrate de usar email y API key (no password de cuenta)
Error: "Connection refused" en Claude Desktop
Verifica que el servidor MCP esté corriendo (
python mcp_dfs.py)Verifica que el puerto 8000 esté libre:
lsof -i :8000Revisa que la URL en claude_desktop_config.json sea
http://localhost:8000/mcp
Error: "Port already in use"
Cambia el puerto en
.env:MCP_PORT=8001O detén el proceso que está usando el puerto 8000
Desarrollo
Ejecutar localmente
python mcp_dfs.pyEstructura del código
Sección 1-3: Setup, environment, FastMCP
Sección 4: KWResearch class (cliente API async)
Sección 5: 8 herramientas MCP
Sección 6: Main entrypoint (HTTP transport con uvicorn)
Transport
El servidor utiliza HTTP transport con SSE (Server-Sent Events) en lugar de stdio. Esto permite:
Mayor flexibilidad en el despliegue
Separación del proceso del servidor y el cliente
Posibilidad de múltiples clientes conectados simultáneamente
Monitoreo y debugging más fácil
Roadmap
Fase 2 (Futuro)
TopPages: Análisis de páginas top de dominios
SiteLabs: Versión Labs de análisis de sitios
TraficoEstimado: Estimación de tráfico orgánico
KwsLive: Datos live de Google Ads
Fase 3 (Futuro)
SiteBulk: Procesamiento batch de múltiples dominios
Funciones NLP: Modificadores, N-grams, Clustering OpenAI
Licencia
Uso interno - DataForSEO API requiere suscripción comercial.
Soporte
DataForSEO Docs: https://docs.dataforseo.com/
DataForSEO Support: https://dataforseo.com/contact
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/facundozupel/mcp-dfs'
If you have feedback or need assistance with the MCP directory API, please join our Discord server