Google Custom Search Engine MCP Server
Servidor MCP del motor de búsqueda personalizado de Google
Un servidor de Protocolo de Contexto de Modelo (MLP) que proporciona funciones de búsqueda mediante un CSE (motor de búsqueda personalizado). Este servidor permite a los LLM proporcionar un término de búsqueda habitual en Google y devolver los resultados encontrados.
La herramienta solo devuelve los resultados, no el contenido. Debe combinarse con otros servidores como mcp-server-fetch para extraer el contenido de los resultados de búsqueda. También puede combinarse con otras herramientas para habilitar algún tipo de "búsqueda profunda" o encadenamiento de herramientas en general.
La cuota gratuita es de 100 búsquedas (1 llamada de herramienta == 1 búsqueda) por día, si no desea configurar la facturación y esto es insuficiente para su caso de uso, debería considerar utilizar otro servidor.
Herramientas disponibles
google_search: busca en el motor de búsqueda personalizado utilizando el término de búsqueda y devuelve una lista de resultados que contiene el título, el enlace y un fragmento de cada resultado.search_term(cadena, obligatoria): el término de búsqueda a buscar, igual al parámetro de consultaqen la búsqueda habitual de Google.
Related MCP server: Web Search MCP Server
Variables de entorno
API_KEY(obligatorio): La clave API para el motor de búsqueda personalizado.ENGINE_ID(obligatorio): el ID del motor para el motor de búsqueda personalizado.SERVICE_NAME(obligatorio/opcional): el nombre del servicio, déjelo vacío si no ha cambiado el nombre (búsqueda personalizada).COUNTRY_REGION(opcional): Restringe los resultados de búsqueda a documentos originados en un país específico. Consulte los valores válidos del parámetro País .GEOLOCATION(opcional, por defecto "nosotros"): La geolocalización del usuario final que realiza la búsqueda. Consulte los valores válidos de los parámetros de geolocalización .RESULT_LANGUAGE(opcional, predeterminado "lang_en"): El idioma de los resultados de la búsqueda. Consulte los parámetros de consulta CSE, lr, para conocer los valores válidos.RESULT_NUM(opcional, valor predeterminado: 10): El número de resultados de búsqueda que se devolverán. Rango de 1 a 10.
Configuración de CSE
Crear un motor de búsqueda personalizado es relativamente fácil, completamente gratuito y se puede hacer en menos de 5 minutos.
Ve a https://console.cloud.google.com/ y crea un nuevo proyecto. Llámalo, por ejemplo, "Claude CSE".
Seleccione el proyecto y busque “API de búsqueda personalizada” en la barra de búsqueda.
Haga clic en el resultado de la búsqueda y haga clic en "Habilitar".
Haga clic en la pestaña Credenciales y cree una nueva clave API.
Vaya a https://programmablesearchengine.google.com para crear un nuevo motor de búsqueda personalizado.
Crea un nuevo motor de búsqueda y asígnale cualquier nombre, el nombre no se correlaciona con SERVICE_NAME.
Seleccione "Buscar en toda la web" si desea una experiencia de búsqueda de Google normal.
Haga clic en "Crear" y copie el ID del motor del código js, o presione personalizar y obténgalo de la descripción general.
Opcionalmente puedes personalizar el motor de búsqueda a tu gusto.
Con la cuota predeterminada, obtendrás 100 búsquedas al día gratis. Una llamada a la herramienta solo cuesta una búsqueda, incluso si obtienes 10 resultados, por ejemplo.
Instalación
Uso de uv (recomendado)
Al usar uv , no se requiere ninguna instalación específica. Usaremos uvx para ejecutar directamente mcp-google-cse .
Uso de PIP
Alternativamente, puede instalar mcp-google-cse a través de pip:
pip install mcp-google-cseDespués de la instalación, puedes ejecutarlo como un script usando:
python -m mcp-google-cseInstalación mediante herrería
Para instalar automáticamente el motor de búsqueda personalizado de Google para Claude Desktop a través de Smithery :
npx -y @smithery/cli install @Richard-Weiss/mcp-google-cse --client claudeConfiguración
Configurar para la aplicación Claude
Añade a tu claude_desktop_config.json :
Usando uvx (usa esto si no sabes cuál elegir)
"mcp-google-cse": {
"command": "uvx",
"args": ["mcp-google-cse"],
"env": {
"API_KEY": "",
"ENGINE_ID": ""
}
}Usando la instalación de pip
"mcp-google-cse": {
"command": "python",
"args": ["-m", "mcp-google-cse"],
"env": {
"API_KEY": "",
"ENGINE_ID": ""
}
}Corriendo localmente
"mcp-google-cse": {
"command": "uv",
"args": [
"--directory",
"{{Path to the cloned repo",
"run",
"mcp-google-cse"
],
"env": {
"API_KEY": "",
"ENGINE_ID": ""
}
}Resultado de ejemplo
google_search("¿Qué es MCP después del: 01/11/2024?") Resultado:
[
{
"title": "Can someone explain MCP to me? How are you using it? And what ...",
"link": "https://www.reddit.com/r/ClaudeAI/comments/1h55zxd/can_someone_explain_mcp_to_me_how_are_you_using/",
"snippet": "Dec 2, 2024 ... Comments Section ... MCP essentially allows you to give Claude access to various external systems. This can be files on your computer, an API, a browser, a ..."
},
{
"title": "Introducing the Model Context Protocol \\ Anthropic",
"link": "https://www.anthropic.com/news/model-context-protocol",
"snippet": "Nov 25, 2024 ... The Model Context Protocol (MCP) is an open standard for connecting AI assistants to the systems where data lives, including content repositories, ..."
},
{
"title": "3.5 Sonnet + MCP + Aider = Complete Game Changer : r ...",
"link": "https://www.reddit.com/r/ChatGPTCoding/comments/1hwn6qd/35_sonnet_mcp_aider_complete_game_changer/",
"snippet": "Jan 8, 2025 ... Really cool stuff. For those out of the loop here are some MCP servers. You can give your Claude chat (in the desktop version, or in a tool like Cline) ..."
},
{
"title": "Announcing Spring AI MCP: A Java SDK for the Model Context ...",
"link": "https://spring.io/blog/2024/12/11/spring-ai-mcp-announcement",
"snippet": "Dec 11, 2024 ... This SDK will enable Java developers to easily connect with an expanding array of AI models and tools while maintaining consistent, reliable integration ..."
},
{
"title": "Implementing a MCP server in Quarkus - Quarkus",
"link": "https://quarkus.io/blog/mcp-server/",
"snippet": "6 days ago ... The Model Context Protocol (MCP) is an emerging standard that enables AI models to safely interact with external tools and resources. In this tutorial, I'll ..."
},
{
"title": "mark3labs/mcp-go: A Go implementation of the Model ... - GitHub",
"link": "https://github.com/mark3labs/mcp-go",
"snippet": "Dec 18, 2024 ... A Go implementation of the Model Context Protocol (MCP), enabling seamless integration between LLM applications and external data sources and tools."
},
{
"title": "MCP enables Claude to Build, Run and Test Web Apps by Looking ...",
"link": "https://wonderwhy-er.medium.com/mcp-enable-claude-to-build-run-and-test-web-apps-using-screenshots-3ae06aea6c4a",
"snippet": "Dec 18, 2024 ... How to Replicate My Experiment on Your Machine. If you're ready to dive into setting up MCP for Claude, follow these steps: ... 2. Download the Project: ... 3."
},
{
"title": "MCP definition and meaning | Collins English Dictionary",
"link": "https://www.collinsdictionary.com/dictionary/english/mcp",
"snippet": "2 days ago ... 2 meanings: male chauvinist pig → informal, derogatory a man who exhibits male chauvinism Abbreviation: MCP.... Click for more definitions."
},
{
"title": "What is Anthropic's New MCP Standard and How Can It Improve ...",
"link": "https://dappier.medium.com/what-is-anthropics-new-mcp-standard-and-how-can-it-improve-your-ai-agent-be6f6c72eb6a",
"snippet": "Nov 26, 2024 ... Anthropic has released a new protocol, MCP, for connecting AI agents to data sets. This blog explores when and why developers might use MCP to improve their ..."
},
{
"title": "Mostafa Gharib on LinkedIn: What is MCP and how it works",
"link": "https://www.linkedin.com/posts/mostafa-gharib_what-is-mcp-and-how-it-works-activity-7274301560594026497-p_yq",
"snippet": "Dec 15, 2024 ... ... MCP Host can use. (Bonus: SDKs in Python and TypeScript make it easy to build these servers!) 2️⃣ MCP Clients These interact with MCP Servers via the protocol."
}
]Available Tools
1 toolgoogle_searchA
Search the custom search engine using the search term. Regular query arguments can also be used, like appending site:reddit.com or after:2024-04-30. If available and/or requested, the links of the search results should be used in a follow-up request using a different tool to get the full content. Example: "claude.ai features site:reddit.com after:2024-04-30"
| Name | Required | Description | Default |
|---|---|---|---|
| search_term | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds useful context about query arguments and follow-up actions with other tools, but doesn't cover important aspects like rate limits, authentication needs, or what the search results look like. It provides some behavioral insight but leaves gaps for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with three sentences that each add value: stating the purpose, explaining query capabilities, and describing follow-up actions. It's front-loaded with the core functionality and avoids unnecessary repetition. The example is concise and illustrative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and 1 parameter with 0% schema coverage, the description provides adequate context for basic usage but lacks completeness. It explains query capabilities and follow-up actions but doesn't describe result format, error handling, or limitations. For a search tool, more behavioral context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 1 parameter with 0% description coverage, so the description must compensate. It explains that 'search_term' accepts regular query arguments with examples like 'site:reddit.com' and 'after:2024-04-30', adding meaningful semantics beyond the bare schema. However, it doesn't detail all possible query syntax or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search the custom search engine using the search term.' This specifies the verb ('Search') and resource ('custom search engine'), though it doesn't distinguish from siblings since none exist. The description is specific about what the tool does without being tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage guidance by mentioning 'Regular query arguments can also be used' and giving an example, which suggests when to use advanced search syntax. However, it lacks explicit when/when-not instructions or alternative tool comparisons, and there are no sibling tools to differentiate from. The guidance is helpful but not comprehensive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
google_search
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'google_search' has a clearly defined and distinct purpose for searching the custom search engine.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'google_search' follows a clear and appropriate verb_noun pattern that would be consistent if more tools existed.
A single tool is too few for a server that implies broader functionality, such as a search engine with potential follow-up actions. The description mentions using links in follow-up requests with different tools, suggesting gaps that a single tool cannot cover, making the count inappropriate for the apparent scope.
The server is severely incomplete for a search engine domain. While the core search functionality is present, the description hints at missing tools for follow-up actions like fetching full content from links, and there are no tools for managing searches, filters, or other related operations, leading to significant gaps that will cause agent failures.
Maintenance
Related MCP Connectors
GoogleSearch API: Fetch real-time Google Search results including title, links Ideal for serp api.
Search Google straight from your AI agent. Web results, images, videos, news, products, scholarly ar
Web search, scraping, Google Trends and data lookups. Paid per call in USDC on Base via x402.
Web search, news, page retrieval, sitemaps, and trending topics through Search1API.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables free web searching using Google search results with no API keys required, returning structured results with titles, URLs, and descriptions.131 npm5MIT
- FlicenseBqualityDmaintenanceEnables web searching and content scraping through Google Custom Search API. Provides tools to search the internet, extract webpage content, and automatically scrape search results for comprehensive information gathering.3-
- AlicenseAqualityDmaintenanceEnables users to perform Google Custom Search queries through the Model Context Protocol. Requires Google API credentials and Custom Search Engine configuration for web search functionality.1MIT
- AlicenseBqualityDmaintenanceEnables Large Language Models to perform real-time web searches using Google Custom Search API. Integrates with Claude Desktop to retrieve current information from the internet.1MIT