Sin KYC — sin ID, sin selfie, sin documentos. Paga con criptomonedas: BTC, USDT, USDC, ETH, SOL, LTC
Idioma: Español
Obtener una clave API

Docs · Model Context Protocol · Python

Servidor MCP de búsqueda de Google para Claude Desktop, Cursor y otros clientes MCP

Da a cualquier cliente MCP una herramienta google_search que devuelve resultados de Google en vivo. El servidor es un único archivo de Python que ejecutas tú mismo; llama a la API SerpCrypto y devuelve texto compacto que un modelo puede leer.

Última actualización: · 5 min de lectura

Respuesta rápida

¿Cómo añado la búsqueda de Google a Claude Desktop o Cursor con un servidor MCP?

Guarda el servidor de Python de 40 líneas que aparece abajo, instala mcp[cli] y httpx, y regístralo en la configuración MCP de tu cliente con tu clave API SerpCrypto en env. El cliente recibe entonces una herramienta google_search que devuelve resultados de Google en vivo. Cada llamada a la herramienta es una búsqueda de 1 crédito, desde 0,30 US$/1K búsquedas; los créditos se pagan con criptomonedas sin KYC.

El servidor MCP de un vistazo

LenguajePython 3.10+ con el SDK oficial mcp (FastMCP) y httpx
Transportestdio: el cliente inicia el script y se comunica con él
Herramientagoogle_search(query, gl, hl, num_results)
SalidaTexto del AI Overview cuando se muestra, luego título, enlace y snippet por resultado
ClaveVariable de entorno SERPCRYPTO_API_KEY, definida en la configuración del cliente
Coste1 crédito por cada llamada a la herramienta que se completa correctamente; los errores son gratis

¿Qué hace el servidor?

Expone una herramienta, google_search, a través del Model Context Protocol. Cuando el modelo la llama, el servidor envía una consulta a https://serpcrypto.com/api/v1/search y luego convierte el JSON en texto plano breve: el AI Overview si Google lo mostró, y los mejores resultados con título, enlace y snippet.

El texto breve importa. Una página de resultados completa en JSON es larga, y cada carácter que se devuelve al modelo consume contexto. El servidor conserva hasta diez resultados y recorta el overview a 800 caracteres; cambia esos límites en el código si tu cliente tiene espacio para más.

Este es código para copiar y pegar, no un paquete publicado: no hay ningún paquete MCP oficial de SerpCrypto que instalar. El archivo es tuyo y puedes añadir herramientas, por ejemplo una para engine=google_news.

serpcrypto_mcp.py
"""serpcrypto_mcp.py: an MCP server that gives AI clients a Google search tool.

Install once:  pip install "mcp[cli]" httpx
Run by your MCP client over stdio; the API key comes from the environment.
"""
import os

import httpx
from mcp.server.fastmcp import FastMCP

API_URL = "https://serpcrypto.com/api/v1/search"
mcp = FastMCP("serpcrypto-search")


@mcp.tool()
async def google_search(query: str, gl: str = "us", hl: str = "en", num_results: int = 5) -> str:
    """Search Google and return the top results (title, link, snippet) and the AI Overview text if any.

    gl is a two-letter country code (us, gb, de...), hl a language code (en, de, pt-BR...).
    Each call uses one SerpCrypto search credit.
    """
    headers = {"Authorization": "Bearer " + os.environ["SERPCRYPTO_API_KEY"]}
    params = {"q": query, "gl": gl, "hl": hl}
    async with httpx.AsyncClient(timeout=90) as client:
        r = await client.get(API_URL, params=params, headers=headers)
    if r.status_code != 200:
        return f"Search failed with HTTP {r.status_code}: {r.text[:300]}"
    data = r.json()
    lines = []
    overview = data.get("ai_overview") or {}
    if overview.get("text"):
        lines.append("AI Overview: " + overview["text"][:800])
    for item in data.get("organic_results", [])[: max(1, min(num_results, 10))]:
        lines.append(f"{item['position']}. {item['title']}\n{item['link']}\n{item.get('snippet', '')}")
    return "\n\n".join(lines) or "No results."


if __name__ == "__main__":
    mcp.run()  # stdio transport

