MCP-Server registrieren

Die Agent Registry fungiert als zentraler Katalog, indem sie MCP-Serverendpunkte (Model Context Protocol) und die spezifischen Tools registriert und verwaltet, die sie bereitstellen.

In diesem Dokument wird beschrieben, wie Sie MCP-Server registrieren und wie ihre Tool-Spezifikationen in der Agent Registry verwaltet werden.

Automatische Erkennung von Google Cloud MCP-Servern

Offizielle Google- und Google Cloud Remote-MCP-Server werden automatisch registriert und in die Agent Registry aufgenommen. Verfügbare Google- und Google Cloud Remote-MCP- Server sind in der Dokumentation zu Google Cloud MCP-Servern unter Unterstützte Produkte aufgeführt.

Wenn Sie eine unterstützte Google Cloud API in Ihrem Projekt aktivieren, z. B. die Compute Engine API, werden der entsprechende MCP Server und seine Tools sofort registriert und in der Agent Registry zur Erkennung verfügbar gemacht. Sie müssen die Tool-Spezifikationen für diese Server nicht manuell konfigurieren oder hochladen.

Umfang und Bindungen für von Google verwaltete MCP-Server

Von Google verwaltete Remote-MCP-Server werden automatisch am global-Standort Ihres Projekts registriert. Da sich diese integrierten Google-Server global befinden, müssen Sie alle IAM-Bindungen (Identity and Access Management) für sie im globalen Umfang anwenden, indem Sie das Flag --region=global angeben. Regionale IAM-Bindungen wie --region=us-central1 werden für diese globalen Remote-MCP-Server nicht unterstützt und geben einen NOT_FOUND-Fehler zurück.

MCP-Server aus GKE registrieren

Sie können die automatische Registrierung für benutzerdefinierte MCP-Server konfigurieren, die in Google Kubernetes Engine (GKE) bereitgestellt werden, indem Sie Ihren GKE-Bereitstellungen das Label registry.gke.io/functional-type: "MCP_SERVER" hinzufügen.

Damit die Agent Registry eine Introspektionsprüfung durchführen und Ihre MCP-Tools erkennen kann, muss Ihre Bereitstellung auch Annotationen enthalten, in denen die Endpunkt-URLs und die Details der Funktionen des Servers deklariert sind. Konfigurieren Sie außerdem die Workload Identity mit der Annotation iam.gke.io/spiffe-identity-type: agent-identity, um die sichere authentifizierte Kommunikation zu ermöglichen.

Das folgende Beispiel zeigt ein GKE-MCP-Serverbereitstellungsmanifest mit diesen Konfigurationen.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-mcp-server
  labels:
    # GKE takes this label and registers the deployment as an MCP server to the registry
    registry.gke.io/functional-type: "MCP_SERVER"
  annotations:
    # A list of endpoint URLs where the GKE controller can access this MCP server
    modelcontextprotocol.info/urls: |
      - https://my-mcp-server.default.svc.cluster.local/mcp
    # Defines structural capabilities for the MCP server card
    modelcontextprotocol.info/capabilities: |
      card:
        endpoint: "/mcp"
        protocol: "HTTP"
spec:
  selector:
    matchLabels:
      app: my-mcp-server
  template:
    metadata:
      annotations:
        # Workload Identity annotation for identity and access management
        iam.gke.io/spiffe-identity-type: agent-identity
      labels:
        app: my-mcp-server
    spec:
      containers:
      - name: server
        image: gcr.io/my-project/my-mcp-server:1.0.0

Wenn Sie die Bereitstellung anwenden, versucht GKE automatisch, die Tool-Spezifikation vom Server abzurufen, und registriert die Tools direkt im Datenmodell der Agent Registry.

Externe MCP-Server registrieren

Wenn Sie Tools verwalten und wiederverwenden möchten, die von externen Servern oder benutzerdefinierten APIs bereitgestellt werden, müssen Sie den MCP-Server explizit registrieren.

Wenn Sie einen MCP-Server manuell registrieren, registriert die Agent Registry den Endpunkt. Der Server wird jedoch nicht automatisch introspektiert, um zu ermitteln, welche Tools verfügbar sind. Damit Nutzer die genauen Tools finden können, die auf Ihrem MCP-Server verfügbar sind, müssen Sie die Tool-Spezifikationen während der Registrierung angeben, indem Sie eine toolspec.json-Datei hochladen.

Hinweis

Richten Sie die Agent Registry ein, bevor Sie beginnen. Sie benötigen die Projekt-ID, um diese Aufgaben auszuführen.

Wenn Sie die gcloud CLI-Befehle in diesem Dokument verwenden möchten, müssen Sie Ihre Google Cloud CLI-Umgebung eingerichtet haben.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Agent Registry API Editor (roles/agentregistry.editor) für das Projekt zu erteilen, um die Berechtigungen zu erhalten, die Sie zum manuellen Registrieren von MCP-Servern in der Agent Registry benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Tool-Spezifikation vorbereiten

Erstellen Sie eine toolspec.json-Datei, in der die Tools beschrieben sind, die der Server bereitstellt. Die maximale Dateigröße für diese Spezifikationsdatei beträgt 10 KB.

