Servidor MCP de Vertex AI
Este proyecto implementa un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona un conjunto completo de herramientas para interactuar con los modelos Vertex AI Gemini de Google Cloud, centrándose en la asistencia de codificación y la respuesta a consultas generales.
Características
- Proporciona acceso a los modelos Vertex AI Gemini a través de numerosas herramientas MCP.
- Admite búsqueda web basada en web (
answer_query_websearch
) y respuestas de conocimiento directo (answer_query_direct
). - ID de modelo configurable, temperatura, comportamiento de transmisión, tokens de salida máxima y configuraciones de reintento a través de variables de entorno.
- Utiliza API de transmisión de forma predeterminada para una capacidad de respuesta potencialmente mejor.
- Incluye lógica de reintento básica para errores transitorios de API.
- Se aplicaron filtros de seguridad mínimos (
BLOCK_NONE
) para reducir el posible bloqueo (úselo con precaución).
Herramientas proporcionadas
Consulta y generación (centrada en IA)
answer_query_websearch
: responde una consulta en lenguaje natural utilizando el modelo Vertex AI configurado y mejorado con los resultados de búsqueda de Google.answer_query_direct
: responde una consulta en lenguaje natural utilizando solo el conocimiento interno del modelo Vertex AI configurado.explain_topic_with_docs
: proporciona una explicación detallada de una consulta sobre un tema de software específico sintetizando información principalmente de la documentación oficial encontrada a través de una búsqueda web.get_doc_snippets
: proporciona fragmentos de código precisos y autorizados o respuestas concisas a consultas técnicas mediante la búsqueda de documentación oficial.generate_project_guidelines
: genera un documento de pautas de proyecto estructurado (Markdown) basado en una lista específica de tecnologías (opcionalmente con versiones), utilizando la búsqueda web de las mejores prácticas.
Operaciones del sistema de archivos
read_file_content
: lee el contenido completo de un solo archivo.read_multiple_files_content
: Lee el contenido de varios archivos simultáneamente.write_file_content
: crea un nuevo archivo o sobrescribe completamente un archivo existente con contenido nuevo.edit_file_content
: realiza ediciones basadas en líneas en un archivo de texto, devolviendo una vista previa de diferencias o aplicando cambios.create_directory
: crea un nuevo directorio (incluidos los directorios anidados).list_directory_contents
: enumera archivos y directorios directamente dentro de una ruta especificada (no recursivo).get_directory_tree
: obtiene una vista de árbol recursiva de archivos y directorios como JSON.move_file_or_directory
: Mueve o renombra archivos y directorios.search_filesystem
: busca recursivamente archivos/directorios que coincidan con un patrón de nombre, con exclusiones opcionales.get_filesystem_info
: recupera metadatos detallados (tamaño, fechas, tipo, permisos) sobre un archivo o directorio.
Operaciones combinadas de IA y sistema de archivos
save_generate_project_guidelines
: genera pautas de proyecto basadas en una pila tecnológica y guarda el resultado en una ruta de archivo específica.save_doc_snippet
: busca fragmentos de código de la documentación y guarda el resultado en una ruta de archivo especificada.save_topic_explanation
: genera una explicación detallada de un tema basada en la documentación y guarda el resultado en una ruta de archivo especificada.save_answer_query_direct
: responde una consulta utilizando solo conocimiento interno y guarda la respuesta en una ruta de archivo especificada.save_answer_query_websearch
: responde una consulta utilizando resultados de búsqueda web y guarda la respuesta en una ruta de archivo especificada.
(Nota: Los esquemas de entrada/salida para cada herramienta se definen en sus respectivos archivos dentro de src/tools/
y se exponen a través del servidor MCP).
Prerrequisitos
- Node.js (versión 18+)
- Bun (
npm install -g bun
) - Proyecto de Google Cloud con facturación habilitada.
- API de Vertex AI habilitada en el proyecto GCP.
- Autenticación de Google Cloud configurada en su entorno (se recomienda utilizar las credenciales predeterminadas de la aplicación a través
gcloud auth application-default login
o una clave de cuenta de servicio).
Configuración e instalación
- Clonar/Colocar proyecto: asegúrese de que los archivos del proyecto estén en la ubicación deseada.
- Dependencias de instalación:
- Configurar entorno:
- Cree un archivo
.env
en la raíz del proyecto (copie.env.example
). - Establezca las variables de entorno obligatorias y opcionales como se describe en
.env.example
.- Establezca
AI_PROVIDER
en"vertex"
o"gemini"
. - Si
AI_PROVIDER="vertex"
, se requiereGOOGLE_CLOUD_PROJECT
. - Si
AI_PROVIDER="gemini"
, se requiereGEMINI_API_KEY
.
- Establezca
- Cree un archivo
- Construir el servidor:Esto compila el código TypeScript en
build/index.js
.
Uso (autónomo/NPX)
Una vez publicado en npm, puedes ejecutar este servidor directamente usando npx
:
Alternativamente, instálelo globalmente:
Nota: Para ejecutar de forma independiente es necesario configurar las variables de entorno necesarias (como GOOGLE_CLOUD_PROJECT
, GOOGLE_CLOUD_LOCATION
y las credenciales de autenticación si no se utiliza ADC) en el entorno de shell antes de ejecutar el comando.
Instalación mediante herrería
Para instalar Vertex AI Server para Claude Desktop automáticamente a través de Smithery :
Corriendo con Cline
- Configurar los ajustes de MCP: Agregue o actualice la configuración en su archivo de ajustes de MCP de Cline (p. ej.,
.roo/mcp.json
). Hay dos maneras principales de configurar el comando:Opción A: Usar Node (Ruta directa - Recomendado para desarrollo)Este método usanode
para ejecutar directamente el script compilado. Es útil durante el desarrollo cuando el código se clona localmente.- Importante: Asegúrate de que la ruta
args
apunte correctamente al archivobuild/index.js
. Usar una ruta absoluta podría ser más fiable.
Opción B: Usar NPX (requiere que el paquete esté publicado en npm)
Este método usa
npx
para descargar y ejecutar automáticamente el paquete del servidor desde el registro de npm. Esto resulta práctico si no desea clonar el repositorio.- Asegúrese de que las variables de entorno del bloque
env
estén configuradas correctamente, ya sea que coincidan con.env
o estén definidas explícitamente aquí. Elimine los comentarios del archivo JSON.
- Importante: Asegúrate de que la ruta
- Reiniciar/Recargar Cline: Cline debería detectar el cambio de configuración e iniciar el servidor.
- Usar herramientas: ahora puedes utilizar la amplia lista de herramientas a través de Cline.
Desarrollo
- Modo de vigilancia:
bun run watch
- Pelusa:
bun run lint
- Formato:
bun run format
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Implementación del servidor de Protocolo de contexto de modelo (MCP) que brinda herramientas para acceder a los modelos Vertex AI Gemini de Google Cloud y admite funciones como la conexión a tierra para búsquedas web y respuestas de conocimiento directo para asistencia en la codificación y consultas generales.
Related MCP Servers
- -securityAlicense-qualityModel Context Protocol (MCP) server implementation that enables Claude Desktop to interact with Google's Gemini AI models.Last updated -53TypeScriptMIT License
- AsecurityAlicenseAquality🔍 A Model Context Protocol (MCP) server providing unified access to multiple search engines (Tavily, Brave, Kagi), AI tools (Perplexity, FastGPT), and content processing services (Jina AI, Kagi). Combines search, AI responses, content processing, and enhancement features through a single interface.Last updated -15227102TypeScriptMIT License
- -security-license-qualityAn MCP server implementation that allows using Google's Gemini AI models (specifically Gemini 1.5 Pro) through Claude or other MCP clients via the Model Context Protocol.Last updated -1JavaScript
- AsecurityAlicenseAqualityA dedicated server that wraps Google's Gemini AI models in a Model Context Protocol (MCP) interface, allowing other LLMs and MCP-compatible systems to access Gemini's capabilities like content generation, function calling, chat, and file handling through standardized tools.Last updated -1620TypeScriptMIT License