Skip to main content
Glama
shariqriazz

Vertex AI MCP Server

by shariqriazz

Vertex AI MCP-Server

Schmiedeabzeichen

Dieses Projekt implementiert einen Model Context Protocol (MCP)-Server, der eine umfassende Suite von Tools für die Interaktion mit den Vertex AI Gemini-Modellen von Google Cloud bereitstellt, wobei der Schwerpunkt auf Codierungsunterstützung und der Beantwortung allgemeiner Abfragen liegt.

Merkmale

  • Bietet Zugriff auf Vertex AI Gemini-Modelle über zahlreiche MCP-Tools.

  • Unterstützt die Erdung von Websuchanfragen ( answer_query_websearch ) und die direkte Beantwortung von Wissensfragen ( answer_query_direct ).

  • Konfigurierbare Modell-ID, Temperatur, Streaming-Verhalten, maximale Ausgabe-Token und Wiederholungseinstellungen über Umgebungsvariablen.

  • Verwendet standardmäßig die Streaming-API für eine potenziell bessere Reaktionsfähigkeit.

  • Enthält eine grundlegende Wiederholungslogik für vorübergehende API-Fehler.

  • Es werden minimale Sicherheitsfilter angewendet ( BLOCK_NONE ), um mögliche Blockierungen zu reduzieren (mit Vorsicht verwenden).

Related MCP server: MCP with Gemini Integration

Mitgelieferte Werkzeuge

Abfrage und Generierung (KI-fokussiert)

  • answer_query_websearch : Beantwortet eine Abfrage in natürlicher Sprache mithilfe des konfigurierten Vertex-KI-Modells, das mit Google-Suchergebnissen erweitert wurde.

  • answer_query_direct : Beantwortet eine Abfrage in natürlicher Sprache ausschließlich unter Verwendung des internen Wissens des konfigurierten Vertex-KI-Modells.

  • explain_topic_with_docs : Bietet eine ausführliche Erklärung für eine Abfrage zu einem bestimmten Softwarethema, indem Informationen hauptsächlich aus offiziellen Dokumenten zusammengefasst werden, die über eine Websuche gefunden wurden.

  • get_doc_snippets : Bietet präzise, maßgebliche Codeausschnitte oder knappe Antworten auf technische Fragen durch die Suche in der offiziellen Dokumentation.

  • generate_project_guidelines : Generiert ein strukturiertes Dokument mit Projektrichtlinien (Markdown) basierend auf einer angegebenen Liste von Technologien (optional mit Versionen) und verwendet dabei eine Websuche nach Best Practices.

Recherche- und Analysetools

  • code_analysis_with_docs : Analysiert Codeausschnitte, indem sie mit Best Practices aus der offiziellen Dokumentation verglichen werden, und identifiziert so potenzielle Fehler, Leistungsprobleme und Sicherheitslücken.

  • technical_comparison : Vergleicht mehrere Technologien, Frameworks oder Bibliotheken anhand bestimmter Kriterien und bietet detaillierte Vergleichstabellen mit Vor-/Nachteilen und Anwendungsfällen.

  • architecture_pattern_recommendation : Schlägt Architekturmuster für bestimmte Anwendungsfälle auf Grundlage bewährter Branchenmethoden mit Implementierungsbeispielen und Überlegungen vor.

  • dependency_vulnerability_scan : Analysiert Projektabhängigkeiten auf bekannte Sicherheitslücken und bietet detaillierte Informationen und Strategien zur Risikominderung.

  • database_schema_analyzer : Überprüft Datenbankschemata auf Normalisierungs-, Indizierungs- und Leistungsprobleme und schlägt Verbesserungen auf der Grundlage datenbankspezifischer Best Practices vor.

  • security_best_practices_advisor : Bietet Sicherheitsempfehlungen für bestimmte Technologien oder Szenarien mit Codebeispielen zur Implementierung sicherer Praktiken.

  • testing_strategy_generator : Erstellt umfassende Teststrategien für Anwendungen oder Funktionen und schlägt geeignete Testtypen mit Abdeckungszielen vor.

  • regulatory_compliance_advisor : Bietet Anleitungen zu regulatorischen Anforderungen für bestimmte Branchen (DSGVO, HIPAA usw.) mit Implementierungsansätzen zur Einhaltung der Vorschriften.

  • microservice_design_assistant : Hilft beim Entwerfen von Microservice-Architekturen für bestimmte Domänen mit Empfehlungen zu Servicegrenzen und Kommunikationsmustern.

  • documentation_generator : Erstellt umfassende Dokumentationen für Code, APIs oder Systeme und befolgt dabei die Best Practices der Branche für technische Dokumentation.

Dateisystemoperationen

  • read_file_content : Liest den gesamten Inhalt einer oder mehrerer Dateien. Geben Sie einen einzelnen Pfad oder ein Array von Pfaden an.

  • write_file_content : Erstellt neue Dateien oder überschreibt vorhandene Dateien vollständig. Das Argument „writes“ akzeptiert ein einzelnes Objekt ( {path, content} ) oder ein Array solcher Objekte.

  • edit_file_content : Nimmt zeilenbasierte Änderungen an einer Textdatei vor, gibt eine Diff-Vorschau zurück oder wendet Änderungen an.

  • list_directory_contents : Listet Dateien und Verzeichnisse direkt innerhalb eines angegebenen Pfads auf (nicht rekursiv).

  • get_directory_tree : Ruft eine rekursive Baumansicht von Dateien und Verzeichnissen als JSON ab.

  • move_file_or_directory : Verschiebt Dateien und Verzeichnisse oder benennt sie um.

  • search_filesystem : Sucht rekursiv nach Dateien/Verzeichnissen, die einem Namensmuster entsprechen, mit optionalen Ausschlüssen.

  • get_filesystem_info : Ruft detaillierte Metadaten (Größe, Datum, Typ, Berechtigungen) zu einer Datei oder einem Verzeichnis ab.

  • execute_terminal_command : Führt einen Shell-Befehl aus, optional mit Angabe cwd und timeout . Gibt stdout/stderr zurück.

