DokümantasyonMCP sunucusu (yapay zekâ asistanları)

Dokümantasyon 11 / 19

MCP sunucusu (yapay zekâ asistanları)

Özellik sayfası: REST API ve MCP sunucusu

İşletme, yapay zekâ asistanlarının (Claude, ChatGPT, Cursor, VS Code ve Model Context Protocol destekleyen diğer istemciler) monitörlerinizi, kesintilerinizi, uyarılarınızı ve status sayfalarınızı okuyabilmesi ve sınırlı, güvenli işlemler yapabilmesi için uzak bir MCP sunucusu sunar. Asistana "Şu an kapalı olan monitörler hangileri?", "Ödeme API'sinin son 7 günlük erişilebilirliği ne?" ya da "Yarın 02:00–03:00 için veritabanı bakımı planla" diyebilirsiniz.

MCP adresi: https://isletme.net.tr/mcp

Nasıl çalışır?

  • Aktarım: Streamable HTTP — her istek POST https://isletme.net.tr/mcp adresine gönderilen tek bir JSON-RPC 2.0 mesajıdır; yanıt JSON'dur. Sunucu oturum (Mcp-Session-Id) ve SSE akışı kullanmaz; GET/DELETE istekleri 405 döner.
  • Protokol sürümleri: güncel MCP spesifikasyonu 2026-07-28 (durumsuz; her istek _meta içinde sürüm ve istemci yeteneklerini taşır, server/discover desteklenir) ve initialize el sıkışması kullanan önceki sürümler 2025-11-25, 2025-06-18, 2025-03-26. İstemciniz hangisini kullanıyorsa sunucu onunla yanıt verir.
  • Kimlik: mevcut API anahtarlarınız kullanılır: Authorization: Bearer ism_…. Anahtarda mcp:use kapsamı ve kullanılacak araçların kaynak kapsamları bulunmalıdır. Asistan yalnızca anahtarın kapsamlarının izin verdiği araçları görür.
  • Organizasyon: anahtar tek bir organizasyona bağlıdır; asistan başka organizasyonların verisini göremez.

Araçlar

Araç Ne yapar Gerekli kapsam
list_monitors Monitörler ve güncel durumları (arıza verenler önce); durum, arama, etiket, tür süzgeci monitors:read (24 saatlik erişilebilirlik için ayrıca results:read)
get_monitor Tek monitör: ayar özeti, açık kesinti, 24 saat / 7 gün / 30 gün erişilebilirlik, son 10 ölçüm monitors:read (+ results:read, incidents:read ilgili bölümler için)
list_outages Devam eden (veya tüm) kesintiler incidents:read
list_alerts Nöbet/uyarı politikası uyarıları alerts:read
list_status_pages Status sayfaları status_pages:read
get_status_page_summary Sayfanın ziyaretçilerin gördüğü özeti: genel durum, bileşenler, aktif olaylar, bakımlar status_pages:read
list_maintenances Planlanan / süren / geçmiş bakımlar maintenances:read
acknowledge_alert Uyarıyı üstlenir (sonraki eskalasyon adımları durur) alerts:write
resolve_alert Uyarıyı çözüldü olarak kapatır alerts:write
pause_monitor / resume_monitor Monitörü duraklatır / devam ettirir monitors:write
create_maintenance Status sayfasında bakım planlar (varsayılan: abonelere duyuru gönderilmez, kesinti uyarıları bastırılır) maintenances:write

Sunucuda serbest sorgu, kod çalıştırma, silme veya ayar değiştirme aracı yoktur. Yazan araçlar panel ve REST API ile aynı kuralları uygular (paket sınırları, hedef doğrulaması, yönetici duraklatması vb.).

Kurulum

  1. Panelde API anahtarları sayfasından yeni bir anahtar oluşturun. Yalnızca okuma için önerilen kapsamlar: mcp:use, monitors:read, results:read, incidents:read, alerts:read, status_pages:read, maintenances:read. Asistanın uyarı üstlenmesini veya bakım planlamasını istiyorsanız ilgili …:write kapsamlarını ekleyin. MCP için ayrı bir anahtar kullanın ve son kullanma tarihi verin.
  2. İstemcinizi aşağıdaki örneklerden birine göre yapılandırın. Anahtarı yapılandırma dosyasına düz metin yazmak yerine istemcinin desteklediği ortam değişkeni veya gizli değer özelliğini kullanın.