Varios clientes ya incluyen una herramienta llamada web_search que usa su propio proveedor. Un nombre distinto evita conflictos y le indica al modelo lo que obtiene: resultados de Google para un país y un idioma que él elige. El docstring es la descripción que lee el modelo, así que indica los parámetros y el coste de una llamada.

¿Cómo lo añado a Claude Desktop?

Abre el archivo de configuración, claude_desktop_config.json: en macOS está en ~/Library/Application Support/Claude/, en Windows en %APPDATA%\Claude\. Añade el servidor bajo mcpServers, con la ruta absoluta al script y tu clave en env, y luego reinicia Claude Desktop.

Si python no está en la ruta que ve Claude Desktop, usa la ruta completa al intérprete, por ejemplo la que está dentro de tu entorno virtual.

claude_desktop_config.json
{
  "mcpServers": {
    "serpcrypto-search": {
      "command": "python",
      "args": ["/absolute/path/to/serpcrypto_mcp.py"],
      "env": {
        "SERPCRYPTO_API_KEY": "paste-your-key-here"
      }
    }
  }
}

¿Cómo lo añado a Claude Code y Cursor?

En Claude Code, regístralo desde una terminal con claude mcp add; -e define la variable de entorno y todo lo que va después de -- es el comando que se ejecuta. En Cursor, pon el mismo bloque mcpServers de arriba en ~/.cursor/mcp.json para cada proyecto, o en .cursor/mcp.json dentro de un solo proyecto.

Otros clientes MCP que arrancan servidores stdio reciben las mismas tres cosas: un comando, sus argumentos y las variables de entorno. La página de OpenClaw muestra los comandos para OpenClaw.

Claude Code
claude mcp add serpcrypto-search \
  -e SERPCRYPTO_API_KEY=paste-your-key-here \
  -- python /absolute/path/to/serpcrypto_mcp.py

¿Cómo mantengo segura la clave API?

Guárdala en el bloque env de la configuración del cliente o en el perfil de tu shell, nunca dentro de serpcrypto_mcp.py. Así el script se puede compartir o subir al repositorio sin la clave. Si una clave se filtra, revócala en el dashboard y crea una nueva: Claves API que puedes crear y revocar en cualquier momento desde tu dashboard.

Dale al servidor MCP su propia clave. Así el uso por clave muestra cuántas búsquedas hace el asistente, por separado de tus scripts.

¿Cuántos créditos usará un asistente?

Uno por cada llamada a herramienta que tenga éxito. Un chat en el que el modelo busca tres veces cuesta tres créditos. Con el pack 25.000 búsquedas a 18,75 US$, eso son miles de preguntas asistidas, y Los créditos de búsqueda prepagados no caducan nunca: las consultas sin usar se quedan en tu cuenta hasta que las uses.

Para limitar el uso, baja num_results (no cambia el precio, pero acorta las respuestas) e indica al modelo en tus instrucciones que solo busque cuando necesite datos actuales.

Preguntas sobre MCP

¿El servidor funciona con clientes MCP remotos?

Esta versión usa stdio, así que el cliente debe ejecutarlo en la misma máquina. FastMCP también puede servir por HTTP; si lo expones en una red, pon autenticación delante, porque cualquiera que llegue a él gasta tus créditos.

¿La herramienta puede buscar en Bing o en Google News?

Sí. Añade un argumento engine o una segunda herramienta que envíe engine=bing o engine=google_news en params. Cada motor cuesta lo mismo: 1 crédito por búsqueda.

¿Por qué dice el cliente que la herramienta falló?

Ejecuta el script a mano con el mismo Python para ver los errores. Las causas habituales son que falte el paquete mcp o httpx, una ruta incorrecta en la config o un SERPCRYPTO_API_KEY vacío, que hace que la API responda 401.

¿Necesito tarjeta de crédito o KYC para la clave API?

No. SerpCrypto vende créditos prepago pagados en BTC, USDT, USDC, ETH, SOL, LTC, sin identificación, sin selfie y sin documentos. Inicio de sesión con el número de cuenta; el email es opcional.

Desde 0,30 US$/1K búsquedas · sin KYC

Obtener una clave API