Aiven
resmiAiven 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_updateveaiven_service_listaracılığıyla hizmetleri listelemesini, oluşturmasını, güncellemesini veya silmesini isteyin. - Kafka konularıyla çalışın — Asistanınızın
aiven_kafka_topic_createveaiven_kafka_topic_message_producekullanarak konular oluşturmasını, okumasını veya mesaj üretmesini sağlayın. - PostgreSQL sorguları çalıştırın — Asistanınızın
aiven_pg_readveaiven_pg_writeile salt okunur veya yazma SQL ifadeleri yürütmesine veyaaiven_pg_optimize_queryile sorguları optimize etmesine izin verin. - Kafka bağlayıcılarını yönetin — Asistanınızdan
aiven_kafka_connect_create_connectorve 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_createveaiven_application_redeployile 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
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:
| Pazaryeri | Yol bölümü |
|---|---|
| AWS Pazaryeri | https://mcp.aiven.live/mcp/aws |
| Azure Pazaryeri | https://mcp.aiven.live/mcp/azure |
| Google Cloud Pazaryeri | https://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şken | Gerekli | Varsayılan | Açıklama |
|---|---|---|---|
AIVEN_TOKEN | yalnızca stdio | -- | Aiven API token'ı (buradan oluşturun) |
AIVEN_READ_ONLY | Hayır | false | Yalnızca salt okunur araçları sunmak için true olarak ayarlayın |
AIVEN_SERVICES_SCOPE | Hayı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_SECRETS | Hayır | false | aiven_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_ALLOWLIST | Hayı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_HOST | Hayır | https://mcp.aiven.live | OAuth korumalı kaynak ana bilgisayarını geçersiz kılın |
MCP_TRANSPORT | Hayır | stdio | stdio yerine bir HTTP sunucusu başlatmak için http olarak ayarlayın |
MCP_HTTP_RATE_LIMIT_MAX | Hayır | 1000 | POST /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_MS | Hayır | 60000 | MCP_HTTP_RATE_LIMIT_MAX için milisaniye cinsinden pencere uzunluğu. |
EXTRA_PROTECTION | Hayır | false | HTTP 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_SECRET | EXTRA_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:
- Cloudflare Dönüştürme Kuralı — MCP kaynağına giden trafikte
X-Edge-Auth(ve PG araçları için kullanılıyorsaX-Client-IP) ayarlayan bir kural ekleyin. Yapılandırdığınız gizli değeri not edin. MCP_EDGE_AUTH_SECRET— Sunucuyu bu ortam değişkeni Dönüştürme Kuralı ile aynı gizli anahtara ayarlanmış şekilde dağıtın. ŞimdilikEXTRA_PROTECTIONayarlanmamış veyafalsebırakın; kaynağın trafiği hâlâ kabul ettiğini doğrulayın.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 veX-Edge-Autholmadan doğrudan kaynak erişiminin reddedildiğini doğrulayın.- Gizli anahtar döndürme — Cloudflare ve
MCP_EDGE_AUTH_SECRETbirlikte güncelleyin (veya kısacaEXTRA_PROTECTION=falseayarlayı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_list | Projeleri listele |
aiven_project_get | Proje ayrıntılarını al |
aiven_list_project_clouds | Bir proje için bulut platformlarını listele |
aiven_project_vpc_list | Bir proje için VPC'leri listele |
aiven_service_list | Hizmetleri listele |
aiven_service_type_plans | Bulut kullanılabilirliği olan planları listele |
aiven_service_plan_pricing | Belirli bir bulutta bir plan için fiyatlandırmayı al |
aiven_service_create | Bir hizmet oluştur |
aiven_service_get | Hizmet bilgilerini al |
aiven_service_update | Bir hizmeti güncelle (plan, yapılandırma, güç durumu) |
aiven_service_metrics_fetch | Yönetilen veri hizmetleri için metrikleri getir |
aiven_service_application_metrics_get | Uygulama hizmetleri için metrikleri getir |
aiven_project_get_service_logs | Hizmet günlük girişlerini al |
aiven_service_query_activity | Bir hizmet için güncel sorguları getir |
aiven_project_get_event_logs | Proje olay günlüğü girişlerini al |
Kafka
| Araç | Açıklama |
|---|---|
aiven_kafka_topic_list | Kafka konularını listele |
aiven_kafka_topic_create | Bir Kafka konusu oluştur |
aiven_kafka_topic_get | Kafka konusu bilgilerini al |
aiven_kafka_topic_update | Bir Kafka konusunu güncelle |
aiven_kafka_topic_delete | Bir Kafka konusunu sil |
aiven_kafka_topic_message_list | Bir Kafka konusundan mesajları oku |
aiven_kafka_topic_message_produce | Bir Kafka konusuna mesaj üret |
aiven_kafka_connect_available_connectors | Kullanılabilir bağlayıcı türlerini listele |
aiven_kafka_connect_list | Çalışan bağlayıcıları listele |
aiven_kafka_connect_create_connector | Bir bağlayıcı oluştur |
aiven_kafka_connect_edit_connector | Bir bağlayıcıyı düzenle |
aiven_kafka_connect_get_connector_status | Bağlayıcı durumunu al |
aiven_kafka_connect_pause_connector | Bir bağlayıcıyı duraklat |
aiven_kafka_connect_resume_connector | Bir bağlayıcıyı sürdür |
aiven_kafka_connect_restart_connector | Bir bağlayıcıyı yeniden başlat |
aiven_kafka_connect_delete_connector | Bir bağlayıcıyı sil |
aiven_kafka_schema_registry_subjects | Schema Registry konularını listele |
aiven_kafka_schema_registry_subject_version_get | Schema Registry konu sürümünü al |
PostgreSQL
| Araç | Açıklama |
|---|---|
aiven_pg_service_available_extensions | Kullanılabilir uzantıları listele |
aiven_pg_service_query_statistics | Sorgu istatistiklerini getir |
aiven_pg_bouncer_create | Bir PgBouncer bağlantı havuzu oluştur |
aiven_pg_bouncer_update | Bir PgBouncer bağlantı havuzunu güncelle |
aiven_pg_bouncer_delete | Bir PgBouncer bağlantı havuzunu sil |
aiven_pg_read | Salt okunur bir SQL sorgusu çalıştır |
aiven_pg_write | Bir yazma SQL ifadesi çalıştır (INSERT, UPDATE, DELETE, CREATE TABLE vb.) |
aiven_pg_optimize_query | Yapay zeka destekli sorgu optimizasyonu (EverSQL) |
Uygulamalar
| Araç | Açıklama |
|---|---|
aiven_application_create | Bir Containerfile/Dockerfile uygulaması oluştur ve başlangıçta dağıt; hizmet zaten varsa 409 döndürür |
aiven_application_redeploy | Hizmet yapılandırmasını değiştirmeden mevcut bir uygulamayı yapılandırılmış deposundan yeniden derle |
aiven_vcs_integration_list | Bağlı VCS (GitHub) hesaplarını listele |
aiven_vcs_integration_repository_list | Bir VCS entegrasyonu için depoları listele |
aiven_vcs_integration_repository_branch_list | Depo dallarını ve geçerli commit SHA'larını listele |
aiven_vcs_integration_repository_container_manifest_files_list | Aday Containerfile, Dockerfile ve Compose bildirimlerini bul |
aiven_vcs_integration_repository_scan_container_manifest | Bir 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_search | Resmi 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.