SQL MCP Server'da belgelenmemiş hızlı başlangıç: DAB_CONNSTRING
Microsoft'un SQL MCP Server'ı, 2.0 sürümünden beri container image'ı içinde gelen temel bir configuration dosyasıyla çalışıyor. Tek bir ortam değişkeni, yani DAB_CONNSTRING, ayarlandığında veritabanı bağlantısı otomatik olarak devreye giriyor ve JSON dosyası hazırlamadan birkaç dakikada MCP endpoint'i ayağa kalkıyor. Ancak bu varsayılan ayarlar production için değil, hızlı bir POC için tasarlanmış: anonim kullanıcılar yazma dahil tüm CRUD işlemlerini yapabiliyor.
Kilit noktalar
- Data API builder 2.0 (Haziran 2026) image'ı artık temel bir configuration dosyası içeriyor; autoentities tüm şemalardaki tabloları otomatik açıyor
- DAB_CONNSTRING ortam değişkeni, configuration dosyasındaki connection string değerini ve @env() referanslarını ezer
- Docker'da mcr.microsoft.com/azure-databases/data-api-builder:2.0.12 image'ı ile 5000 portunda /mcp endpoint'i açılıyor
- ACA Express, Container Apps, ACI ve AKS komutlarının tümü aynı --env-vars DAB_CONNSTRING yaklaşımıyla çalışıyor
- Varsayılan configuration hosting ortamını development yapıyor, Swagger ve Nitro açık, health endpoint anonim
- En kritik uyarı: anonim kullanıcılar için mutasyonlar dahil tüm CRUD izinleri açık; production'da kendi JSON'unuzu hazırlayın
SQL MCP Server, Data API builder motoru üzerine kurulu, kendi barındırdığınız bir container ve agent'lara CRUD/E işlemleri açıyor. Data API builder 2.0 ile gelen auto configuration, autoentities wildcard'larıyla tabloları şema veya isim desenine göre otomatik kapsıyor; image içindeki hazır configuration da her şemadaki her tabloyu açığa çıkarıyor. Eksik olan tek şey bağlantı dizesiydi, onu da DAB_CONNSTRING ortam değişkeni, configuration dosyasındaki değeri ve fonksiyon referanslarını ezerek çözüyor.
Docker'da tek satırlık docker run, ACA Express, klasik Azure Container Apps, ACI veya AKS üzerinde aynı env değişkeniyle endpoint 5000 portunda /mcp yolunda açılıyor. Dikkat: image'daki varsayılan configuration hosting ortamını development olarak bırakıyor, Swagger ve Nitro açık, health endpoint anonim erişilebilir. Üretimde mutlaka kendi configuration dosyanızı hazırlayın ve yetkileri daraltın.
Gerçek dünyada kullanımı
- Yeni bir SQL tabanlı agent fikrini, özel image build etmeden ve JSON yazmadan dakikalar içinde denemek isteyen bir ekip
- Şirket içi bir POC ortamında AKS üzerinde hızlıca MCP endpoint'i ayağa kaldırıp Claude Code veya Copilot gibi istemcilerle test etmek
- CI/CD pipeline'ında bağlantı dizesini imaj içine gömmek yerine ortam değişkeni olarak yönetmek istediğiniz çok ortamlı kurulumlar
Neden önemli
Agent'ları veritabanınıza bağlamanın en büyük sürtünmesi olan configuration dosyası hazırlama adımı ortadan kalkıyor; prototip süresi dakikalara iniyor, ama aynı kolaylık yanlışlıkla anonim yazma erişimiyle production'a çıkma riskini de beraberinde getiriyor.