Aiven

resmi

Aiven projelerinizde gezinin ve PostgreSQL®, Apache Kafka®, ClickHouse® ile OpenSearch® hizmetleriyle etkileşime geçin.

Aiven MCP ile neler yapabilirsiniz?

  • Aiven hizmetlerini yönetin — Asistanınızdan aiven_service_create, aiven_service_update ve aiven_service_list aracılığıyla hizmetleri listelemesini, oluşturmasını, güncellemesini veya silmesini isteyin.
  • Kafka konularıyla çalışın — Asistanınızın aiven_kafka_topic_create ve aiven_kafka_topic_message_produce kullanarak konular oluşturmasını, okumasını veya mesaj üretmesini sağlayın.
  • PostgreSQL sorguları çalıştırın — Asistanınızın aiven_pg_read ve aiven_pg_write ile salt okunur veya yazma SQL ifadeleri yürütmesine veya aiven_pg_optimize_query ile sorguları optimize etmesine izin verin.
  • Kafka bağlayıcılarını yönetin — Asistanınızdan aiven_kafka_connect_create_connector ve ilgili araçları kullanarak bağlayıcılar oluşturmasını, duraklatmasını, sürdürmesini veya silmesini isteyin.
  • Uygulamaları dağıtın — Asistanınızın aiven_application_create ve aiven_application_redeploy ile bir depodan uygulamalar oluşturmasını veya yeniden dağıtmasını sağlayın.
  • Aiven belgelerinde arama yapın — Asistanınızdan aiven_docs_search (yalnızca barındırılan sunucu) kullanarak resmi belgelerde yanıt bulmasını isteyin.

Dokümantasyon

Aiven MCP Sunucusu

Aiven bulut veri platformu için bir Model Context Protocol (MCP) sunucusu.

PostgreSQL, Apache Kafka, uygulamalar ve diğer Aiven hizmetlerini Claude, Cursor ve VS Code Copilot gibi yapay zeka asistanlarından doğrudan yönetin.

[!UYARI] Dikkatli kullanın. Bu MCP sunucusu sizin adınıza Aiven hizmetlerini oluşturabilir, değiştirebilir ve silebilir. Yapay zeka ajanları, istemlerinizi yorumlamalarına bağlı olarak yıkıcı eylemler (veritabanlarını silme, hizmetleri kaldırma, mesaj üretme) gerçekleştirebilir. Bu araç üzerinden yapılan tüm işlemlerden tamamen siz sorumlusunuz.

İzinler: Erişim, kimliği doğrulanmış hesapla ilişkili Aiven kullanıcı izinleri tarafından yönetilir. MCP sunucusu yalnızca Aiven kullanıcınızın yapmasına izin verilen eylemleri gerçekleştirebilir.

Yapay Zeka Ajan Güvenliği: Yapay zeka ajanları, sizin adınıza hareket etmek için erişim kimlik bilgilerine (veritabanı bağlantı dizeleri, akış token'ları) ihtiyaç duyabilir. Özellikle üretim ortamlarında ajanınızın ne yaptığını gözden geçirin. Kuruluşunuzun güvenlik politikalarını izleyin ve yapay zeka ajanlarına hassas kaynaklara erişim vermeden önce bir risk değerlendirmesi yapın.

Hızlı Başlangıç

Seçenek 1: Uzaktan (Aiven tarafından barındırılan)

MCP sunucusu https://mcp.aiven.live/mcp adresinde barındırılır. MCP istemciniz, Aiven'de yetkilendirme yapmanızı isteyecektir.

Claude Code

claude mcp add --scope user --transport http aiven-mcp "https://mcp.aiven.live/mcp"

Cursor

Install MCP Server

Veya Cursor MCP ayarlarına manuel olarak ekleyin:

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp"
    }
  }
}

VS Code / Copilot

Çalışma alanınızdaki .vscode/mcp.json öğesine ekleyin:

{
  "servers": {
    "aiven-mcp": {
      "type": "http",
      "url": "https://mcp.aiven.live/mcp"
    }
  }
}

Salt Okunur Mod (Uzaktan)

URL'ye ?read_only=true ekleyerek salt okunur modu etkinleştirin. Tüm yazma işlemleri MCP'den hariç tutulacaktır:

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp?read_only=true"
    }
  }
}

Kapsamlı Araçlar (Uzaktan)

URL'ye ?services_scope= ekleyerek yapay zeka ajanınıza sunulan araç yüzeyini azaltın. Yalnızca belirli bir Aiven hizmet alt kümesiyle çalışıyorsanız ve ajanın bağlamını odaklı tutmak istiyorsanız kullanışlıdır. Değerleri virgülle birleştirin. core (proje/hizmet keşfi) her zaman örtük olarak dahil edilir.

