Skip to main content
Glama
adenot

MCP Google Server

by adenot

mcp-google-server Un servidor MCP para la búsqueda personalizada de Google y la lectura de páginas web

insignia de herrería

Un servidor de protocolo de contexto de modelo que proporciona capacidades de búsqueda web mediante la API de búsqueda personalizada de Google y la funcionalidad de extracción de contenido de páginas web.

Configuración

Obtener la clave API de Google y el ID del motor de búsqueda

  1. Crear un proyecto de Google Cloud:

  2. Habilitar API de búsqueda personalizada:

    • Ir a la biblioteca API

    • Buscar "API de búsqueda personalizada"

    • Haga clic en "Habilitar"

  3. Obtener clave API:

    • Ir a Credenciales

    • Haga clic en "Crear credenciales" > "Clave API".

    • Copia tu clave API

    • (Opcional) Restrinja la clave API solo a la API de búsqueda personalizada

  4. Crear un motor de búsqueda personalizado:

    • Ir al motor de búsqueda programable

    • Ingrese los sitios que desea buscar (use www.google.com para búsquedas web generales)

    • Haga clic en "Crear"

    • En la página siguiente, haga clic en "Personalizar".

    • En la configuración, activa "Buscar en toda la web".

    • Copia tu ID de motor de búsqueda (cx)

Related MCP server: MCP Server for Google Search

Desarrollo

Instalar dependencias:

npm install

Construir el servidor:

npm run build

Para desarrollo con reconstrucción automática:

npm run watch

Características

Herramienta de búsqueda

Realice búsquedas web utilizando la API de búsqueda personalizada de Google:

  • Busque en toda la web o en sitios específicos

  • Número de control de resultados (1-10)

  • Obtenga resultados estructurados con título, enlace y fragmento

Herramienta de lectura de páginas web

Extraer contenido de cualquier página web:

  • Obtener y analizar el contenido de la página web

  • Extraer el título de la página y el texto principal

  • Limpiar el contenido eliminando scripts y estilos

  • Devuelve datos estructurados con título, texto y URL

Instalación

Instalación mediante herrería

Para instalar Google Custom Search Server para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @adenot/mcp-google-search --client claude

Para usar con Claude Desktop, agregue la configuración del servidor con sus credenciales de API de Google:

En MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json En Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "google-search": {
      "command": "npx",
      "args": [
        "-y",
        "@adenot/mcp-google-search"
      ],
      "env": {
        "GOOGLE_API_KEY": "your-api-key-here",
        "GOOGLE_SEARCH_ENGINE_ID": "your-search-engine-id-here"
      }
    }
  }
}

Uso

Herramienta de búsqueda

{
  "name": "search",
  "arguments": {
    "query": "your search query",
    "num": 5  // optional, default is 5, max is 10
  }
}

Herramienta de lectura de páginas web

{
  "name": "read_webpage",
  "arguments": {
    "url": "https://example.com"
  }
}

Ejemplo de respuesta del lector de la página web:

{
  "title": "Example Domain",
  "text": "Extracted and cleaned webpage content...",
  "url": "https://example.com"
}

Depuración

Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser complicada. Recomendamos usar el Inspector MCP , disponible como script de paquete:

npm run inspector

El Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.

Available Tools

2 tools
read_webpageA

Fetch and extract text content from a webpage

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the webpage to read

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It only states basic purpose without mentioning rate limits, authentication, dynamic content handling, or error responses.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with action, no unnecessary words. Perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is adequate but lacks details on handling of large pages, timeouts, or what 'text content' entails (e.g., stripping HTML).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (single 'url' parameter described), so baseline is 3. The description adds no extra meaning beyond the schema, such as URL format or protocol support.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action ('Fetch and extract') and the resource ('text content from a webpage'), distinguishing it from sibling tool 'search' which is for querying.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The sibling 'search' suggests a different purpose, but the description does not clarify contexts or exclusions.

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. 2 tool updatesv1.0.0
    • First observedread_webpage
    • First observedsearch

TDQS

B3.2/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: one fetches content from a specific URL, the other performs web searches. There is no overlap or ambiguity.

Naming Consistency2/5

The naming pattern is inconsistent: 'read_webpage' uses verb_noun with an underscore, while 'search' is a single verb without a noun or underscore. This lack of uniformity could confuse agents.

Tool Count3/5

With only 2 tools, the server is minimal but still covers two core web operations. The count is at the low end of what's reasonable for a focused server, but not necessarily inappropriate.

Completeness3/5

The set provides basic web search and page reading, which covers common use cases. However, it lacks features like filtering search results, handling pagination, or extracting specific elements, leaving minor gaps.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers