Vertex AI MCP Server

Integrations

  • Supports configuration of the server through environment variables loaded from a .env file

  • Used for project dependency management, building, and running the server in development mode

  • Enables web search grounding for queries through the answer_query_websearch tool, combining Google Search results with Vertex AI model responses

Сервер Vertex AI MCP

В этом проекте реализован сервер Model Context Protocol (MCP), который предоставляет комплексный набор инструментов для взаимодействия с моделями Vertex AI Gemini от Google Cloud, уделяя особое внимание помощи в кодировании и ответам на общие запросы.

Функции

  • Предоставляет доступ к моделям Vertex AI Gemini через многочисленные инструменты MCP.
  • Поддерживает обоснование веб-поиска ( answer_query_websearch ) и ответы на основе прямых знаний ( answer_query_direct ).
  • Настраиваемый идентификатор модели, температура, поведение потоковой передачи, максимальное количество выходных токенов и параметры повтора с помощью переменных среды.
  • По умолчанию используется потоковый API для потенциально лучшего отклика.
  • Включает базовую логику повторных попыток для временных ошибок API.
  • Применяются минимальные фильтры безопасности ( BLOCK_NONE ) для снижения потенциальной блокировки (используйте с осторожностью).

Предоставляемые инструменты

Запрос и генерация (с упором на ИИ)

  • answer_query_websearch : отвечает на запросы на естественном языке, используя настроенную модель Vertex AI, улучшенную с помощью результатов поиска Google.
  • answer_query_direct : отвечает на запрос на естественном языке, используя только внутренние знания настроенной модели Vertex AI.
  • explain_topic_with_docs : предоставляет подробное объяснение запроса по определенной теме программного обеспечения, синтезируя информацию, в основном из официальной документации, найденной с помощью веб-поиска.
  • get_doc_snippets : предоставляет точные, достоверные фрагменты кода или краткие ответы на технические вопросы путем поиска в официальной документации.
  • generate_project_guidelines : создает структурированный документ с рекомендациями по проекту (Markdown) на основе указанного списка технологий (опционально с версиями), используя веб-поиск передового опыта.

Инструменты исследования и анализа

  • code_analysis_with_docs : анализирует фрагменты кода, сравнивая их с лучшими практиками из официальной документации, выявляя потенциальные ошибки, проблемы с производительностью и уязвимости безопасности.
  • technical_comparison : сравнивает несколько технологий, фреймворков или библиотек на основе определенных критериев, предоставляя подробные сравнительные таблицы с плюсами/минусами и вариантами использования.
  • architecture_pattern_recommendation : предлагает шаблоны архитектуры для конкретных вариантов использования на основе лучших отраслевых практик с примерами реализации и соображениями.
  • dependency_vulnerability_scan : анализирует зависимости проекта на предмет известных уязвимостей безопасности, предоставляя подробную информацию и стратегии смягчения последствий.
  • database_schema_analyzer : проверяет схемы баз данных на предмет нормализации, индексации и проблем производительности, предлагая улучшения на основе передового опыта, специфичного для конкретной базы данных.
  • security_best_practices_advisor : предоставляет рекомендации по безопасности для конкретных технологий или сценариев, а также примеры кода для внедрения безопасных практик.
  • testing_strategy_generator : создает комплексные стратегии тестирования для приложений или функций, предлагая соответствующие типы тестирования с целями покрытия.
  • regulatory_compliance_advisor : предоставляет рекомендации по нормативным требованиям для конкретных отраслей (GDPR, HIPAA и т. д.) с подходами к внедрению для обеспечения соответствия.
  • microservice_design_assistant : помогает проектировать архитектуры микросервисов для определенных доменов с рекомендациями по границам сервисов и шаблонами коммуникации.
  • documentation_generator : создает исчерпывающую документацию по коду, API или системам, следуя лучшим отраслевым практикам технической документации.

Операции файловой системы

  • read_file_content : Прочитать полное содержимое одного или нескольких файлов. Укажите одну строку пути или массив строк пути.
  • write_file_content : Создать новые файлы или полностью перезаписать существующие файлы. Аргумент 'writes' принимает один объект ( {path, content} ) или массив таких объектов.
  • edit_file_content : вносит построчные изменения в текстовый файл, возвращает предварительный просмотр различий или применяет изменения.
  • list_directory_contents : выводит список файлов и каталогов непосредственно по указанному пути (нерекурсивно).
  • get_directory_tree : Получает рекурсивное древовидное представление файлов и каталогов в формате JSON.
  • move_file_or_directory : Перемещает или переименовывает файлы и каталоги.
  • search_filesystem : Рекурсивный поиск файлов/каталогов, соответствующих шаблону имени, с возможными исключениями.
  • get_filesystem_info : Извлекает подробные метаданные (размер, даты, тип, разрешения) о файле или каталоге.
  • execute_terminal_command : Выполнить команду оболочки, при необходимости указав cwd и timeout . Возвращает stdout/stderr.

Комбинированные операции ИИ + файловой системы

  • save_generate_project_guidelines : создает руководства по проекту на основе технологического стека и сохраняет результат в указанном файле.
  • save_doc_snippet : находит фрагменты кода из документации и сохраняет результат в указанном файле.
  • save_topic_explanation : создает подробное объяснение темы на основе документации и сохраняет результат в указанном файле.
  • save_answer_query_direct : отвечает на запрос, используя только внутренние знания, и сохраняет ответ в указанном файле.
  • save_answer_query_websearch : отвечает на запрос, используя результаты веб-поиска, и сохраняет ответ в указанном пути к файлу.

(Примечание: схемы ввода/вывода для каждого инструмента определены в соответствующих файлах в src/tools/ и предоставляются через сервер MCP.)

Предпосылки

  • Node.js (v18+)
  • Бан ( npm install -g bun )
  • Проект Google Cloud с включенным биллингом.
  • API Vertex AI включен в проект GCP.
  • В вашей среде настроена аутентификация Google Cloud (рекомендуется использовать учетные данные приложения по умолчанию с помощью gcloud auth application-default login или ключ учетной записи службы).

Настройка и установка

  1. Клонировать/разместить проект: убедитесь, что файлы проекта находятся в нужном вам месте.
  2. Установить зависимости:
    bun install
  3. Настроить среду:
    • Создайте файл .env в корне проекта (скопируйте .env.example ).
    • Задайте обязательные и необязательные переменные среды, как описано в .env.example .
      • Установите AI_PROVIDER на "vertex" или "gemini" .
      • Если AI_PROVIDER="vertex" , требуется GOOGLE_CLOUD_PROJECT .
      • Если AI_PROVIDER="gemini" , требуется GEMINI_API_KEY .
  4. Сборка сервера:
    bun run build
    Это компилирует код TypeScript в build/index.js .

Использование (автономное / NPX)

После публикации в npm вы можете запустить этот сервер напрямую с помощью npx :

# Ensure required environment variables are set (e.g., GOOGLE_CLOUD_PROJECT) bunx vertex-ai-mcp-server

Либо установите его глобально:

bun install -g vertex-ai-mcp-server # Then run: vertex-ai-mcp-server

Примечание: для автономного запуска требуется настроить необходимые переменные среды (например, GOOGLE_CLOUD_PROJECT , GOOGLE_CLOUD_LOCATION , учетные данные аутентификации, если не используется ADC) в среде оболочки перед выполнением команды.

Установка через Smithery

Чтобы автоматически установить Vertex AI Server для Claude Desktop через Smithery :

bunx -y @smithery/cli install @shariqriazz/vertex-ai-mcp-server --client claude

Бег с Клайном

  1. Настройте параметры MCP: добавьте/обновите конфигурацию в файле настроек Cline MCP (например, .roo/mcp.json ). У вас есть два основных способа настроить команду:Вариант A: использование Node (прямой путь — рекомендуется для разработки)Этот метод использует node для прямого запуска скомпилированного скрипта. Это полезно во время разработки, когда у вас есть код, клонированный локально.
    { "mcpServers": { "vertex-ai-mcp-server": { "command": "node", "args": [ "/full/path/to/your/vertex-ai-mcp-server/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-exp-03-25", // If AI_PROVIDER="vertex" (Example override) "GEMINI_MODEL_ID": "gemini-2.5-pro-exp-03-25", // 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... } }
    • Важно: Убедитесь, что путь args правильно указывает на файл build/index.js . Использование абсолютного пути может быть более надежным.

    Вариант B: использование NPX (требуется публикация пакета в npm)

    Этот метод использует npx для автоматической загрузки и запуска пакета сервера из реестра npm. Это удобно, если вы не хотите клонировать репозиторий.

    { "mcpServers": { "vertex-ai-mcp-server": { "command": "bunx", // Use bunx "args": [ "-y", // Auto-confirm installation "vertex-ai-mcp-server" // 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-exp-03-25", // If AI_PROVIDER="vertex" (Example override) "GEMINI_MODEL_ID": "gemini-2.5-pro-exp-03-25", // 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... } }
    • Убедитесь, что переменные среды в блоке env установлены правильно, либо соответствуют .env , либо явно определены здесь. Удалите комментарии из фактического файла JSON.
  2. Перезапуск/перезагрузка Cline: Cline должен обнаружить изменение конфигурации и запустить сервер.
  3. Использование инструментов: теперь вы можете использовать обширный список инструментов через Cline.

Разработка

  • Режим просмотра: bun run watch
  • Линтинг: bun run lint
  • Форматирование: bun run format

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Реализация сервера Model Context Protocol (MCP), который предоставляет инструменты для доступа к моделям Vertex AI Gemini от Google Cloud, поддерживая такие функции, как обоснование веб-поиска и прямые ответы на вопросы по кодированию и общие запросы.

  1. Функции
    1. Предоставляемые инструменты
      1. Запрос и генерация (с упором на ИИ)
      2. Инструменты исследования и анализа
      3. Операции файловой системы
      4. Комбинированные операции ИИ + файловой системы
    2. Предпосылки
      1. Настройка и установка
        1. Использование (автономное / NPX)
          1. Установка через Smithery
        2. Бег с Клайном
          1. Разработка
            1. Лицензия

              Related MCP Servers

              • -
                security
                A
                license
                -
                quality
                Model Context Protocol (MCP) server implementation that enables Claude Desktop to interact with Google's Gemini AI models.
                Last updated -
                53
                TypeScript
                MIT License
                • Apple
                • Linux
              • A
                security
                A
                license
                A
                quality
                🔍 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 -
                15
                82
                64
                TypeScript
                MIT License
                • Linux
              • -
                security
                -
                license
                -
                quality
                An 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 -
                1
                JavaScript
              • A
                security
                A
                license
                A
                quality
                A 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 -
                16
                3
                TypeScript
                MIT License
                • Linux
                • Apple

              View all related MCP servers

              ID: 4flmun3tjc