Geçerli kapsamlar: all, core, pg, kafka, application, integrations. Tüm araçları açıkça yüklemek için all kullanın (parametreyi atlamakla aynı). all diğer kapsamlarla birleştirilemez.

{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp?services_scope=kafka"
    }
  }
}

Ayrıca read_only ile birleştirebilirsiniz:

https://mcp.aiven.live/mcp?services_scope=pg&read_only=true

Salt Okunur Modda Yazma İstisnaları (Uzaktan)

read_only=true olduğunda, belirli yazma araçlarını yeniden etkinleştirmek için ?write_allowlist= ekleyin; diğer her şey salt okunur kalır. Çoğunlukla okuma erişimi istediğinizde ancak yine de bir yazma eylemine (örneğin Kafka konuları oluşturma) izin vermeniz gerektiğinde kullanışlıdır. Birden fazla araç adını virgülle birleştirin. read_only etkin değilse yok sayılır.

https://mcp.aiven.live/mcp?read_only=true&write_allowlist=aiven_kafka_topic_create

Pazaryeri Müşterileri (Uzaktan)

Aiven'a bir bulut pazaryeri aracılığıyla abone olduysanız, oturum açmanın doğru konsolu kullanması için pazaryerinizi bir yol bölümü olarak ekleyin:

PazaryeriYol bölümü
AWS Pazaryerihttps://mcp.aiven.live/mcp/aws
Azure Pazaryerihttps://mcp.aiven.live/mcp/azure
Google Cloud Pazaryerihttps://mcp.aiven.live/mcp/gcp
{
  "mcpServers": {
    "aiven-mcp": {
      "url": "https://mcp.aiven.live/mcp/<marketplace>"
    }
  }
}

Yol bölümü yukarıdaki sorgu parametreleriyle birleşir, örneğin https://mcp.aiven.live/mcp/gcp?services_scope=pg&read_only=true.

Seçenek 2: stdio (yerel)

Sunucuyu MCP istemcinizin alt süreci olarak yerel olarak çalıştırın. Node.js 18+ gerektirir.

Aiven API token'ınızı AIVEN_TOKEN ortam değişkeni aracılığıyla sağlamanız gerekir. Buradan bir token oluşturun.

Claude Code

claude mcp add --scope user aiven-mcp -e AIVEN_TOKEN=your-token-here -- npx -y mcp-aiven

Cursor, VS Code -- MCP istemci yapılandırmanıza ekleyin:

{
  "mcpServers": {
    "aiven-mcp": {
      "command": "npx",
      "args": ["-y", "mcp-aiven"],
      "env": {
        "AIVEN_TOKEN": "your-token-here"
      }
    }
  }
}

Yapılandırma dosyası konumları:

  • Cursor: Cursor Ayarları > MCP Sunucuları
  • VS Code: Çalışma alanınızda .vscode/mcp.json

Seçenek 3: Yerel geliştirme

Sunucunun yerel bir derlemesini çalıştırın (geliştirme ve test için kullanışlıdır):

pnpm install && pnpm generate:api-types && pnpm generate && pnpm build && AIVEN_TOKEN="<YOUR_TOKEN>" MCP_TRANSPORT="http" PORT=3000 node dist/index.js

Sunucu varsayılan olarak 3000 numaralı bağlantı noktasını dinler. MCP istemcinizi http://localhost:3000/mcp adresine bağlayın.

Uzak bir dağıtımı özel bir ana bilgisayara (ör. yerel derlemeniz) yönlendirmek için MCP_HOST ayarlayın:

MCP_HOST=http://localhost:3000 node dist/index.js

Ortam Değişkenleri

