Skip to main content
Glama

SerpMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

Un servidor del Protocolo de Contexto de Modelo (MCP) para búsquedas en Google utilizando la API SERP a través de la API de AceDataCloud.

Realiza búsquedas en Google y obtén resultados estructurados directamente desde Claude, VS Code o cualquier cliente compatible con MCP.

Características

  • Búsqueda Web - Búsqueda web regular en Google con resultados estructurados

  • Búsqueda de Imágenes - Búsqueda de imágenes con URLs y miniaturas

  • Búsqueda de Noticias - Obtén los últimos artículos de noticias sobre cualquier tema

  • Búsqueda de Vídeos - Encuentra vídeos de YouTube y otras fuentes

  • Búsqueda de Lugares - Busca negocios y lugares locales

  • Búsqueda de Mapas - Encuentra ubicaciones e información geográfica

  • Gráfico de Conocimiento - Obtén información estructurada sobre entidades

  • Localización - Soporte para múltiples países e idiomas

  • Filtrado por Tiempo - Filtra los resultados por rango de tiempo

Referencia de Herramientas

Herramienta

Descripción

serp_google_search

Busca en Google y obtén resultados estructurados usando la API SERP.

serp_google_images

Busca en Google Imágenes y obtén resultados de imágenes.

serp_google_news

Busca en Google Noticias y obtén resultados de artículos de noticias.

serp_google_videos

Busca en Google Vídeos y obtén resultados de vídeos.

serp_google_places

Busca en Google lugares y negocios locales.

serp_google_maps

Busca en Google Maps ubicaciones.

serp_list_search_types

Lista todos los tipos de búsqueda de Google disponibles.

serp_list_countries

Lista los códigos de país más utilizados para la búsqueda en Google.

serp_list_languages

Lista los códigos de idioma más utilizados para la búsqueda en Google.

serp_list_time_ranges

Lista los filtros de rango de tiempo disponibles para la búsqueda en Google.

serp_get_usage_guide

Obtén una guía completa para usar las herramientas de Google SERP.

Inicio Rápido

1. Obtén tu Token de API

  1. Regístrate en la Plataforma AceDataCloud

  2. Ve a la página de documentación de la API

  3. Haz clic en "Acquire" para obtener tu token de API

  4. Copia el token para usarlo a continuación

2. Usa el Servidor Alojado (Recomendado)

AceDataCloud aloja un servidor MCP gestionado — no se requiere instalación local.

Endpoint: https://serp.mcp.acedata.cloud/mcp

Todas las solicitudes requieren un token Bearer. Usa el token de API del Paso 1.

Claude.ai

Conéctate directamente en Claude.ai con OAuth — no se necesita token de API:

  1. Ve a Claude.ai Configuración → Integraciones → Añadir más

  2. Introduce la URL del servidor: https://serp.mcp.acedata.cloud/mcp

  3. Completa el flujo de inicio de sesión OAuth

  4. Empieza a usar las herramientas en tu conversación

Claude Desktop

Añádelo a tu configuración (~/Library/Application Support/Claude/claude_desktop_config.json en macOS):

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cursor / Windsurf

Añádelo a tu configuración MCP (.cursor/mcp.json o .windsurf/mcp.json):

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code (Copilot)

Añádelo a tu configuración MCP de VS Code (.vscode/mcp.json):