Kombinierte KI- und Dateisystemoperationen

  • save_generate_project_guidelines : Generiert Projektrichtlinien basierend auf einem Tech-Stack und speichert das Ergebnis in einem angegebenen Dateipfad.

  • save_doc_snippet : Sucht Codeausschnitte aus der Dokumentation und speichert das Ergebnis in einem angegebenen Dateipfad.

  • save_topic_explanation : Generiert eine detaillierte Erklärung eines Themas basierend auf der Dokumentation und speichert das Ergebnis in einem angegebenen Dateipfad.

  • save_answer_query_direct : Beantwortet eine Abfrage nur unter Verwendung internen Wissens und speichert die Antwort in einem angegebenen Dateipfad.

  • save_answer_query_websearch : Beantwortet eine Abfrage mithilfe von Websuchergebnissen und speichert die Antwort in einem angegebenen Dateipfad.

(Hinweis: Eingabe-/Ausgabeschemata für jedes Tool sind in den jeweiligen Dateien in src/tools/ definiert und über den MCP-Server verfügbar gemacht.)

Voraussetzungen

  • Node.js (v18+)

  • Brötchen ( npm install -g bun )

  • Google Cloud-Projekt mit aktivierter Abrechnung.

  • Vertex AI API im GCP-Projekt aktiviert.

  • In Ihrer Umgebung konfigurierte Google Cloud-Authentifizierung (empfohlen werden Standardanmeldeinformationen der Anwendung über gcloud auth application-default login oder ein Dienstkontoschlüssel).

Einrichtung und Installation

  1. Projekt klonen/platzieren: Stellen Sie sicher, dass sich die Projektdateien am gewünschten Speicherort befinden.

  2. Abhängigkeiten installieren:

    bun install
  3. Umgebung konfigurieren:

    • Erstellen Sie eine .env Datei im Projektstamm (kopieren Sie .env.example ).

    • Legen Sie die erforderlichen und optionalen Umgebungsvariablen wie in .env.example beschrieben fest.

      • Setzen Sie AI_PROVIDER entweder auf "vertex" oder "gemini" .

      • Wenn AI_PROVIDER="vertex" , ist GOOGLE_CLOUD_PROJECT erforderlich.

      • Wenn AI_PROVIDER="gemini" , ist GEMINI_API_KEY erforderlich.

  4. Erstellen Sie den Server:

    bun run build

    Dadurch wird der TypeScript-Code in build/index.js kompiliert.

Verwendung (Standalone / NPX)

Nach der Veröffentlichung auf npm können Sie diesen Server direkt mit npx ausführen:

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

Alternativ können Sie es global installieren:

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

Hinweis: Für die eigenständige Ausführung müssen Sie vor der Ausführung des Befehls die erforderlichen Umgebungsvariablen (wie GOOGLE_CLOUD_PROJECT , GOOGLE_CLOUD_LOCATION , Authentifizierungsdaten, wenn ADC nicht verwendet wird) in Ihrer Shell-Umgebung festlegen.

Installation über Smithery

So installieren Sie Vertex AI Server für Claude Desktop automatisch über Smithery :

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

Laufen mit Cline

  1. MCP-Einstellungen konfigurieren: Fügen Sie die Konfiguration in Ihrer Cline MCP-Einstellungsdatei hinzu/aktualisieren Sie sie (z. B. .roo/mcp.json ). Sie haben zwei Möglichkeiten, den Befehl zu konfigurieren:

    Option A: Verwenden von Node (Direkter Pfad – für die Entwicklung empfohlen)

    Diese Methode verwendet node , um das kompilierte Skript direkt auszuführen. Dies ist während der Entwicklung nützlich, wenn Sie den Code lokal geklont haben.

    {
      "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...
      }
    }
    • Wichtig: Stellen Sie sicher, dass der args korrekt auf die Datei build/index.js verweist. Die Verwendung eines absoluten Pfads ist möglicherweise zuverlässiger.

    Option B: Verwenden von NPX (erfordert die Veröffentlichung des Pakets auf npm)

    Diese Methode verwendet npx , um das Serverpaket automatisch aus der npm-Registrierung herunterzuladen und auszuführen. Dies ist praktisch, wenn Sie das Repository nicht klonen möchten.

    {
      "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...
      }
    }
    • Stellen Sie sicher, dass die Umgebungsvariablen im env Block korrekt gesetzt sind. Sie müssen entweder mit .env übereinstimmen oder hier explizit definiert sein. Entfernen Sie Kommentare aus der eigentlichen JSON-Datei.

  2. Cline neu starten/neu laden: Cline sollte die Konfigurationsänderung erkennen und den Server starten.

  3. Tools verwenden: Sie können jetzt die umfangreiche Liste an Tools über Cline verwenden.

Entwicklung

  • Überwachungsmodus: bun run watch

  • Flusen: bun run lint

  • Formatierung: bun run format

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • A Model Context Protocol server for Wix AI tools

  • MCP (Model Context Protocol) server for Appwrite

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shariqriazz/vertex-ai-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server