DeğişkenGerekliVarsayılanAçıklama
AIVEN_TOKENyalnızca stdio--Aiven API token'ı (buradan oluşturun)
AIVEN_READ_ONLYHayırfalseYalnızca salt okunur araçları sunmak için true olarak ayarlayın
AIVEN_SERVICES_SCOPEHayır--Sunulacak virgülle ayrılmış kapsamlar (ör. kafka, pg,kafka veya all). Geçerli: all, core, pg, kafka, application, integrations. core her zaman dahildir. Değişkeni atlamak veya all ayarlamak tüm araçları yükler.
AIVEN_ALLOW_SECRETSHayırfalseaiven_service_connection_info aracını sunmak için true olarak ayarlayın; bu araç canlı kimlik bilgilerini (parolalar, bağlantı URI'leri, sertifikalar) sohbete döndürür. AIVEN_READ_ONLY=true sırasında devre dışıdır.
AIVEN_WRITE_ALLOWLISTHayır--AIVEN_READ_ONLY=true sırasında yeniden etkinleştirilecek virgülle ayrılmış araç adları (ör. aiven_kafka_topic_create). Salt okunur mod etkin değilse yok sayılır.
MCP_HOSTHayırhttps://mcp.aiven.liveOAuth korumalı kaynak ana bilgisayarını geçersiz kılın
MCP_TRANSPORTHayırstdiostdio yerine bir HTTP sunucusu başlatmak için http olarak ayarlayın
MCP_HTTP_RATE_LIMIT_MAXHayır1000POST /mcp (HTTP taşıma) üzerinde taşıyıcı token başına pencere başına maksimum istek. İstemci IP hız sınırlamasının Cloudflare'de olması beklenir.
MCP_HTTP_RATE_LIMIT_WINDOW_MSHayır60000MCP_HTTP_RATE_LIMIT_MAX için milisaniye cinsinden pencere uzunluğu.
EXTRA_PROTECTIONHayırfalseHTTP dağıtımlarında GET /health dışındaki her istekte geçerli bir X-Edge-Auth başlığı gerektirmek için true olarak ayarlayın. Aşağıdaki Edge koruma dağıtımına bakın.
MCP_EDGE_AUTH_SECRETEXTRA_PROTECTION=true olduğunda--Paylaşılan gizli anahtar; Cloudflare'in Dönüştürme Kuralları aracılığıyla X-Edge-Auth olarak enjekte ettiği değerle eşleşmelidir.

Uzaktan (HTTP) modda AIVEN_TOKEN gerekmez. MCP istemciniz token'ınızı her istekle birlikte bir Taşıyıcı token olarak gönderir.

Üretim HTTP trafiği iki katmanda hız sınırına tabidir: Cloudflare istemci başına IP sınırı uygular (Cloudflare panosunda yapılandırılır) ve bu sunucu POST /mcp üzerinde taşıyıcı token başına MCP_HTTP_RATE_LIMIT_* uygular.

Edge koruma dağıtımı

EXTRA_PROTECTION=true olduğunda, MCP_EDGE_AUTH_SECRET ile Cloudflare'in X-Edge-Auth olarak enjekte ettiği değer arasındaki herhangi bir uyumsuzluk her isteğin 403 döndürmesine neden olur (GET /health hariç). Her iki değer de hattın karşıt taraflarında ortam/yapılandırma olduğundan, tek kurtarma yolu gizli anahtarı düzeltmek ve yeniden dağıtmak veya Cloudflare'i güncellemektir.

Bu sırayla etkinleştirin:

  1. Cloudflare Dönüştürme Kuralı — MCP kaynağına giden trafikte X-Edge-Auth (ve PG araçları için kullanılıyorsa X-Client-IP) ayarlayan bir kural ekleyin. Yapılandırdığınız gizli değeri not edin.
  2. MCP_EDGE_AUTH_SECRET — Sunucuyu bu ortam değişkeni Dönüştürme Kuralı ile aynı gizli anahtara ayarlanmış şekilde dağıtın. Şimdilik EXTRA_PROTECTION ayarlanmamış veya false bırakın; kaynağın trafiği hâlâ kabul ettiğini doğrulayın.
  3. EXTRA_PROTECTION=true — Yalnızca 1-2. adımlar canlı ve eşleşmiş durumdayken etkinleştirin. Normal bir MCP isteğinin başarılı olduğunu ve X-Edge-Auth olmadan doğrudan kaynak erişiminin reddedildiğini doğrulayın.
  4. Gizli anahtar döndürme — Cloudflare ve MCP_EDGE_AUTH_SECRET birlikte güncelleyin (veya kısaca EXTRA_PROTECTION=false ayarlayın), yeniden dağıtın, ardından yeniden etkinleştirin. Bayrak açıkken asla yalnızca bir tarafı döndürmeyin.

Başlangıçta EXTRA_PROTECTION=true ve MCP_EDGE_AUTH_SECRET eksikse, süreç bir hatayla hemen çıkar.

Reddetmeler devam ederken, sunucu en fazla 15 dakikada bir yanlış yapılandırma uyarısı günlüğe kaydeder (geçerli X-Edge-Auth içeren bir istekten sonra sıfırlanır), böylece gizli anahtar uyumsuzluğu, reddedilen her istek için bir satır olmadan günlüklerde görünür olur.

Araçlar

Çekirdek

AraçAçıklama
aiven_project_listProjeleri listele
aiven_project_getProje ayrıntılarını al
aiven_list_project_cloudsBir proje için bulut platformlarını listele
aiven_project_vpc_listBir proje için VPC'leri listele
aiven_service_listHizmetleri listele
aiven_service_type_plansBulut kullanılabilirliği olan planları listele
aiven_service_plan_pricingBelirli bir bulutta bir plan için fiyatlandırmayı al
aiven_service_createBir hizmet oluştur
aiven_service_getHizmet bilgilerini al
aiven_service_updateBir hizmeti güncelle (plan, yapılandırma, güç durumu)
aiven_service_metrics_fetchYönetilen veri hizmetleri için metrikleri getir
aiven_service_application_metrics_getUygulama hizmetleri için metrikleri getir
aiven_project_get_service_logsHizmet günlük girişlerini al
aiven_service_query_activityBir hizmet için güncel sorguları getir
aiven_project_get_event_logsProje olay günlüğü girişlerini al

Kafka

AraçAçıklama
aiven_kafka_topic_listKafka konularını listele
aiven_kafka_topic_createBir Kafka konusu oluştur
aiven_kafka_topic_getKafka konusu bilgilerini al
aiven_kafka_topic_updateBir Kafka konusunu güncelle
aiven_kafka_topic_deleteBir Kafka konusunu sil
aiven_kafka_topic_message_listBir Kafka konusundan mesajları oku
aiven_kafka_topic_message_produceBir Kafka konusuna mesaj üret
aiven_kafka_connect_available_connectorsKullanılabilir bağlayıcı türlerini listele
aiven_kafka_connect_listÇalışan bağlayıcıları listele
aiven_kafka_connect_create_connectorBir bağlayıcı oluştur
aiven_kafka_connect_edit_connectorBir bağlayıcıyı düzenle
aiven_kafka_connect_get_connector_statusBağlayıcı durumunu al
aiven_kafka_connect_pause_connectorBir bağlayıcıyı duraklat
aiven_kafka_connect_resume_connectorBir bağlayıcıyı sürdür
aiven_kafka_connect_restart_connectorBir bağlayıcıyı yeniden başlat
aiven_kafka_connect_delete_connectorBir bağlayıcıyı sil
aiven_kafka_schema_registry_subjectsSchema Registry konularını listele
aiven_kafka_schema_registry_subject_version_getSchema Registry konu sürümünü al

PostgreSQL

AraçAçıklama
aiven_pg_service_available_extensionsKullanılabilir uzantıları listele
aiven_pg_service_query_statisticsSorgu istatistiklerini getir
aiven_pg_bouncer_createBir PgBouncer bağlantı havuzu oluştur
aiven_pg_bouncer_updateBir PgBouncer bağlantı havuzunu güncelle
aiven_pg_bouncer_deleteBir PgBouncer bağlantı havuzunu sil
aiven_pg_readSalt okunur bir SQL sorgusu çalıştır
aiven_pg_writeBir yazma SQL ifadesi çalıştır (INSERT, UPDATE, DELETE, CREATE TABLE vb.)
aiven_pg_optimize_queryYapay zeka destekli sorgu optimizasyonu (EverSQL)

Uygulamalar

AraçAçıklama
aiven_application_createBir Containerfile/Dockerfile uygulaması oluştur ve başlangıçta dağıt; hizmet zaten varsa 409 döndürür
aiven_application_redeployHizmet yapılandırmasını değiştirmeden mevcut bir uygulamayı yapılandırılmış deposundan yeniden derle
aiven_vcs_integration_listBağlı VCS (GitHub) hesaplarını listele
aiven_vcs_integration_repository_listBir VCS entegrasyonu için depoları listele
aiven_vcs_integration_repository_branch_listDepo dallarını ve geçerli commit SHA'larını listele
aiven_vcs_integration_repository_container_manifest_files_listAday Containerfile, Dockerfile ve Compose bildirimlerini bul
aiven_vcs_integration_repository_scan_container_manifestBir Containerfile, Dockerfile veya bir Compose dosyasının desteklenen bölümlerinden aday Aiven hizmet yapılandırmalarını türet

Dokümantasyon

AraçAçıklama
aiven_docs_searchResmi Aiven dokümantasyonunu doğal dilde arayın. Yalnızca barındırılan sunucuda (https://mcp.aiven.live/mcp) kullanılabilir — kendi kendine barındırılan dağıtımlarda sunulmaz.

Katkıda Bulunma

Geliştirme kurulumu, yerel çalıştırma ve yeni araçlar ekleme için CONTRIBUTING.md dosyasına bakın.

Lisans

Apache-2.0