{
  "servers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

O instala la extensión Ace Data Cloud MCP para VS Code, que agrupa los 15 servidores MCP con una configuración de un solo clic.

IDEs de JetBrains

  1. Ve a Configuración → Herramientas → Asistente de IA → Protocolo de Contexto de Modelo (MCP)

  2. Haz clic en AñadirHTTP

  3. Pega:

{
  "mcpServers": {
    "serp": {
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Claude Code

Claude Code soporta servidores MCP de forma nativa:

claude mcp add serp --transport http https://serp.mcp.acedata.cloud/mcp \
  -h "Authorization: Bearer YOUR_API_TOKEN"

O añádelo al .mcp.json de tu proyecto:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cline

Añádelo a la configuración MCP de Cline (.cline/mcp_settings.json):

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Amazon Q Developer

Añádelo a tu configuración MCP:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Roo Code

Añádelo a la configuración MCP de Roo Code:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Continue.dev

Añádelo a .continue/config.yaml:

mcpServers:
  - name: serp
    type: streamable-http
    url: https://serp.mcp.acedata.cloud/mcp
    headers:
      Authorization: "Bearer YOUR_API_TOKEN"

Zed

Añádelo a la configuración de Zed (~/.config/zed/settings.json):

{
  "language_models": {
    "mcp_servers": {
      "serp": {
        "url": "https://serp.mcp.acedata.cloud/mcp",
        "headers": {
          "Authorization": "Bearer YOUR_API_TOKEN"
        }
      }
    }
  }
}

Prueba cURL

# Health check (no auth required)
curl https://serp.mcp.acedata.cloud/health

# MCP initialize
curl -X POST https://serp.mcp.acedata.cloud/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

3. O Ejecuta Localmente (Alternativa)

Si prefieres ejecutar el servidor en tu propia máquina:

# Install from PyPI
pip install mcp-serp
# or
uvx mcp-serp

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-serp

# Run (HTTP mode for remote access)
mcp-serp --transport http --port 8000

Claude Desktop (Local)

{
  "mcpServers": {
    "serp": {
      "command": "uvx",
      "args": ["mcp-serp"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (Autoalojamiento)

docker pull ghcr.io/acedatacloud/mcp-serp:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-serp:latest

Los clientes se conectan con su propio token Bearer — el servidor extrae el token del encabezado Authorization de cada solicitud.

Herramientas Disponibles

Herramientas de Búsqueda

Herramienta

Descripción

serp_google_search

Búsqueda flexible en Google con todas las opciones

serp_google_images

Búsqueda de imágenes

serp_google_news

Búsqueda de artículos de noticias

serp_google_videos

Búsqueda de vídeos

serp_google_places

Búsqueda de lugares/negocios locales

serp_google_maps

Búsqueda de ubicaciones en mapas

Herramientas de Información

Herramienta

Descripción

serp_list_search_types

Lista los tipos de búsqueda disponibles

serp_list_countries

Lista los códigos de país para localización

serp_list_languages

Lista los códigos de idioma para localización

serp_list_time_ranges

Lista las opciones de filtro de rango de tiempo

serp_get_usage_guide

Obtén una guía de uso completa

Ejemplos de Uso

Búsqueda Web Básica

User: Search for information about artificial intelligence

Claude: I'll search for information about AI.
[Calls serp_google_search with query="artificial intelligence"]

Búsqueda de Noticias con Filtro de Tiempo

User: What's the latest news about technology?

Claude: I'll search for recent tech news.
[Calls serp_google_news with query="technology", time_range="qdr:d"]

Búsqueda Localizada

User: Find popular restaurants in Tokyo

Claude: I'll search for restaurants in Tokyo.
[Calls serp_google_places with query="popular restaurants Tokyo", country="jp"]

Búsqueda de Imágenes

User: Find images of the Northern Lights

Claude: I'll search for aurora borealis images.
[Calls serp_google_images with query="Northern Lights aurora borealis"]

Parámetros de Búsqueda

Tipos de Búsqueda

Tipo

Descripción

search

Búsqueda web regular (predeterminado)

images

Búsqueda de imágenes

news

Artículos de noticias

maps

Resultados de mapas

places

Negocios locales

videos

Resultados de vídeos

Filtros de Rango de Tiempo

Código

Rango de Tiempo

qdr:h

Última hora

qdr:d

Último día

qdr:w

Última semana

qdr:m

Último mes

Códigos de País Comunes

Código

País

us

Estados Unidos

uk

Reino Unido

cn

China

jp

Japón

de

Alemania

fr

Francia

Códigos de Idioma Comunes

Código

Idioma

en

Inglés

zh-cn

Chino (Simplificado)

ja

Japonés

es

Español

fr

Francés

de

Alemán

Estructura de Respuesta

Resultados de Búsqueda Regular

  • knowledge_graph: Información de entidad (empresa, persona, etc.)

  • answer_box: Respuestas directas

  • organic: Resultados de búsqueda regulares con título, enlace, fragmento

  • people_also_ask: Preguntas relacionadas

  • related_searches: Consultas relacionadas

Resultados de Búsqueda de Imágenes

  • images: Resultados de imágenes con URLs y miniaturas

Resultados de Búsqueda de Noticias

  • news: Artículos de noticias con fuente y fecha

Configuración

Variables de Entorno

Variable

Descripción

Predeterminado

ACEDATACLOUD_API_TOKEN

Token de API de AceDataCloud

Requerido

ACEDATACLOUD_API_BASE_URL

URL base de la API

https://api.acedata.cloud

ACEDATACLOUD_OAUTH_CLIENT_ID

ID de cliente OAuth (modo alojado)

ACEDATACLOUD_PLATFORM_BASE_URL

URL base de la plataforma

https://platform.acedata.cloud

SERP_REQUEST_TIMEOUT

Tiempo de espera de solicitud en segundos

30

LOG_LEVEL

Nivel de registro

INFO

Opciones de Línea de Comandos

mcp-serp --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

Desarrollo

Configurar Entorno de Desarrollo

# Clone repository
git clone https://github.com/AceDataCloud/SerpMCP.git
cd SerpMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

Ejecutar Pruebas

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

Calidad del Código

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

Construir y Publicar

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

Estructura del Proyecto

SerpMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for SERP API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   └── server.py          # MCP server initialization
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── search_tools.py    # Search tools
│   └── info_tools.py      # Information tools
├── prompts/                # MCP prompt templates
│   └── __init__.py
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   └── test_config.py
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

Referencia de la API

Este servidor envuelve la API SERP de Google de AceDataCloud:

Contribución

¡Las contribuciones son bienvenidas! Por favor:

  1. Haz un fork del repositorio

  2. Crea una rama de características (git checkout -b feature/amazing)

  3. Confirma tus cambios (git commit -m 'Add amazing feature')

  4. Empuja a la rama (git push origin feature/amazing)

  5. Abre una Solicitud de Extracción (Pull Request)

Licencia

Licencia MIT - consulta LICENSE para más detalles.

Enlaces


Hecho con amor por AceDataCloud

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
45Releases (12mo)

Latest Blog Posts

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/AceDataCloud/SerpMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server