Google AI Search MCP
Un servidor que proporciona herramientas de búsqueda y documentación impulsadas por Google AI para desarrolladores.
Documentación
Google AI Search MCP
Este proyecto implementa un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona un conjunto completo de herramientas de búsqueda y documentación impulsadas por Google AI, diseñadas específicamente para ayudar a los programadores de IA a superar las limitaciones de conocimiento de los LLM y las brechas de información.
Notas de implementación
La selección del proveedor y las credenciales se resuelven en tiempo de ejecución, por lo que el hecho de que una herramienta aparezca en la lista no demuestra que su proveedor upstream esté configurado o sea accesible. Trate las comparaciones producidas por modelos, las guías de arquitectura y el análisis de seguridad como material para verificar contra las fuentes primarias citadas, en lugar de hallazgos deterministas.
Para una comparación con enlaces a fuentes sobre las presiones de diseño en este proyecto y otras seis implementaciones públicas de MCP, consulte Lo que construir siete servidores MCP me enseñó sobre MCP en producción.
Características
- Proporciona acceso a los modelos de Google AI (Vertex AI y Gemini API) a través de herramientas MCP especializadas.
- Se centra en la recuperación de información en tiempo real y el análisis basado en documentación.
- Admite fundamentación de búsqueda web para información actual que los LLM no poseen.
- ID de modelo, temperatura, comportamiento de streaming, tokens de salida máximos y configuración de reintentos configurables mediante variables de entorno.
- Utiliza la API de streaming por defecto para una mejor capacidad de respuesta potencial.
- Incluye lógica básica de reintentos para errores transitorios de API.
- Se aplican filtros de seguridad mínimos (
BLOCK_NONE) para reducir posibles bloqueos (usar con precaución).
Herramientas proporcionadas
Herramientas principales de búsqueda y documentación
answer_query_websearch: Consultas en lenguaje natural orientadas a desarrolladores con detección técnica automática, metodología de búsqueda mejorada y formato de código integral utilizando Google AI con resultados de búsqueda en tiempo real.explain_topic_with_docs: Explicaciones técnicas simplificadas con escenarios de depuración mejorados, sintetizando información de documentación oficial con menor verbosidad y orientación mejorada para la resolución de problemas.get_doc_snippets: Recuperación mejorada de fragmentos de código con ejemplos de complejidad progresiva, patrones de búsqueda avanzados, segmentación por versiones específicas y contexto integral para consultas técnicas de documentación oficial.generate_project_guidelines: Genera documentos integrales y estructurados de guías de proyecto basados en tecnologías especificadas, utilizando búsqueda web para prácticas recomendadas actuales y estándares de la industria.
Herramientas de análisis avanzado
code_analysis_with_docs: Análisis de código basado en evidencia con citas estandarizadas, categorización de severidad y recomendaciones accionables al comparar el código con las prácticas recomendadas de la documentación oficial.technical_comparison: Produce comparaciones de tecnologías según los criterios solicitados utilizando contexto de búsqueda actual cuando esté disponible. Verifique las afirmaciones cuantitativas o de mercado contra las fuentes primarias citadas.architecture_pattern_recommendation: Produce opciones de arquitectura, compensaciones y consideraciones de implementación para un caso de uso descrito. Valide la recomendación contra las restricciones reales del sistema antes de adoptarla.
(Nota: Los esquemas de entrada/salida de cada herramienta están definidos en sus respectivos archivos dentro de src/tools/ y se exponen a través del servidor MCP.)
Requisitos previos
- Node.js (v18+)
- Bun (
npm install -g bun) - Proyecto de Google Cloud con facturación habilitada (si se usa Vertex AI).
- API de Vertex AI habilitada en el proyecto de GCP (si se usa Vertex AI).
- Autenticación de Google Cloud configurada en su entorno (se recomiendan Credenciales Predeterminadas de Aplicación mediante
gcloud auth application-default login, o una Clave de Cuenta de Servicio) O una clave de API de Gemini.
Configuración e instalación
- Clonar/Colocar el proyecto: Asegúrese de que los archivos del proyecto estén en la ubicación deseada.
- Instalar dependencias:
bun install - Configurar el entorno:
- Cree un archivo
.enven la raíz del proyecto (copie.env.example). - Establezca las variables de entorno requeridas y opcionales como se describe en
.env.example.- Establezca
AI_PROVIDERa"vertex"o"gemini". - Si
AI_PROVIDER="vertex", se requiereGOOGLE_CLOUD_PROJECT. - Si
AI_PROVIDER="gemini", se requiereGEMINI_API_KEY.
- Establezca
- Cree un archivo
- Compilar el servidor:
Esto compila el código TypeScript abun run buildbuild/index.js.
Uso (Independiente / NPX)
El paquete está publicado en npm y se puede ejecutar directamente con npx:
# Ensure required environment variables are set (e.g., GOOGLE_CLOUD_PROJECT or GEMINI_API_KEY)
bunx google-ai-search-mcp
Alternativamente, instálelo globalmente:
bun install -g google-ai-search-mcp
# Then run:
google-ai-search-mcp
Nota: Ejecutar de forma independiente requiere establecer las variables de entorno necesarias (como GOOGLE_CLOUD_PROJECT, GOOGLE_CLOUD_LOCATION, GEMINI_API_KEY, credenciales de autenticación si no se usa ADC) en su entorno de shell antes de ejecutar el comando.
Docker
Compile la imagen del contenedor local:
docker build -t google-ai-search-mcp .
Ejecute con el proveedor de Gemini API:
docker run --rm -i \
-e AI_PROVIDER=gemini \
-e GEMINI_API_KEY \
google-ai-search-mcp
Para Vertex AI, pase AI_PROVIDER=vertex, GOOGLE_CLOUD_PROJECT y opcionalmente
GOOGLE_CLOUD_LOCATION. Las Credenciales Predeterminadas de Aplicación también deben estar disponibles
dentro del contenedor, normalmente mediante un montaje de credenciales de solo lectura. No incruste
claves de API ni archivos de cuentas de servicio en la imagen.
Ejecución con Cline
-
Configurar ajustes de MCP: Agregue/actualice la configuración en su archivo de ajustes de MCP de Cline (por ejemplo,
.roo/mcp.json). Tiene dos formas principales de configurar el comando:Opción A: Usando Node (Ruta directa - Recomendado para desarrollo)
Este método utiliza
nodepara ejecutar el script compilado directamente. Es útil durante el desarrollo cuando tiene el código clonado localmente.{ "mcpServers": { "google-ai-search-mcp": { "command": "node", "args": [ "/full/path/to/your/google-ai-search-mcp/build/index.js" // Use absolute path or ensure it's relative to where Cline runs node ], "env": { // --- General AI Configuration --- "AI_PROVIDER": "vertex", // "vertex" or "gemini" // --- Required (Conditional) --- "GOOGLE_CLOUD_PROJECT": "YOUR_GCP_PROJECT_ID", // Required if AI_PROVIDER="vertex" // "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY", // Required if AI_PROVIDER="gemini" // --- Optional Model Selection --- "VERTEX_MODEL_ID": "gemini-2.5-pro", // If AI_PROVIDER="vertex" (Example override) "GEMINI_MODEL_ID": "gemini-2.5-pro", // If AI_PROVIDER="gemini" // --- Optional AI Parameters --- "GOOGLE_CLOUD_LOCATION": "us-central1", // Specific to Vertex AI "AI_TEMPERATURE": "0.0", "AI_USE_STREAMING": "true", "AI_MAX_OUTPUT_TOKENS": "65536", // Default from .env.example "AI_MAX_RETRIES": "3", "AI_RETRY_DELAY_MS": "1000", // --- Optional Vertex Authentication --- // "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account-key.json" // If using Service Account Key for Vertex }, "disabled": false, "alwaysAllow": [ // Add tool names here if you don't want confirmation prompts // e.g., "answer_query_websearch" ], "timeout": 3600 // Optional: Timeout in seconds } // Add other servers here... } }- Importante: Asegúrese de que la ruta
argsapunte correctamente al archivobuild/index.js. Usar una ruta absoluta podría ser más confiable.
Opción B: Usando NPX (Requiere paquete publicado en npm)
Este método utiliza
npxpara descargar y ejecutar automáticamente el paquete del servidor desde el registro de npm. Esto es conveniente si no desea clonar el repositorio.{ "mcpServers": { "google-ai-search-mcp": { "command": "bunx", // Use bunx "args": [ "-y", // Auto-confirm installation "google-ai-search-mcp" // The npm package name ], "env": { // --- General AI Configuration --- "AI_PROVIDER": "vertex", // "vertex" or "gemini" // --- Required (Conditional) --- "GOOGLE_CLOUD_PROJECT": "YOUR_GCP_PROJECT_ID", // Required if AI_PROVIDER="vertex" // "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY", // Required if AI_PROVIDER="gemini" // --- Optional Model Selection --- "VERTEX_MODEL_ID": "gemini-2.5-pro", // If AI_PROVIDER="vertex" (Example override) "GEMINI_MODEL_ID": "gemini-2.5-pro", // If AI_PROVIDER="gemini" // --- Optional AI Parameters --- "GOOGLE_CLOUD_LOCATION": "us-central1", // Specific to Vertex AI "AI_TEMPERATURE": "0.0", "AI_USE_STREAMING": "true", "AI_MAX_OUTPUT_TOKENS": "65536", // Default from .env.example "AI_MAX_RETRIES": "3", "AI_RETRY_DELAY_MS": "1000", // --- Optional Vertex Authentication --- // "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account-key.json" // If using Service Account Key for Vertex }, "disabled": false, "alwaysAllow": [ // Add tool names here if you don't want confirmation prompts // e.g., "answer_query_websearch" ], "timeout": 3600 // Optional: Timeout in seconds } // Add other servers here... } }- Asegúrese de que las variables de entorno en el bloque
envestén configuradas correctamente, ya sea coincidiendo con.envo definidas explícitamente aquí. Elimine los comentarios del archivo JSON real.
- Importante: Asegúrese de que la ruta
-
Reiniciar/Recargar Cline: Cline debería detectar el cambio de configuración e iniciar el servidor.
-
Usar herramientas: Ahora puede usar la lista completa de herramientas de búsqueda y documentación impulsadas por Google AI a través de Cline.
Desarrollo
- Modo de observación:
bun run watch - Compilar:
bun run build - Inspector:
bun run inspector
Licencia
Este proyecto está licenciado bajo la Licencia MIT - consulte el archivo LICENCIA para más detalles.