Aiven
offiziellNavigieren Sie durch Ihre Aiven-Projekte und interagieren Sie mit den PostgreSQL®, Apache Kafka®, ClickHouse® und OpenSearch®-Diensten.
Was kann man mit Aiven MCP machen?
- Aiven-Dienste verwalten — Bitten Sie Ihren Assistenten, Dienste über
aiven_service_create,aiven_service_updateundaiven_service_listaufzulisten, zu erstellen, zu aktualisieren oder zu löschen. - Mit Kafka-Themen arbeiten — Lassen Sie Ihren Assistenten Themen mit
aiven_kafka_topic_createundaiven_kafka_topic_message_produceerstellen, lesen oder Nachrichten produzieren. - PostgreSQL-Abfragen ausführen — Lassen Sie Ihren Assistenten schreibgeschützte oder schreibende SQL-Anweisungen mit
aiven_pg_readundaiven_pg_writeausführen oder Abfragen überaiven_pg_optimize_queryoptimieren. - Kafka-Connectors verwalten — Bitten Sie Ihren Assistenten, Connectors mit
aiven_kafka_connect_create_connectorund zugehörigen Tools zu erstellen, anzuhalten, fortzusetzen oder zu löschen. - Anwendungen bereitstellen — Lassen Sie Ihren Assistenten Anwendungen aus einem Repository mit
aiven_application_createundaiven_application_redeployerstellen oder erneut bereitstellen. - Aiven-Dokumentation durchsuchen — Bitten Sie Ihren Assistenten, Antworten in offiziellen Dokumenten mit
aiven_docs_searchzu finden (nur gehosteter Server).
Dokumentation
Aiven MCP Server
Ein Model Context Protocol (MCP)-Server für die Aiven Cloud-Datenplattform.
Verwalten Sie PostgreSQL, Apache Kafka, Anwendungen und andere Aiven-Dienste direkt über KI-Assistenten wie Claude, Cursor und VS Code Copilot.
[!WARNING] Mit Vorsicht verwenden. Dieser MCP-Server kann Aiven-Dienste und -Daten in Ihrem Namen erstellen, ändern und löschen. KI-Agenten können basierend auf ihrer Interpretation Ihrer Eingabeaufforderungen destruktive Aktionen ausführen (Datenbanken löschen, Dienste entfernen, Nachrichten erzeugen). Sie sind vollständig verantwortlich für alle Aktionen, die über dieses Tool ausgeführt werden.
Berechtigungen: Der Zugriff wird durch die Aiven-Benutzerberechtigungen des authentifizierten Kontos gesteuert. Der MCP-Server kann nur Aktionen ausführen, die Ihr Aiven-Benutzer ausführen darf.
KI-Agenten-Sicherheit: KI-Agenten benötigen möglicherweise Zugangsdaten (Datenbank-Verbindungsstrings, Streaming-Tokens), um in Ihrem Namen zu handeln. Überprüfen Sie, was Ihr Agent tut, insbesondere in Produktionsumgebungen. Befolgen Sie die Sicherheitsrichtlinien Ihrer Organisation und führen Sie eine Risikobewertung durch, bevor Sie KI-Agenten Zugriff auf sensible Ressourcen gewähren.
Schnellstart
Option 1: Remote (von Aiven gehostet)
Der MCP-Server wird unter https://mcp.aiven.live/mcp gehostet. Ihr MCP-Client fordert Sie zur Autorisierung bei Aiven auf.
Claude Code
claude mcp add --scope user --transport http aiven-mcp "https://mcp.aiven.live/mcp"
Cursor
Oder fügen Sie manuell zu den Cursor-MCP-Einstellungen hinzu:
{
"mcpServers": {
"aiven-mcp": {
"url": "https://mcp.aiven.live/mcp"
}
}
}
VS Code / Copilot
Fügen Sie .vscode/mcp.json in Ihrem Arbeitsbereich hinzu:
{
"servers": {
"aiven-mcp": {
"type": "http",
"url": "https://mcp.aiven.live/mcp"
}
}
}
Nur-Lese-Modus (Remote)
Aktivieren Sie den Nur-Lese-Modus, indem Sie ?read_only=true zur URL hinzufügen. Alle Schreiboperationen werden vom MCP ausgeschlossen:
{
"mcpServers": {
"aiven-mcp": {
"url": "https://mcp.aiven.live/mcp?read_only=true"
}
}
}
Eingeschränkte Tools (Remote)
Reduzieren Sie die Tool-Oberfläche, die Ihrem KI-Agenten zur Verfügung steht, indem Sie ?services_scope= zur URL hinzufügen. Nützlich, wenn Sie nur mit einer Teilmenge der Aiven-Dienste arbeiten und den Kontext des Agenten fokussiert halten möchten. Kombinieren Sie Werte mit Kommas. core (Projekt-/Dienst-Erkennung) ist immer implizit enthalten.
Gültige Bereiche: all, core, pg, kafka, application, integrations. Verwenden Sie all, um explizit jedes Tool zu laden (entspricht dem Weglassen des Parameters). all kann nicht mit anderen Bereichen kombiniert werden.
{
"mcpServers": {
"aiven-mcp": {
"url": "https://mcp.aiven.live/mcp?services_scope=kafka"
}
}
}
Sie können auch mit read_only kombinieren:
https://mcp.aiven.live/mcp?services_scope=pg&read_only=true
Schreib-Ausnahmen im Nur-Lese-Modus (Remote)
Wenn read_only=true, fügen Sie ?write_allowlist= hinzu, um bestimmte Schreib-Tools wieder zu aktivieren, während alles andere schreibgeschützt bleibt. Nützlich, wenn Sie hauptsächlich Lesezugriff wünschen, aber dennoch eine Schreibaktion zulassen müssen, z. B. das Erstellen von Kafka-Themen. Kombinieren Sie mehrere Toolnamen mit Kommas. Wird ignoriert, wenn read_only nicht aktiviert ist.
https://mcp.aiven.live/mcp?read_only=true&write_allowlist=aiven_kafka_topic_create
Marketplace-Kunden (Remote)
Wenn Sie Aiven über einen Cloud-Marketplace abonniert haben, fügen Sie Ihren Marketplace als Pfadsegment hinzu, damit die Anmeldung die korrekte Konsole verwendet:
| Marketplace | Pfadsegment |
|---|---|
| AWS Marketplace | https://mcp.aiven.live/mcp/aws |
| Azure Marketplace | https://mcp.aiven.live/mcp/azure |
| Google Cloud Marketplace | https://mcp.aiven.live/mcp/gcp |
{
"mcpServers": {
"aiven-mcp": {
"url": "https://mcp.aiven.live/mcp/<marketplace>"
}
}
}
Das Pfadsegment kombiniert sich mit den obigen Abfrageparametern, z. B. https://mcp.aiven.live/mcp/gcp?services_scope=pg&read_only=true.
Option 2: stdio (lokal)
Führen Sie den Server lokal als untergeordneten Prozess Ihres MCP-Clients aus. Erfordert Node.js 18+.
Sie müssen Ihr Aiven-API-Token über die Umgebungsvariable AIVEN_TOKEN bereitstellen. Erstellen Sie hier ein Token.
Claude Code
claude mcp add --scope user aiven-mcp -e AIVEN_TOKEN=your-token-here -- npx -y mcp-aiven
Cursor, VS Code – fügen Sie zu Ihrer MCP-Client-Konfiguration hinzu:
{
"mcpServers": {
"aiven-mcp": {
"command": "npx",
"args": ["-y", "mcp-aiven"],
"env": {
"AIVEN_TOKEN": "your-token-here"
}
}
}
}
Speicherorte der Konfigurationsdateien:
- Cursor: Cursor-Einstellungen > MCP-Server
- VS Code:
.vscode/mcp.jsonin Ihrem Arbeitsbereich
Option 3: Lokale Entwicklung
Führen Sie einen lokalen Build des Servers aus (nützlich für Entwicklung und Tests):
pnpm install && pnpm generate:api-types && pnpm generate && pnpm build && AIVEN_TOKEN="<YOUR_TOKEN>" MCP_TRANSPORT="http" PORT=3000 node dist/index.js
Der Server lauscht standardmäßig auf Port 3000. Verbinden Sie Ihren MCP-Client mit http://localhost:3000/mcp.
Um eine Remote-Bereitstellung auf einen benutzerdefinierten Host zu verweisen (z. B. Ihren lokalen Build), setzen Sie MCP_HOST:
MCP_HOST=http://localhost:3000 node dist/index.js
Umgebungsvariablen
| Variable | Erforderlich | Standard | Beschreibung |
|---|---|---|---|
AIVEN_TOKEN | nur stdio | -- | Aiven-API-Token (hier erstellen) |
AIVEN_READ_ONLY | Nein | false | Auf true setzen, um nur schreibgeschützte Tools verfügbar zu machen |
AIVEN_SERVICES_SCOPE | Nein | -- | Kommagetrennte Bereiche, die verfügbar gemacht werden sollen (z. B. kafka, pg,kafka oder all). Gültig: all, core, pg, kafka, application, integrations. core ist immer enthalten. Wenn die Variable weggelassen oder all gesetzt wird, werden alle Tools geladen. |
AIVEN_ALLOW_SECRETS | Nein | false | Auf true setzen, um das Tool aiven_service_connection_info verfügbar zu machen, das Live-Zugangsdaten (Passwörter, Verbindungs-URIs, Zertifikate) in die Konversation zurückgibt. Deaktiviert, während AIVEN_READ_ONLY=true. |
AIVEN_WRITE_ALLOWLIST | Nein | -- | Kommagetrennte Toolnamen, die während AIVEN_READ_ONLY=true wieder aktiviert werden sollen (z. B. aiven_kafka_topic_create). Wird ignoriert, wenn der Nur-Lese-Modus nicht aktiviert ist. |
MCP_HOST | Nein | https://mcp.aiven.live | Überschreibt den Host der OAuth-geschützten Ressource |
MCP_TRANSPORT | Nein | stdio | Auf http setzen, um einen HTTP-Server statt stdio zu starten |
MCP_HTTP_RATE_LIMIT_MAX | Nein | 1000 | Maximale Anfragen pro Fenster auf POST /mcp (HTTP-Transport), pro Bearer-Token. Client-IP-Ratenbegrenzung wird bei Cloudflare erwartet. |
MCP_HTTP_RATE_LIMIT_WINDOW_MS | Nein | 60000 | Fensterlänge in Millisekunden für MCP_HTTP_RATE_LIMIT_MAX. |
EXTRA_PROTECTION | Nein | false | Auf true bei HTTP-Bereitstellungen setzen, um einen gültigen X-Edge-Auth-Header bei jeder Anfrage außer GET /health zu erfordern. Siehe Edge-Schutz-Rollout unten. |
MCP_EDGE_AUTH_SECRET | Wenn EXTRA_PROTECTION=true | -- | Gemeinsames Geheimnis; muss mit dem Wert übereinstimmen, den Cloudflare als X-Edge-Auth über Transform-Regeln injiziert. |
Im Remote-Modus (HTTP) wird AIVEN_TOKEN nicht benötigt. Ihr MCP-Client sendet Ihr Token als Bearer-Token mit jeder Anfrage.
Produktions-HTTP-Datenverkehr ist in zwei Ebenen ratenbegrenzt: Cloudflare erzwingt ein Limit pro Client-IP (im Cloudflare-Dashboard konfiguriert), und dieser Server erzwingt MCP_HTTP_RATE_LIMIT_* pro Bearer-Token auf POST /mcp.
Edge-Schutz-Rollout
Wenn EXTRA_PROTECTION=true, führt jede Abweichung zwischen MCP_EDGE_AUTH_SECRET und dem Wert, den Cloudflare als X-Edge-Auth injiziert, dazu, dass jede Anfrage 403 zurückgibt (außer GET /health). Beide Werte sind Umgebungs-/Konfigurationswerte auf gegenüberliegenden Seiten der Leitung, daher ist der einzige Wiederherstellungspfad, das Geheimnis zu korrigieren und erneut bereitzustellen oder Cloudflare zu aktualisieren.
In dieser Reihenfolge aktivieren:
- Cloudflare-Transform-Regel – Fügen Sie eine Regel hinzu, die
X-Edge-Auth(und, falls für PG-Tools verwendet,X-Client-IP) auf Datenverkehr zum MCP-Origin setzt. Notieren Sie den konfigurierten Geheimniswert. MCP_EDGE_AUTH_SECRET– Stellen Sie den Server mit dieser Umgebungsvariable bereit, die auf dasselbe Geheimnis wie die Transform-Regel gesetzt ist. Lassen SieEXTRA_PROTECTIONvorerst ungesetzt oderfalse; überprüfen Sie, ob der Origin weiterhin Datenverkehr akzeptiert.EXTRA_PROTECTION=true– Aktivieren Sie erst, nachdem die Schritte 1–2 live und abgeglichen sind. Bestätigen Sie, dass eine normale MCP-Anfrage erfolgreich ist und direkter Origin-Zugriff ohneX-Edge-Authabgelehnt wird.- Geheimnisrotation – Aktualisieren Sie Cloudflare und
MCP_EDGE_AUTH_SECRETzusammen (oder setzen Sie kurzzeitigEXTRA_PROTECTION=false), stellen Sie erneut bereit und aktivieren Sie dann wieder. Rotieren Sie niemals nur eine Seite allein, während das Flag aktiv ist.
Wenn EXTRA_PROTECTION=true beim Start und MCP_EDGE_AUTH_SECRET fehlt, beendet sich der Prozess sofort mit einem Fehler.
Während Ablehnungen fortbestehen, protokolliert der Server höchstens einmal alle 15 Minuten eine Fehlkonfigurationswarnung (zurückgesetzt nach einer Anfrage mit gültigem X-Edge-Auth), sodass eine Geheimnisabweichung in den Protokollen sichtbar ist, ohne eine Zeile pro abgelehnter Anfrage.
Tools
Kern
| Tool | Beschreibung |
|---|---|
aiven_project_list | Projekte auflisten |
aiven_project_get | Projektdetails abrufen |
aiven_list_project_clouds | Cloud-Plattformen für ein Projekt auflisten |
aiven_project_vpc_list | VPCs für ein Projekt auflisten |
aiven_service_list | Dienste auflisten |
aiven_service_type_plans | Pläne mit Cloud-Verfügbarkeit auflisten |
aiven_service_plan_pricing | Preise für einen Plan in einer bestimmten Cloud abrufen |
aiven_service_create | Einen Dienst erstellen |
aiven_service_get | Dienstinformationen abrufen |
aiven_service_update | Einen Dienst aktualisieren (Plan, Konfiguration, Stromversorgungsstatus) |
aiven_service_metrics_fetch | Metriken für verwaltete Datendienste abrufen |
aiven_service_application_metrics_get | Metriken für Anwendungsdienste abrufen |
aiven_project_get_service_logs | Dienstprotokolleinträge abrufen |
aiven_service_query_activity | Aktuelle Abfragen für einen Dienst abrufen |
aiven_project_get_event_logs | Projekt-Ereignisprotokolleinträge abrufen |
Kafka
| Tool | Beschreibung |
|---|---|
aiven_kafka_topic_list | Kafka-Themen auflisten |
aiven_kafka_topic_create | Ein Kafka-Thema erstellen |
aiven_kafka_topic_get | Kafka-Themainformationen abrufen |
aiven_kafka_topic_update | Ein Kafka-Thema aktualisieren |
aiven_kafka_topic_delete | Ein Kafka-Thema löschen |
aiven_kafka_topic_message_list | Nachrichten aus einem Kafka-Thema lesen |
aiven_kafka_topic_message_produce | Nachrichten in ein Kafka-Thema erzeugen |
aiven_kafka_connect_available_connectors | Verfügbare Connector-Typen auflisten |
aiven_kafka_connect_list | Laufende Connectors auflisten |
aiven_kafka_connect_create_connector | Einen Connector erstellen |
aiven_kafka_connect_edit_connector | Einen Connector bearbeiten |
aiven_kafka_connect_get_connector_status | Connector-Status abrufen |
aiven_kafka_connect_pause_connector | Einen Connector pausieren |
aiven_kafka_connect_resume_connector | Einen Connector fortsetzen |
aiven_kafka_connect_restart_connector | Einen Connector neu starten |
aiven_kafka_connect_delete_connector | Einen Connector löschen |
aiven_kafka_schema_registry_subjects | Schema-Registry-Subjekte auflisten |
aiven_kafka_schema_registry_subject_version_get | Schema-Registry-Subjektversion abrufen |
PostgreSQL
| Tool | Beschreibung |
|---|---|
aiven_pg_service_available_extensions | Verfügbare Erweiterungen auflisten |
aiven_pg_service_query_statistics | Abfragestatistiken abrufen |
aiven_pg_bouncer_create | Einen PgBouncer-Verbindungspool erstellen |
aiven_pg_bouncer_update | Einen PgBouncer-Verbindungspool aktualisieren |
aiven_pg_bouncer_delete | Einen PgBouncer-Verbindungspool löschen |
aiven_pg_read | Eine schreibgeschützte SQL-Abfrage ausführen |
aiven_pg_write | Eine SQL-Schreibanweisung ausführen (INSERT, UPDATE, DELETE, CREATE TABLE usw.) |
aiven_pg_optimize_query | KI-gestützte Abfrageoptimierung (EverSQL) |
Anwendungen
| Tool | Beschreibung |
|---|---|
aiven_application_create | Eine Containerfile/Dockerfile-Anwendung erstellen und initial bereitstellen; gibt 409 zurück, wenn der Dienst bereits existiert |
aiven_application_redeploy | Eine bestehende Anwendung aus ihrem konfigurierten Repository neu erstellen, ohne die Dienstkonfiguration zu ändern |
aiven_vcs_integration_list | Verbundene VCS-Konten (GitHub) auflisten |
aiven_vcs_integration_repository_list | Repositorys für eine VCS-Integration auflisten |
aiven_vcs_integration_repository_branch_list | Repository-Zweige und ihre aktuellen Commit-SHAs auflisten |
aiven_vcs_integration_repository_container_manifest_files_list | Kandidaten-Containerfile, Dockerfile und Compose-Manifeste finden |
aiven_vcs_integration_repository_scan_container_manifest | Kandidaten-Aiven-Dienstkonfigurationen aus einem Containerfile, Dockerfile oder unterstützten Teilen einer Compose-Datei ableiten |
Dokumentation
| Tool | Beschreibung |
|---|---|
aiven_docs_search | Durchsuchen Sie die offizielle Aiven-Dokumentation in natürlicher Sprache. Nur auf dem gehosteten Server verfügbar (https://mcp.aiven.live/mcp) – nicht in selbst gehosteten Bereitstellungen verfügbar. |
Mitwirken
Siehe CONTRIBUTING.md für Entwicklungseinrichtung, lokale Ausführung und das Hinzufügen neuer Tools.