Die JSON-Datei muss der MCP-Spezifikation für Tool-Schemas entsprechen, z. B.:

{
  "tools": [
    {
      "name": "get_customer_info",
      "description": "Retrieves customer details from the database.",
      "annotations": {
        "title": "Get Customer Info",
        "readOnlyHint": true,
        "idempotentHint": true
      }
    },
    {
      "name": "create_support_ticket",
      "description": "Creates a new support ticket in the issue tracking system.",
      "annotations": {
        "title": "Create Support Ticket",
        "destructiveHint": true,
        "idempotentHint": false,
        "openWorldHint": true
      }
    }
  ]
}

Detaillierte strukturelle Anforderungen finden Sie unter JSON-Schemas und in der REST-Referenz.

Server und Tools registrieren

Registrieren Sie den MCP-Server und laden Sie die Tool-Definition gleichzeitig hoch:

Console

  1. Rufen Sie in der Google Cloud Console Agent Registry auf:

    Zu Agent Registry

  2. Wählen Sie in der Projektauswahl das Google Cloud Projekt aus, in dem Sie die Agent Registry eingerichtet haben.

  3. Wählen Sie den Tab MCP-Server aus.

  4. Klicken Sie auf MCP-Server hinzufügen.

  5. Geben Sie im Bereich MCP-Serverdetails den Anzeigenamen, eine Beschreibung und die geografische Region ein.

  6. Geben Sie im Bereich Tool-Spezifikation die MCP-Serverendpunkt-URL ein und fügen Sie den Inhalt Ihrer toolspec.json-Datei ein.

    Optional können Sie in diesem Bereich auf Tools importieren klicken, um die MCP-Tools aus der URL zu importieren. Diese Option funktioniert nur, wenn die Endpunkt-URL Ihres MCP-Servers öffentlich im Internet gehostet wird. Sie können diese Funktion nicht verwenden, um Tools von privat gehosteten MCP-Servern zu importieren.

  7. Klicken Sie auf Weiter.

    Im Bereich MCP-Tools auswählen wird eine Liste von Tools mit Namen und Beschreibungen von Ihrem MCP-Server angezeigt.

  8. Wählen Sie alle MCP-Tools aus, die Sie einbeziehen möchten. Sie können Tools in der Liste nach Name oder Wert filtern.

  9. Klicken Sie auf Speichern.

gcloud

Registrieren Sie den MCP-Server mit der Tool-Spezifikation:

gcloud agent-registry services create SERVER_NAME \
  --project=PROJECT_ID \
  --location=REGION \
  --display-name="DISPLAY_NAME" \
  --mcp-server-spec-type=tool-spec \
  --mcp-server-spec-content=@toolspec.json \
  --interfaces=url=SERVER_URL,protocolBinding=PROTOCOL

Ersetzen Sie Folgendes:

  • SERVER_NAME: Der Name, den Sie Ihrem MCP-Server geben möchten, z. B. custom-mcp-server.
  • PROJECT_ID: Die Projekt-ID.
  • REGION: Die Registry-Region.
  • DISPLAY_NAME: Der für Menschen lesbare Name, den Sie Ihrem Server geben möchten, z. B. Custom MCP Server.
  • SERVER_URL: Die Endpunkt-URL des MCP-Servers, z. B. https://api.example.com/mcp.
  • PROTOCOL: Die Protokollbindung für den Endpunkt. Gültige Werte sind jsonrpc, http-json oder grpc. Für MCP-Server ist dieser Wert oft jsonrpc.

Terraform

Wenn Sie einen MCP-Server registrieren und seine Tools angeben möchten, konfigurieren Sie eine google_agent_registry_service-Ressource mit dem Block mcp_server_spec:

resource "google_agent_registry_service" "mcp_server" {
  location     = "REGION"
  service_id   = "SERVER_NAME"
  display_name = "DISPLAY_NAME"
  description  = "An external MCP server registered using Terraform."

  interfaces {
    url              = "SERVER_URL"
    protocol_binding = "JSONRPC"
  }

  mcp_server_spec {
    type    = "TOOL_SPEC"
    content = file("toolspec.json")
  }
}

output "server_resource_name" {
  description = "The generated read-only Server resource name."
  value       = google_agent_registry_service.mcp_server.registry_resource
}

Ersetzen Sie Folgendes:

  • REGION: Die Registry-Region.
  • SERVER_NAME: Der Name, den Sie Ihrem MCP-Server geben möchten, z. B. custom-mcp-server.
  • DISPLAY_NAME: Der für Menschen lesbare Name, den Sie Ihrem Server geben möchten, z. B. Custom MCP Server.
  • SERVER_URL: Die Endpunkt-URL des MCP-Servers, z. B. https://api.example.com/mcp.

Registrierung bestätigen

Listen Sie die Details Ihres neu registrierten MCP-Servers auf, filtern Sie sie und rufen Sie sie auf. Um zu bestätigen, dass Ihr MCP-Server erfolgreich registriert wurde, können Sie die Server in Ihrer Registry auflisten.