MCP Katmanını Atla: AI Agentleri için Kapsamlı API Erişimi
Production takımlarının geniş MCP erişimini neden scoped API proxy'leriyle değiştirdiğini anlatan rehber. Atlassian (Jira/Confluence), Google Workspace ve Notion örnekleriyle FastAPI proxy, CLI wrapper ve n8n workflow'ları.
Özet
Atlassian'ın Rovo MCP Server'ı yapay zeka agentlerini Jira ve Confluence'a bağlar, ancak geniş erişim modeli production ortamlarında ciddi sorunlar yaratır: zayıf proje kapsamı, yüksek token maliyeti ve ya hep ya hiç araç erişimi. Bu yazıda üç somut alternatifi ele alıyoruz: FastAPI/Express scoped proxy, ACLI CLI wrapper ve n8n workflow. Her biri çalışan kodlarla birlikte. Temel fikir: yapay zeka agentine yalnızca ihtiyacı olan endpoint'leri göster, geri kalanını gizle.
Sorun: Atlassian Ekosisteminde MCP
Atlassian Rovo MCP Server, Şubat 2026'da GA olarak yayınlandı. Claude, Cursor, GitHub Copilot ve diğer AI istemcilerinin Jira, Confluence ve Compass ile çalışmasını sağlayan tek bir güvenli bağlantı sunuyor. Kurulumu basit: bağlan, OAuth 2.1 ile kimlik doğrula ve agent tüm ürünlerde arama, oluşturma, güncelleme ve bağlantı işlemlerine erişim kazansın.
Bu basitlik aynı zamanda sorunun kendisi. Onlarca Jira projesi ve Confluence alanı olan organizasyonlarda MCP'nin erişim modeli, çoğu takımın istediğinden fazlasını açığa çıkarır.
Erişim Kapsamı Zayıf
Rovo MCP Server kullanıcı seviyesinde izinlere uyar. Kimlik doğrulaması yapan kullanıcı 200 Jira projesi görebiliyorsa, yapay zeka agenti de 200 projenin hepsini görür. Agenti yalnızca takımınızın sprint board'una kısıtlayacak sunucu tarafı bir mekanizma yok. Resmi repository'deki GitHub issue #79 bu özelliği açıkça talep ediyor. Atlassian'ın mevcut önerisi istemci tarafında AGENTS.md dosyasına varsayılanlar eklemek; ancak bu bir öneri, zorlama değil.
Topluluk tarafından geliştirilen mcp-atlassian (sooperset) sunucusu JIRA_PROJECTS_FILTER ve CONFLUENCE_SPACES_FILTER ortam değişkenlerini destekliyor. Ancak resmi Rovo MCP Server'ın eşdeğer bir özelliği yok.
Token Maliyeti Yüksek
MCP araç tanımları, herhangi bir gerçek iş yapılmadan önce context window token'larını tüketir. Anthropic'in kendi mühendislik blogu, araç tanımlarının tek başına 58 araç için 55K token tükettiği kurulumları belgeliyor. Atlassian MCP sunucusu, yalnızca Jira issue aramasına ihtiyacınız olsa bile Jira, Confluence ve Compass araçlarını aynı anda açığa çıkarır.
Cloudflare'in araştırması, kendi API'leri için standart bir MCP sunucusunun Code Mode yaklaşımlarıyla karşılaştırıldığında 1.17 milyon token yerine 1.000 token tüketeceğini gösteriyor. Atlassian'ın araç seti daha küçük olsa da prensip aynı: kullanılmayan araçları açığa çıkarmak token israfıdır.
Gecikme Birikir
MCP, modelin araçları nasıl kullanacağına karar verdiği bir akıl yürütme katmanı ile JSON-RPC serileştirme yükü ekler. Basit "aktif sprint issue'larını getir" sorguları için, doğrudan REST API çağrısına kıyasla ölçülebilir bir gecikme ekler. CI/CD pipeline'larında veya otomasyon iş akışlarında bu yük, düzinelerce çağrıda birikir.
Güvenlik ve Denetim Boşlukları
5.200'den fazla MCP sunucu uygulamasını analiz eden araştırma, %53'ünün güvensiz uzun ömürlü statik sırlar kullandığını, modern OAuth kullanımının ise yalnızca %8,5 olduğunu ortaya koydu. MCP ekosistemi, uyumluluk gereksinimleri için yeterli düzeyde standart denetim kaydı sunmuyor.
Ya Hep Ya Hiç Araç Erişimi
Atlassian MCP sunucusuna bağlandığında yapay zeka agenti tüm mevcut araçları keşfeder: Jira arama, Jira oluşturma, Jira güncelleme, Confluence arama, Confluence oluşturma, Confluence güncelleme ve Compass işlemleri. Agentin Confluence sayfası oluşturabileceğini veya Compass bileşenlerini yönetebileceğini bilmeden, yalnızca "X projesinden Jira issue'larını oku" şeklinde seçici erişim sağlayamazsın.
Yeni Felsefe: Yapay Zekaya Yalnızca İzin Verdiğini Göster
Yükselen alternatif, whitelist-first yaklaşımı: yapay zeka agentinin hangi endpoint'lere, projelere ve işlemlere erişebileceğini kesin olarak tanımla. Agent, erişim izni olmayan projeler, alanlar veya araçlar hakkında bilgi sahibi bile olmamalı.
Bu, en az yetki ilkesinin yapay zeka agent araç erişimine uygulanmasıdır. MCP'nin "her şeyi keşfet, sonra filtrele" modeli yerine, agente küratörlüğünü yaptığın bir yüzey alanı gösterirsin.
Yöntem A: FastAPI/Express Scoped Proxy (Önerilen)
Bu en esnek yaklaşım. Yapay zeka agentin ile Atlassian REST API arasına oturan ince bir API katmanı yazarsın. Proxy, proje/alan kısıtlamalarını uygular, yanıt alanlarını filtreler ve her isteği kaydeder.
Whitelist Yapılandırması
Proxy'nin tam olarak neye izin verdiğini tanımlayan bir YAML yapılandırma dosyasıyla başla:
FastAPI ile Jira Proxy (Python)
Bu proxy iki endpoint sunar: search ve get_issue. Tüm sorguları otomatik olarak whitelist'teki projelere kapsam olarak bağlar ve yalnızca whitelist'teki alanları döndürür.
Çalıştırmak için:
Express.js ile Confluence Proxy
JavaScript/TypeScript tercih eden takımlar için Confluence'a yönelik Express.js versiyonu. CQL sorgularına otomatik olarak alan kısıtlamaları enjekte eder ve içeriği markdown olarak döndürür.
Çalıştırmak için:
Proxy'yi AI Agentlere Bağlama
Proxy standart bir REST API'dir. Yaygın AI agent platformlarına nasıl bağlanacağı:
Claude Code: bash aracı olarak kaydet:
Cursor: .cursor/mcp.json dosyasına custom API endpoint olarak ekle:
HTTP araç desteği olan herhangi bir agent: REST endpoint'lerini doğrudan çağır. Proxy OpenAPI uyumludur.
Yöntem B: ACLI + Custom CLI Wrapper
Lokal geliştirici iş akışları için Appfire CLI (ACLI) aracını kapsamlı bir shell script ile sarmalamak en basit yaklaşımdır. ACLI, Jira, Confluence, Bitbucket ve Bamboo işlemlerini destekleyen olgun bir Java tabanlı CLI aracıdır.
Kapsamlı Shell Wrapper
Bunu Claude Code veya Cursor'da araç olarak kaydet ve doğrudan kullan:
ACLI vs. Proxy: Ne Zaman Hangisi
Yöntem C: n8n / Low-Code Alternatifi
Görsel iş akışlarını tercih eden veya geliştiriciler dışındaki kişilerin Atlassian-AI entegrasyonunu yönetmesi gereken takımlar için n8n güçlü bir orta yol sunar.
Workflow Mimarisi
Uygulama Adımları
-
Webhook trigger: Yapay zeka agentinden arama sorguları alan bir n8n webhook oluştur.
-
Doğrulama node'u: Talep edilen projenin/alanın önceden yapılandırılmış whitelist'te olup olmadığını kontrol eden bir koşullu node ekle. Whitelist dışı kaynaklar için 403 yanıtı döndür.
-
HTTP Request node'u: Atlassian API kimlik bilgileriyle (kapsamlı API token ile Basic Auth) bir HTTP Request node'u yapılandır. Jira için JQL, Confluence için CQL kullan ve alan/proje kısıtlamasını otomatik olarak enjekte et.
-
Format node'u: API yanıtını token-verimli bir formata dönüştür. Gereksiz alanları çıkar, HTML'i markdown'a dönüştür ve binary ekleri kaldır.
-
Yanıt: Formatlanmış yanıtı webhook yanıtı olarak yapay zeka agentine geri gönder.
n8n Yaklaşımının Avantajları
- Görsel denetim izi: Her çalıştırma, n8n arayüzünde tam istek/yanıt verileriyle kaydedilir.
- Kod deployment'ı gerekmez: Kapsam kurallarını web arayüzünden herhangi bir yeniden deployment olmadan değiştir.
- Birleştirilebilir: Atlassian çağrılarını Slack bildirimleri, e-posta uyarıları veya veritabanı yazma işlemleriyle tek bir workflow'da zincirle.
- Self-hosted seçeneği: Veri egemenliği için n8n'i kendi altyapında çalıştır.
Ödünleşim olarak n8n ek bir platform bağımlılığı ekler ve yüksek throughput kullanım durumlarında doğrudan proxy'den daha yavaş olabilir.
Karşılaştırma: MCP vs. Scoped Proxy
Token Maliyeti Pratikte
Scoped proxy'ye geçişten elde edilen tahmini token tasarrufu:
- MCP tam araç şeması: Oturum başlatma başına ~5.000-15.000 token (Jira + Confluence + Compass araçları)
- 2-3 endpoint'li scoped proxy: Oturum başına ~500-1.000 token
- Azalma: Yalnızca araç tanımlarında %80-95 daha az token harcanır
Ölçekte (günde yüzlerce agent oturumu), bu fark LLM API maliyetleri için önemlidir. Proxy'deki yanıt alanı filtreleme ile birleştirildiğinde toplam token tasarrufu daha da yüksek olabilir.
MCP'nin Hala Mantıklı Olduğu Durumlar
MCP her senaryo için yanlış seçim değil. Şu durumlarda kullan:
- Prototipleme veya AI agent entegrasyonunu değerlendirme
- Tek projeli kişisel geliştirici verimliliği
- Az projeli ve uyumluluk gereksinimleri olmayan küçük takımlar
- Hızlı kurulum öncelik olduğunda (bir saatten kısa sürede çalışan entegrasyon)
Şu durumlarda scoped proxy kullan:
- Çok projeli Jira/Confluence instance'larına production deployment
- Uyumluluk gereksinimleri mevcut (SOC2, ISO 27001, GDPR veri minimizasyonu)
- Yüksek hacimde token bütçesi önemli
- Birden fazla agentin farklı erişim seviyelerine ihtiyacı var
- Hassas projeler (İK, hukuk, finans) aynı Atlassian instance'ını paylaşıyor
Yaygın Tuzaklar
Güvenlik için AGENTS.md'ye Güvenmek
Atlassian, kapsam belirleme için AGENTS.md dosyasına varsayılanlar eklemeyi öneriyor. Bu, AI modeline bir öneridir, zorlama değil. Yapay zeka agenti yine de herhangi bir projeyi sorgulayabilir. Sunucu tarafı zorlama, tek güvenilir erişim kontrolüdür.
Confluence API Sonuç Limitlerini Unutmak
Confluence REST API'nin sabit kodlanmış arka uç limitleri var: body içeriği genişletildiğinde 50 sonuç, diğer genişletmelerde 200, genişletme olmadan 1.000. Proxy'nin sayfalandırmayı şeffaf şekilde yönetmesi gerekir. CQL sayfalandırmasını yapay zeka agentine açığa çıkarma.
Filtrelenmemiş API Yanıtlarından Token İsrafı
Jira issue JSON'u düzinelerce alan içerir: değişiklik günlüğü, iş günlüğü, özel alanlar, render edilmiş HTML. Tam JSON'u yapay zeka agentine göndermek, ilgisiz verilere token harcar. Proxy'de yanıt alanlarını her zaman whitelist'le ve yalnızca AI'ın ihtiyacını döndür.
Takım Çapında Proxy için Kişisel API Token Kullanmak
Kişisel token'lar kullanıcının tam izinlerini devralır ve kullanıcı organizasyondan ayrıldığında süresi dolar. OAuth 2.0 servis hesabı kimlik bilgileri veya ürün başına kısıtlamalı Atlassian kapsamlı API token'ları kullan.
Jira v3 API Geçişini Görmezden Gelmek
Eski /rest/api/3/search endpoint'i Jira Cloud'dan kaldırıldı. Yeni endpoint, startAt yerine nextPageToken sayfalandırmalı /rest/api/3/search/jql. atlassian-python-api kütüphanesini kullanıyorsan enhanced_jql metodunu kullan. Geleneksel jql metodu Cloud için kullanımdan kaldırıldı.
İlk Günden Aşırı Mühendislik
Başlangıçtan itibaren rate limiting, önbellekleme ve yük dengeleme içeren tam bir API gateway'e ihtiyacın yok. YAML whitelist'li 100 satırlık bir FastAPI uygulaması çoğu takım için production-ready. Kapsam kurallarını uygulayan en basit proxy'yi yayınla, sonra iterasyon yap.
Atlassian Ötesinde: Aynı Desen Her Yerde Geçerli
Bu scoped proxy yaklaşımı Atlassian'a özgü değil. Aynı erişim kontrolü ve verimlilik sorunları her MCP ekosisteminde karşına çıkıyor: Google Workspace, Notion, Linear, GitHub ve diğerleri.
Google Workspace: Docs, Sheets, Drive
Google'ın MCP entegrasyonları aynı "ya hep ya hiç" sorununu ortaya çıkarıyor. Bir AI agent Google Drive'a MCP üzerinden bağlandığında, workspace'teki her belgeye potansiyel olarak göz atabiliyor. İK politikaları, maaş tabloları ve hukuki sözleşmeleri mühendislik dokümanlarıyla aynı yerde saklayan takımlar için bu ciddi bir veri ifşa riski.
Google Workspace API'leri, MCP sunucularının nadiren kullandığı granüler OAuth scope'ları sunuyor:
Google Workspace için scoped proxy aynı deseni izliyor: belirli klasör ID'lerini veya doküman ID'lerini whitelist'le, en dar OAuth scope'unu kullan (drive yerine drive.file) ve yalnızca sanitize edilmiş içerik döndür. Mühendislik wikileri, runbook'lar ve herkese açık dokümanlar (PII içermeyen içerik) için proxy üzerinden doğrudan API erişimi daha hızlı, daha ucuz ve AI agentinin ihtiyacı olmayan hiçbir şeyi ifşa etmiyor.
fields parametresi kritik: yalnızca id, name ve modifiedTime isteyerek proxy asla dosya sahibi e-postalarını, paylaşım izinlerini veya PII içerebilecek diğer metadata'yı döndürmüyor. AI agent doküman başlıkları ve ID'leri görüyor, başka bir şey değil.
Notion, Linear ve Diğer SaaS Araçları
Aynı prensip, MCP sunucusu olan her SaaS aracına uygulanıyor:
- Notion: Notion API'si veritabanı ID'si ve sayfa ID'sine göre filtrelemeyi destekliyor. Scoped proxy yalnızca belirli veritabanlarını (sprint board'ları, teknik dokümanlar) açığa çıkarırken İK veritabanlarını ve özel sayfaları görünmez tutuyor.
- Linear: Takım ID'si ve proje ID'sine göre filtrele. Mühendislik AI agenti yalnızca mobil takımın issue'larını görüyor, yönetim takımının OKR'lerini değil.
- GitHub: Belirli repository'ler ve salt okunur işlemlerle kısıtla. Code review'a yardımcı olan bir AI agentinin özel fork'lara veya organizasyon genelindeki ayarlara erişmesi gerekmiyor.
Ortak nokta: platformun kendi API filtreleme özelliklerini kullanarak dar, PII içermeyen bir görünüm oluştur. AI agent, proxy üzerinden sanitize edilmiş veri alıyor. Whitelist dışında hiçbir şeyi keşfedemiyor, göz atamıyor veya erişemiyor.
PII Sınır Prensibi
Scoped proxy kullanma kararı, PII sınırını çizdiğinde netleşiyor:
- PII yok, herkese açık içerik (mühendislik dokümanları, runbook'lar, herkese açık wikiler): Salt okunur proxy üzerinden açığa çıkarmak güvenli. İçerik zaten organizasyon içinde geniş çapta paylaşılıyor.
- PII veya hassas veri içeriyor (İK kayıtları, maaş verileri, hukuki sözleşmeler, müşteri verileri): Herhangi bir MCP veya proxy üzerinden asla ifşa etme. Bunlar yalnızca insan erişim kontrolleri arkasında kalmalı.
- Karışık içerik (müşteri adları içeren proje board'ları, destek talepleri): Proxy'de alan seviyesinde filtreleme kullan. Talebin durumunu ve önceliğini döndür, müşteri adlarını ve iletişim bilgilerini çıkar.
Bu sınır, kullanılan araçtan bağımsız olarak geçerli. Atlassian, Google Workspace veya Notion kullanıyor olsan da soru aynı: bu veri, bir AI agentinin asla görmemesi gereken bilgi içeriyor mu? Evetse ifşa etme. Hayırsa scoped proxy en hızlı ve en ucuz yolu sunuyor.
Sonuç
MCP, AI-Atlassian entegrasyonu için iyi bir başlangıç noktası, son mimari değil. Kişisel kullanım ve prototipleme için iyi çalışır. Birden fazla proje, uyumluluk gereksinimleri veya token bütçesi kısıtlamaları olan production ortamları için scoped proxy, yapay zeka agentinin ne göreceği ve ne yapacağı üzerinde kesin kontrol sağlar.
"İki endpoint'li proxy" deseni (search ve get_detail) Jira ve Confluence için yapay zeka agent ihtiyaçlarının yaklaşık %90'ını karşılar. Yalnızca araç tanımlarında token kullanımını %80-95 azaltır, proje ve alan kısıtlamalarını sunucu tarafında uygular ve tam bir denetim izi sağlar.
Gereksinimlerine uyan en basit yaklaşımla başla. Bireysel bir geliştirici isen ACLI wrapper yeterli olabilir. Takım çapında deployment yapıyorsan FastAPI proxy'nin kurulumu birkaç saat sürer ve minimum bakımla çalışır. Organizasyonun görsel denetim izleri ve geliştirici olmayan kişilerin yapılandırması gerekliyse n8n bu boşluğu doldurur.
Bu desen Atlassian'ın ötesine uzanıyor. Google Workspace, Notion, Linear veya başka bir SaaS platformuyla çalışıyor olsan da PII sınır prensibi aynı kalıyor: sanitize edilmiş, PII içermeyen içeriği scoped proxy üzerinden aç ve hassas verileri yalnızca insan erişim kontrolleri arkasında tut.
MCP'nin kendisi hakkında daha derin bilgi için MCP Standardı: Production-Ready AI Entegrasyonları ve Custom MCP Server'lar Oluşturma yazılarına bakabilirsin. RBAC ve çoklu agent orkestrasyonu ile ileri düzey desenler için MCP İleri Düzey Desenler yazısına göz at. Genel AI agent güvenliği için AI Agent Güvenliği: Guardrails ve Savunma Desenleri yazısını incele.
Kaynaklar
- Getting Started with the Atlassian Rovo MCP Server - Resmi kurulum rehberi, bilinen kısıtlamalar ve güvenlik mimarisi
- Atlassian Rovo MCP Server is Now GA - GA duyurusu, özellik genel bakışı ve desteklenen AI istemcileri
- GitHub Issue #79: Restrict MCP to Certain Spaces and Projects - Erişim kapsam boşluğunu belgeleyen topluluk özellik talebi
- sooperset/mcp-atlassian - JIRA_PROJECTS_FILTER ve CONFLUENCE_SPACES_FILTER destekli topluluk MCP sunucusu
- Advanced Tool Use (Anthropic Engineering) - 58 araçta 55K token bulgusu dahil MCP token yükü analizi
- Code Mode: Give Agents an Entire API in 1,000 Tokens (Cloudflare) - MCP token'larını 1.17M'den 1K'ya düşüren Cloudflare yaklaşımı
- State of MCP Server Security 2025 (Astrix) - 5.200+ MCP sunucusunu güvenlik uygulamaları açısından analiz eden araştırma
- Jira Cloud REST API - Issue Search - nextPageToken sayfalandırmalı v3 arama endpoint dokümantasyonu
- Advanced Searching Using CQL (Confluence) - Alana kapsamlı aramalar için CQL söz dizimi referansı
- Scoped API Tokens in Confluence Cloud - Kısıtlı ürün ve kapsam erişimli API token'ları
- atlassian-python-api Documentation - Atlassian REST API'leri için Python kütüphanesi
- Securing the AI Agent Revolution (CoSAI) - Coalition for Secure AI'ın MCP güvenlik desenleri rehberi
- MCP vs APIs: When to Use Which (Tinybird) - AI agent geliştirmede MCP ile doğrudan API'nin pratik karşılaştırması