Uzak HTTP sunucusu ve özel başlık destekleyen istemciler (genel biçim)

Çoğu istemci (Claude Code, Cursor, VS Code ve benzerleri) uzak MCP sunucusunu bir adres ve istek başlıklarıyla tanımlar:

{
  "mcpServers": {
    "isletme": {
      "type": "http",
      "url": "https://isletme.net.tr/mcp",
      "headers": { "Authorization": "Bearer ${ISLETME_API_KEY}" }
    }
  }
}

Alan adları istemciye göre küçük farklılıklar gösterebilir (type yerine transport, mcpServers yerine servers gibi); istemcinizin belgesine bakın.

Komut satırından ekleme (ör. Claude Code)

claude mcp add --transport http isletme https://isletme.net.tr/mcp --header "Authorization: Bearer $ISLETME_API_KEY"

Yalnızca yerel (stdio) sunucu destekleyen masaüstü istemciler (ör. Claude Desktop)

Uzak sunucuya özel başlıkla bağlanamayan istemcilerde açık kaynak mcp-remote köprüsü kullanılabilir (Node.js gerekir). claude_desktop_config.json örneği:

{
  "mcpServers": {
    "isletme": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://isletme.net.tr/mcp", "--header", "Authorization:${AUTH_HEADER}"],
      "env": { "AUTH_HEADER": "Bearer ism_XXXXXXXX_..." }
    }
  }
}

Bağlantıyı denemek

curl -sS https://isletme.net.tr/mcp \
  -H "Authorization: Bearer $ISLETME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-06-18" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Güvenlik notları

  • En az yetki: asistana yalnızca gerektiği kadar kapsam verin; okuma amaçlı kullanımda …:write kapsamlarını eklemeyin. Anahtarı istediğiniz an API anahtarları sayfasından iptal edebilirsiniz.
  • Onay: yazan araçlar üretim ortamınızı değiştirir. İstemcinizde araç çağrılarını onaya bağlayın; sunucu da bu araçlar için asistana "kullanıcıdan onay al" talimatı verir.
  • Denetim kaydı: her araç çağrısı (okuma dahil) Denetim kayıtları sayfasına "MCP aracı çağrıldı" olarak, anahtar, araç adı, argümanlar ve sonuçla yazılır; MCP ile yapılan değişikliklerin kayıtlarında via: mcp bulunur. Duraklatılan monitörde ve üstlenilen uyarıda işlemin MCP ile yapıldığı görünür.
  • Sınırlar: anahtar başına dakikalık istek sınırı paketinizin API sınırıyla aynıdır (REST API'den ayrı sayılır); yazan araçlar ayrıca anahtar başına dakikada 10 çağrıyla sınırlıdır. Aşımda 429 ve Retry-After döner. Tek bir araç sonucu en fazla 64 KB'tır; liste araçları sayfalıdır.
  • Veri: araç sonuçlarında hedef adreslerin sorgu dizeleri maskelenir; sırlar (parolalar, belirteçler, başlık değerleri, webhook adresleri) hiçbir araçta dönmez. Olay ve bakım metinleri ile monitör adları sizin girdiğiniz verilerdir; asistanın bu metinlerdeki talimatlara uymaması için istemcinizin yazan araç onayını açık tutun.
  • Tarayıcıdan erişim: sunucu, uygulamanın kendi kökeni dışındaki Origin başlığıyla gelen istekleri reddeder (DNS rebinding koruması). Anahtarınızı bir web sayfasına veya herkese açık bir depoya koymayın.

Ayrıntılı REST uç noktaları için REST API belgesine bakın. Erişilebilirlik değerleri teknik ölçümdür, sözleşmesel SLA değildir (ölçüm yöntemi).

Bu belge ürünün mevcut davranışını anlatır. Bir tutarsızlık görürseniz lütfen bize bildirin.