IBM Instana MCP Server

resmi

IBM Instana MCP sunucusu, IBM Instana gözlemlenebilirlik platformuyla sorunsuz etkileşim sağlayarak, geliştirme iş akışınız içinde doğrudan gerçek zamanlı gözlemlenebilirlik verilerine erişmenize olanak tanır.

IBM Instana MCP ile neler yapabilirsiniz?

  • Uygulama performansını sorgulaapp kategorisi araçlarını (get_app_metrics veya get_app_alerts gibi) kullanarak uygulama metrikleri, uyarılar veya katalog ayrıntılarını isteyin.
  • Altyapı sağlığını izleinfra araçları (get_infra_metrics veya get_infra_topology gibi) aracılığıyla altyapı kaynaklarını, topolojiyi ve metrikleri alın.
  • Olayları ve vakaları takip etevents araçlarını (get_k8s_events veya get_agent_status gibi) kullanarak Kubernetes olaylarına veya aracı izleme verilerine erişin.
  • Web sitesi izlemeyi analiz etwebsite araçlarını (get_website_metrics veya get_website_config gibi) kullanarak web sitesi metriklerini, katalog bilgilerini veya yapılandırmayı çekin.
  • Araçları kategoriye göre filtrele — Performansı optimize etmek için başlangıçta --tools bayrağıyla (ör. --tools infra,events) yalnızca gerekli araç kategorilerini etkinleştirin.

Dokümantasyon

İçindekiler

IBM Instana için MCP Sunucusu

📚 Hızlı Bağlantılar


Instana MCP sunucusu, Instana gözlemlenebilirlik platformuyla sorunsuz etkileşim sağlayarak, geliştirme iş akışınız içinde gerçek zamanlı gözlemlenebilirlik verilerine doğrudan erişmenizi sağlar.

İstemciler (AI ajanları veya özel araçlar gibi) ile Instana REST API'leri arasında bir köprü görevi görür; kullanıcı sorgularını Instana API isteklerine dönüştürür ve yanıtları yapılandırılmış, kolayca tüketilebilir formatlara biçimlendirir.

Sunucu, farklı MCP istemcileriyle maksimum uyumluluk için hem Akışkan HTTP hem de Stdio taşıma modlarını destekler. Daha fazla ayrıntı için MCP Taşıma Modları spesifikasyonuna bakın.

Mimari Genel Bakış

graph LR
    subgraph "Application Host Process"
        MH[MCP Host]
        MSI[Instana MCP Server]
        MST[ProductA MCP Server]
        MSC[ProductB MCP Server]

        MH <--> MSI
        MH <--> MSC
        MH <--> MST
    end

    subgraph "Remote Service"
        II[Instana Instance]
        TI[ProductA Instance]
        CI[ProductB Instance]

        MSI <--> II
        MST <--> TI
        MSC <--> CI
    end

    subgraph "LLM"
        L[LLM]
        MH <--> L
    end

İş Akışı

Basit bir örnek düşünün: Instana MCP Sunucusuna bağlı bir MCP Ana Bilgisayarı (Claude Desktop, VS Code veya başka bir istemci gibi) kullanıyorsunuz. Instana uyarıları hakkında bilgi istediğinizde aşağıdaki süreç gerçekleşir:

  1. MCP istemcisi, Instana MCP sunucusundan mevcut araçların listesini alır
  2. Sorgunuz, araç açıklamalarıyla birlikte LLM'ye gönderilir
  3. LLM mevcut araçları analiz eder ve Instana uyarılarını almak için uygun olan(lar)ı seçer
  4. İstemci, seçilen araç(lar)ı Instana MCP sunucusu aracılığıyla çalıştırır
  5. Sonuçlar (en son uyarılar) LLM'ye döndürülür
  6. LLM doğal dilde bir yanıt oluşturur
  7. Yanıt size gösterilir
sequenceDiagram
    participant User
    participant ChatBot as MCP Host
    participant MCPClient as MCP Client
    participant MCPServer as Instana MCP Server
    participant LLM
    participant Instana as Instana Instance

    ChatBot->>MCPClient: Load available tools from MCP Server
    MCPClient->>MCPServer: Request available tool list
    MCPServer->>MCPClient: Return list of available tools
    User->>ChatBot: Ask "Show me the latest alerts from Instana for application robot-shop"
    ChatBot->>MCPClient: Forward query
    MCPClient->>LLM: Send query and tool description
    LLM->>MCPClient: Select appropriate tool(s) for Instana alert query
    MCPClient->>MCPServer: Execute selected tool(s)
    MCPServer->>Instana: Retrieve alerts for application robot-shop
    MCPServer->>MCPClient: Send alerts of Instana result
    MCPClient->>LLM: Forward alerts of Instana
    LLM->>ChatBot: Generate natural language response for Instana alerts
    ChatBot->>User: Show Instana alert response

Ön Koşullar

Seçenek 1: PyPI'den Kurulum (Önerilen)

mcp-instana kullanmanın en kolay yolu, doğrudan PyPI'den kurmaktır:

pip install mcp-instana

Kurulumdan sonra, sunucuyu doğrudan mcp-instana komutunu kullanarak çalıştırabilirsiniz.

Seçenek 2: Geliştirme Kurulumu

Geliştirme veya yerel özelleştirme için projeyi klonlayıp yerel olarak kurabilirsiniz.

uv Kurulumu

Bu proje, hızlı bir Python paket kurucusu ve çözücüsü olan uv kullanır. uv kurmak için birkaç seçeneğiniz vardır:

pip kullanarak:

pip install uv

Homebrew kullanarak (macOS):

brew install uv

Daha fazla kurulum seçeneği ve ayrıntılı talimatlar için uv dokümantasyonunu ziyaret edin.

Ortamın Hazırlanması

uv kurduktan sonra, proje ortamını şu komutu çalıştırarak hazırlayın:

uv sync

Akışkan HTTP Modu için Başlık Tabanlı Kimlik Doğrulama

Akışkan HTTP modunu kullanırken, Instana kimlik bilgilerini HTTP başlıkları aracılığıyla iletmeniz gerekir. Bu yaklaşım, güvenliği ve esnekliği şu şekilde artırır:

  • Kimlik bilgilerinin ortam değişkenlerinde saklanmasını önler
  • Farklı istekler için farklı kimlik bilgilerinin kullanılmasını sağlar
  • Ortam değişkeni değişikliğinin kısıtlı olduğu paylaşılan ortamları destekler
  • Hem API token hem de oturum tabanlı kimlik doğrulamayı destekler

Desteklenen Kimlik Doğrulama Modları:

1. API Token Kimlik Doğrulaması (Doğrudan API Çağrıları)

Gerekli Başlıklar:

  • instana-base-url: Instana örnek URL'niz
  • instana-api-token: Instana API token'ınız

Örnek:

--header "instana-base-url: https://your-instance.instana.io"
--header "instana-api-token: your-api-token"

2. Oturum Token Kimlik Doğrulaması (Arayüz Kaynaklı Çağrılar)

Gerekli Başlıklar:

  • instana-base-url: Instana örnek URL'niz
  • instana-auth-token: Arayüz arka ucundan oturum kimlik doğrulama token'ı
  • instana-csrf-token: Arayüz arka ucundan CSRF token'ı
  • instana-cookie-name: (İsteğe bağlı) Oturum kimlik doğrulaması için çerez adı (varsayılan: instanaAuthToken)

Örnek:

--header "instana-base-url: https://your-instance.instana.io"
--header "instana-auth-token: your-session-token"
--header "instana-csrf-token: your-csrf-token"
--header "instana-cookie-name: in-token"

3. JWT Token Kimlik Doğrulaması (IBM Platform Entegrasyonu)

Gerekli Başlıklar:

  • instana-base-url: Instana örnek URL'niz
  • instana-jwt-token: IBM Platformundan JWT token'ı
  • instana-csrf-token: İstek doğrulaması için CSRF token'ı

Örnek Yapılandırma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://0.0.0.0:8080/mcp",
        "--allow-http",
        "--header",
        "instana-base-url: https://your-instana-instance.instana.io",
        "--header",
        "instana-jwt-token: your_jwt_token_here",
        "--header",
        "instana-csrf-token: your_csrf_token_here"
      ]
    }
  }
}

Kimlik Doğrulama Önceliği:

  1. JWT Token (CSRF token ile sağlanırsa) - IBM Platform entegrasyonu için önceliklidir
  2. Oturum Token'ları (hem auth_token hem de csrf_token sağlanırsa)
  3. API Token (sağlanırsa) - Standart kimlik doğrulama
  4. Ortam Değişkeni (INSTANA_API_TOKEN) - Yedek

Kimlik Doğrulama Akışı:

  1. HTTP başlıkları her istekte mevcut olmalıdır
  2. Sunucu, kimlik bilgilerini öncelik sırasına göre doğrular
  3. Geçerli kimlik doğrulaması olmayan istekler başarısız olur

Bu tasarım, güvenli kimlik bilgisi iletimini sağlar ve WebSocket → Koordinatör → MCP Sunucusu aracılığıyla arayüz kaynaklı çağrılar dahil birden fazla kimlik doğrulama akışını destekler.

Kullanılan token'ın MCP araçlarını çağırmak için gerekli izinlere sahip olduğundan emin olun. Daha fazla bilgi için buraya bakın.

Yerel MCP Sunucusunu Başlatma

Herhangi bir MCP istemcisini (Claude Desktop, GitHub Copilot veya özel MCP istemcileri) yapılandırmadan önce, yerel MCP sunucusunu başlatmanız gerekir. Sunucu iki taşıma modunu destekler: Akışkan HTTP ve Stdio.

Sunucu Komut Seçenekleri

CLI Kullanımı (PyPI Kurulumu)

mcp-instana'yı PyPI'den kurduysanız, mcp-instana komutunu kullanın:

mcp-instana [OPTIONS]

Geliştirme Kurulumu Kullanımı

Yerel geliştirme için uv run komutunu kullanın:

uv run src/core/server.py [OPTIONS]

Mevcut Seçenekler:

  • --transport <mode>: Taşıma modu (seçenekler: streamable-http, stdio)
  • --env KEY=VALUE: Ortam değişkeni ayarla (birden fazla değişken için tekrarlanabilir, örn. --env INSTANA_BASE_URL=https://... --env INSTANA_API_TOKEN=...)
  • --debug: Ek günlükleme ile hata ayıklama modunu etkinleştir
  • --log-level <level>: Günlük seviyesini ayarla (seçenekler: DEBUG, INFO, WARNING, ERROR, CRITICAL)
  • --tools <categories>: Etkinleştirilecek virgülle ayrılmış araç kategorileri listesi (örn. infra,app,events,website). Bir kategoriyi etkinleştirmek, ilgili prompt'ları da etkinleştirir. Örneğin: --tools infra infra araçlarını ve tüm infra ile ilgili prompt'ları etkinleştirir.
  • --list-tools: Tüm mevcut araç kategorilerini listele ve çık
  • --port <port>: MCP sunucu portu (varsayılan: 8080, PORT ortam değişkeniyle geçersiz kılınabilir)
  • --verify-ssl: Giden Instana API çağrıları için SSL sertifika doğrulamasını etkinleştir. INSTANA_SSL_VERIFY=true ayarlamaya eşdeğerdir. SSL doğrulaması varsayılan olarak devre dışıdır.
  • --help: Yardım mesajını göster ve çık

Akışkan HTTP Modunda Başlatma

Akışkan HTTP modu bir REST API arayüzü sağlar ve çoğu kullanım durumu için önerilir.

CLI Kullanımı (PyPI Kurulumu)

# Start with all tools enabled (default)
mcp-instana --transport streamable-http

# Start with debug logging
mcp-instana --transport streamable-http --debug

# Start with a specific log level
mcp-instana --transport streamable-http --log-level WARNING

# Start with specific tool categories only
mcp-instana --transport streamable-http --tools infra,events

# Combine options (specific log level, custom tools)
mcp-instana --transport streamable-http --log-level DEBUG --tools app,events

Geliştirme Kurulumu Kullanımı

# Start with all tools enabled (default)
uv run src/core/server.py --transport streamable-http

# Start with debug logging
uv run src/core/server.py --transport streamable-http --debug

# Start with a specific log level
uv run src/core/server.py --transport streamable-http --log-level WARNING

# Start with specific tool and prompts categories only
uv run src/core/server.py --transport streamable-http --tools infra,events

# Start with custom port
uv run src/core/server.py --transport streamable-http --port 9000

# Combine options (specific log level, custom tools and prompts)
uv run src/core/server.py --transport streamable-http --log-level DEBUG --tools app,events

Akışkan HTTP Modunun Temel Özellikleri:

  • Kimlik doğrulama için HTTP başlıklarını kullanır (ortam değişkenleri gerekmez)
  • İstek başına farklı kimlik bilgilerini destekler
  • Paylaşılan ortamlar için daha uygundur
  • MCP sunucu varsayılan portu: 8080
  • MCP uç noktası: http://0.0.0.0:8080/mcp/

Stdio Modunda Başlatma

Stdio modu iletişim için standart giriş/çıkış kullanır ve kimlik doğrulama için ortam değişkenleri gerektirir.

CLI Kullanımı (PyPI Kurulumu)

# Option 1: Set environment variables first
export INSTANA_BASE_URL="https://your-instana-instance.instana.io"
export INSTANA_API_TOKEN="your_instana_api_token"

# Start the server (stdio is the default if no transport specified)
mcp-instana

# Or explicitly specify stdio mode
mcp-instana --transport stdio

# Option 2: Use --env flag to set environment variables directly
mcp-instana --env INSTANA_BASE_URL=https://your-instana-instance.instana.io --env INSTANA_API_TOKEN=your_instana_api_token

# Or with explicit stdio mode
mcp-instana --transport stdio --env INSTANA_BASE_URL=https://your-instana-instance.instana.io --env INSTANA_API_TOKEN=your_instana_api_token

Geliştirme Kurulumu Kullanımı

# Option 1: Set environment variables first
export INSTANA_BASE_URL="https://your-instana-instance.instana.io"
export INSTANA_API_TOKEN="your_instana_api_token"

# Start the server (stdio is the default if no transport specified)
uv run src/core/server.py

# Or explicitly specify stdio mode
uv run src/core/server.py --transport stdio

# Option 2: Use --env flag to set environment variables directly
uv run src/core/server.py --env INSTANA_BASE_URL=https://your-instana-instance.instana.io --env INSTANA_API_TOKEN=your_instana_api_token

# Or with explicit stdio mode
uv run src/core/server.py --transport stdio --env INSTANA_BASE_URL=https://your-instana-instance.instana.io --env INSTANA_API_TOKEN=your_instana_api_token

Stdio Modunun Temel Özellikleri:

  • Kimlik doğrulama için ortam değişkenlerini kullanır (export veya --env bayrağıyla ayarlanabilir)
  • stdin/stdout üzerinden doğrudan iletişim
  • Belirli MCP istemci yapılandırmaları için gereklidir
  • --env bayrağı, kabuk ortamını değiştirmeden kimlik bilgilerini ayarlamak için kullanışlı bir yol sağlar

Araç Kategorileri

Yalnızca ihtiyacınız olan araç ve prompt kategorilerini etkinleştirerek sunucu performansını optimize edebilirsiniz:

CLI Kullanımı (PyPI Kurulumu)

# List all available categories
mcp-instana --list-tools

# Enable specific categories
mcp-instana --transport streamable-http --tools infra,app
mcp-instana --transport streamable-http --tools events

Geliştirme Kurulumu Kullanımı

# List all available categories
uv run src/core/server.py --list-tools

# Enable specific categories
uv run src/core/server.py --transport streamable-http --tools infra,app
uv run src/core/server.py --transport streamable-http --tools events

Mevcut Kategoriler:

  • infra: Altyapı izleme araçları ve prompt'ları (kaynaklar, katalog, topoloji, analiz, metrikler)
  • app: Uygulama performans araçları ve prompt'ları (kaynaklar, metrikler, uyarılar, katalog, topoloji, analiz, ayarlar, genel uyarılar)
  • events: Olay izleme araçları ve prompt'ları (Kubernetes olayları, ajan izleme)
  • website: Web sitesi izleme araçları ve prompt'ları (metrikler, katalog, analiz, yapılandırma)

SSL Sertifika Doğrulaması

Giden Instana API çağrıları için SSL sertifika doğrulaması varsayılan olarak devre dışıdır. Bu, hem Akışkan HTTP hem de Stdio taşıma modları için geçerlidir.

SSL sertifika doğrulamasını etkinleştirmek için --verify-ssl CLI seçeneğini veya INSTANA_SSL_VERIFY ortam değişkenini kullanın.

CLI Seçeneğini Kullanma

uv run src/core/server.py --verify-ssl

--verify-ssl seçeneği şunları ayarlamaya eşdeğerdir:

export INSTANA_SSL_VERIFY=true

Ortam Değişkenini Kullanma

export INSTANA_SSL_VERIFY=true
uv run src/core/server.py

SSL doğrulaması, INSTANA_SSL_VERIFY değeri 0, false veya no olarak ayarlandığında (büyük/küçük harf duyarsız) veya boş bırakıldığında devre dışı bırakılır. Diğer herhangi bir değer doğrulamayı etkinleştirir — geleneksel seçenekler olarak true, 1 veya yes kullanın.

Özel CA Paketi Kullanma

SSL doğrulaması etkinleştirildiğinde, varsayılan olarak sistem CA paketi kullanılır. Özel bir CA sertifika paketi kullanmak için INSTANA_CA_BUNDLE değerini ayarlayın:

export INSTANA_SSL_VERIFY=true
export INSTANA_CA_BUNDLE=/path/to/ca-bundle.crt
uv run src/core/server.py

INSTANA_CA_BUNDLE yalnızca SSL sertifika doğrulaması etkinleştirildiğinde kullanılır.

Sunucu, başlangıçta etkin SSL doğrulama durumunu günlüğe kaydeder; böylece ortam değişkeninizin veya CLI bayrağınızın alınıp alınmadığını hemen doğrulayabilirsiniz.

Sunucu Durumunu Doğrulama

Başlatıldıktan sonra sunucunun çalıştığını doğrulayabilirsiniz:

Streamable HTTP modu için:

# Check MCP server
curl http://0.0.0.0:8080/mcp/

# Or with custom port
curl http://0.0.0.0:9000/mcp/

Stdio modu için: Sunucu başlayacak ve MCP istemcilerinden stdin girişini bekleyecektir.

Yaygın Başlangıç Sorunları

SSL / Sertifika Sorunları: Yapılandırma seçenekleri için yukarıdaki SSL Sertifika Doğrulama bölümüne bakın. Doğrulama etkinken SSL hatalarıyla karşılaşıyorsanız ve macOS kullanıyorsanız, Python ortamınızın sistem sertifikalarına erişimi olduğundan emin olun:

# macOS - Install certificates for Python
/Applications/Python\ 3.13/Install\ Certificates.command

Port Zaten Kullanımda: 8080 portu zaten kullanılıyorsa, farklı bir port belirtin:

uv run src/core/server.py --transport streamable-http --port 9000

Eksik Bağımlılıklar: Tüm bağımlılıkların kurulu olduğundan emin olun:

uv sync

Kurulum ve Kullanım

Bob IDE

Bob, MCP entegrasyonunu yerel olarak destekleyen IBM'in yapay zeka destekli IDE'sidir. Bob, yerleşik yapay zeka yardımı ve gözlemlenebilirlik araçlarıyla sorunsuz bir geliştirme deneyimi sağlar.

Streamable HTTP Modu

Streamable HTTP modu, HTTP üzerinden JSON-RPC kullanarak MCP iletişimi için bir REST API arayüzü sağlar.

Adım 1: MCP Sunucusunu Streamable HTTP Modunda Başlatın

Bob'u yapılandırmadan önce, MCP sunucusunu Streamable HTTP modunda başlatmanız gerekir. Ayrıntılı talimatlar için Yerel MCP Sunucusunu Başlatma bölümüne bakın.

Adım 2: Bob'u Yapılandırın

Bob panelinin sağ üst köşesinde, MCP sunucularını içeren bir açılır menü göreceksiniz:

Bunu seçtiğinizde, MCP'yi proje düzeyinde veya genel düzeyde yapılandırma seçeneğini görebilmelisiniz.

MCP Yapılandırma Kapsamları

Bob, kullanım durumunuza en uygun kapsamı seçmenize olanak tanıyan iki düzeyde MCP yapılandırmasını destekler:

1. Genel Yapılandırma (Kullanıcı Düzeyi)

Genel yapılandırma, MCP sunucularını geçerli kullanıcı için tüm projelerde uygular. Bu, üzerinde çalıştığınız her projede aynı MCP sunucularının kullanılabilir olmasını istediğinizde idealdir.

Dosya Konumları:

  • macOS: ~/Library/Application Support/Bob/bob_config.json
  • Windows: %APPDATA%\Bob\bob_config.json
  • Linux: ~/.config/Bob/bob_config.json

2. Proje Yapılandırması (Proje Düzeyi)

Proje yapılandırması, MCP sunucularını yalnızca belirli bir projeye uygular. Bu, farklı projeler farklı MCP sunucu yapılandırmaları gerektirdiğinde veya MCP ayarlarınızı sürüm kontrolü aracılığıyla ekibinizle paylaşmak istediğinizde kullanışlıdır.

Dosya Konumu:

  • Proje kök dizininizde .bob/bob_config.json

Genel ve Proje Yapılandırması Arasında Seçim Yapma:

  • Tüm projelerinizde kullanılabilir olmasını istediğiniz MCP sunucuları için genel yapılandırmayı kullanın
  • Projeye özel MCP sunucuları veya yapılandırmaları ekibinizle paylaşmak için proje yapılandırmasını kullanın
  • Her iki yapılandırma da bir arada bulunabilir - aynı sunucu adı için proje düzeyindeki ayarlar genel ayarlara göre önceliklidir

Bob ve MCP yapılandırması hakkında daha fazla bilgi için şu adresi ziyaret edin: https://bob.ibm.com/docs/ide/configuration/mcp/mcp-in-bob

Yerel Yapılandırma:

Bob'u yerel Instana MCP sunucunuza bağlanacak şekilde yapılandırın:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote", "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header", "instana-base-url: https://your-instana-instance.instana.io",
        "--header", "instana-api-token: your_instana_api_token"
      ]
    }
  }
}

Uzak Yapılandırma:

Bob'u uzak bir Instana MCP sunucusuna (ör. IBM Code Engine'de dağıtılan) bağlanacak şekilde yapılandırın:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote", "https://app-instana-750.1zetetanw8ul.us-east.codeengine.appdomain.cloud/mcp/",
        "--allow-http",
        "--header", "instana-base-url: https://your-instana-instance.instana.io",
        "--header", "instana-api-token: your_instana_api_token"
      ]
    }
  }
}

Not: npx kullanmak için önce NVM (Node Version Manager) kurmanızı, ardından Node.js'i kurmak için kullanmanızı öneririz. Kurulum talimatları şu adreste mevcuttur: https://nodejs.org/en/download

Adım 3: Bağlantıyı Test Edin

MCP yapılandırmasını kurduğunuzda, yeni yapılandırılan MCP sunucusu etkin olarak görünmelidir. Yeşil bir nokta, sunucunun başarıyla çalıştığını gösterir.

Artık Bob IDE'de sorgular çalıştırabilirsiniz:

get me all applications from Instana in the last 24 hours

Stdio Modu

CLI kullanarak yapılandırma (PyPI Kurulumu - Önerilen):

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": ["--transport", "stdio"],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": [
        "--transport", "stdio",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Not: "command not found" hatalarıyla karşılaşırsanız, mcp-instana için tam yolu kullanın. which mcp-instana ile bulun ve bunun yerine bu yolu kullanın.

Geliştirme Kurulumu kullanarak yapılandırma:

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-mcp-instana-folder>",
        "run",
        "src/core/server.py"
      ],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-mcp-instana-folder>",
        "run",
        "src/core/server.py",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Claude Desktop

Claude Desktop, MCP entegrasyonu için hem Streamable HTTP hem de Stdio modlarını destekler.

Claude Desktop'u yapılandırma dosyasını düzenleyerek yapılandırın:

Dosya Konumları:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Streamable HTTP Modu

Streamable HTTP modu, HTTP üzerinden JSON-RPC kullanarak MCP iletişimi için bir REST API arayüzü sağlar.

Adım 1: MCP Sunucusunu Streamable HTTP Modunda Başlatın

Claude Desktop'u yapılandırmadan önce, MCP sunucusunu Streamable HTTP modunda başlatmanız gerekir. Ayrıntılı talimatlar için Yerel MCP Sunucusunu Başlatma bölümüne bakın.

Adım 2: Claude Desktop'u Yapılandırın

Claude Desktop'u Instana kimlik bilgilerini başlıklar aracılığıyla iletecek şekilde yapılandırın:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote", "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header", "instana-base-url: https://your-instana-instance.instana.io",
        "--header", "instana-api-token: your_instana_api_token"
      ]
    }
  }
}

Not: npx kullanmak için önce NVM (Node Version Manager) kurmanızı, ardından Node.js'i kurmak için kullanmanızı öneririz. Kurulum talimatları şu adreste mevcuttur: https://nodejs.org/en/download

Adım 3: Bağlantıyı Test Edin

Claude Desktop'u yeniden başlatın. Artık Claude Desktop arayüzünde Instana MCP Server'ı aşağıda gösterildiği gibi görmelisiniz:

Artık Claude Desktop'ta sorgular çalıştırabilirsiniz:

get me all endpoints from Instana

Stdio Modu

CLI kullanarak yapılandırma (PyPI Kurulumu - Önerilen):

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": ["--transport", "stdio"],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": [
        "--transport", "stdio",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Not: "command not found" hatalarıyla karşılaşırsanız, mcp-instana için tam yolu kullanın. which mcp-instana ile bulun ve bunun yerine bu yolu kullanın.

Geliştirme Kurulumu kullanarak yapılandırma:

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-mcp-instana-folder>",
        "run",
        "src/core/server.py"
      ],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-mcp-instana-folder>",
        "run",
        "src/core/server.py",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Kiro Kurulumu

Kiro, VS Code'a veya başka bir IDE'ye indirilebilen bir uzantı değil, aracı tabanlı bir IDE'dir.

Adım 1: Kiro'yu işletim sisteminiz için https://kiro.dev/. adresinden indirin ve kurun.

Adım 2: Kurulumdan sonra Kiro'yu başlatın ve IDE'de herhangi bir proje açın. alt text

Adım 3: Kiro'nun özelliklerine erişmek için sol kenar çubuğundaki Kiro (Hayalet) simgesine tıklayın. alt text

Adım 4: MCP Sunucuları bölümünün sağ üst köşesindeki Yapılandırmayı Düzenle simgesini seçin. alt text

Adım 5: MCP sunucu yapılandırma dosyasını (mcp.json) açın ve tercih ettiğiniz aktarım moduna göre yapılandırın:

Streamable HTTP Modu (Kiro için Önerilen)

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote", "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header", "instana-base-url: https://your-instana-instance.instana.io",
        "--header", "instana-api-token: your_instana_api_token"
      ]
    }
  }
}

Not: Bu yapılandırmayı kullanmadan önce MCP sunucusunu streamable-http modunda başlattığınızdan emin olun:

mcp-instana --transport streamable-http

Stdio Modu

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": ["--transport", "stdio"],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "mcpServers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": [
        "--transport", "stdio",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Adım 6: Dosyayı kaydettikten sonra MCP'yi Etkinleştir düğmesine tıklayın; MCP sunucunuzu ve kullanılabilir araçlarını Kiro'nun sol alt bölümünde göreceksiniz. alt text

Adım 7: AI Sohbet paneline gidin, MCP sunucunuzla ilgili bir istem girin ve yanıtı doğrudan Kiro içinde görüntüleyin. alt text

GitHub Copilot

GitHub Copilot, VS Code yapılandırması aracılığıyla MCP entegrasyonunu destekler. VS Code ile GitHub Copilot entegrasyonu için şu kurulum kılavuzuna bakın.

Streamable HTTP Modu

Adım 1: MCP Sunucusunu Streamable HTTP Modunda Başlatın

VS Code'u yapılandırmadan önce, MCP sunucusunu Streamable HTTP modunda başlatmanız gerekir. Ayrıntılı talimatlar için Yerel MCP Sunucusunu Başlatma bölümüne bakın.

Adım 2: VS Code'u Yapılandırın

Ayrıntılı yapılandırma için VS Code'da MCP sunucularını kullanma bölümüne bakın.

Aşağıdaki yapılandırmayla .vscode/mcp.json dosyasını doğrudan oluşturabilir veya güncelleyebilirsiniz:

{
  "servers": {
    "Instana MCP Server": {
      "command": "npx",
      "args": [
        "mcp-remote", "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header", "instana-base-url: https://your-instana-instance.instana.io",
        "--header", "instana-api-token: your_instana_api_token"
      ],
      "env": {
        "PATH": "/usr/local/bin:/bin:/usr/bin",
        "SHELL": "/bin/sh"
      }
    }
  }
}

Not: Aşağıdaki değerleri gerçek yapılandırmanızla değiştirin:

  • instana-base-url: Instana örnek URL'niz
  • instana-api-token: Instana API belirteciniz
  • command: npx yolunu sisteminizin Node.js kurulumuyla eşleşecek şekilde güncelleyin (ör. /path/to/your/node/bin/npx)
  • Ortam değişkenleri: PATH'i ve diğer ortam değişkenlerini sisteminiz için gerektiği gibi ayarlayın

Stdio Modu

Adım 1: VS Code MCP Yapılandırması Oluşturun

CLI kullanarak (PyPI Kurulumu - Önerilen):

Proje kökünüzde .vscode/mcp.json dosyasını oluşturun:

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "servers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": ["--transport", "stdio"],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "servers": {
    "Instana MCP Server": {
      "command": "mcp-instana",
      "args": [
        "--transport", "stdio",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Geliştirme Kurulumu kullanarak:

Proje kökünüzde .vscode/mcp.json dosyasını oluşturun:

Seçenek 1: Yapılandırmada ortam değişkenlerini kullanma:

{
  "servers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/your/project/mcp-instana",
        "run",
        "src/core/server.py"
      ],
      "env": {
        "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
        "INSTANA_API_TOKEN": "your_instana_api_token"
      }
    }
  }
}

Seçenek 2: --env bayrağını kullanma (alternatif yöntem):

{
  "servers": {
    "Instana MCP Server": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/your/project/mcp-instana",
        "run",
        "src/core/server.py",
        "--env", "INSTANA_BASE_URL=https://your-instana-instance.instana.io",
        "--env", "INSTANA_API_TOKEN=your_instana_api_token"
      ]
    }
  }
}

Not: Aşağıdaki değerleri gerçek yapılandırmanızla değiştirin:

  • CLI kurulumu için: mcp-instana öğesinin PATH'inizde olduğundan emin olun
  • Geliştirme kurulumu için:
    • command: uv yolunu sisteminizin uv kurulumuyla eşleşecek şekilde güncelleyin (ör. /path/to/your/uv/bin/uv veya /usr/local/bin/uv)
    • --directory: mcp-instana proje dizininizin mutlak yoluyla güncelleyin
  • INSTANA_BASE_URL: Instana örnek URL'niz
  • INSTANA_API_TOKEN: Instana API belirteciniz

Adım 2: VS Code'da Sunucuyu Yönetin

  1. .vscode/mcp.json dosyasını açın - üstte sunucu yönetim kontrollerini göreceksiniz
  2. Sunucuyu başlatmak için Instana MCP Server yanındaki Start düğmesine tıklayın
  3. Araç sayısıyla birlikte çalışma durumu, sunucunun çalıştığını gösterir

Adım 3: Entegrasyonu Test Edin

GitHub Copilot'ta Aracı Moduna geçin ve araçları yeniden yükleyin. İşte bir GitHub Copilot yanıtı örneği:

GitHub Copilot Response

Mistral AI

Mistral AI, MCP entegrasyonunu yalnızca Streamable HTTP modu aracılığıyla destekler.

Adım 1: MCP Sunucusunu Streamable HTTP Modunda Başlatın

Instana kimlik bilgilerinizi sağlayarak MCP sunucusunu Streamable HTTP modunda başlatın. Aşağıdaki komutu çalıştırın:

uv run src/core/server.py --transport streamable-http \
  --api-token "your_instana_api_token" \
  --base-url "https://your-instana-instance.instana.io" \
  --port 8080

Adım 2: Ngrok ile Port Yönlendirmeyi Ayarlayın

Yerel sunucunuzu açığa çıkarmak için port yönlendirmeyi yapılandırın. Ayrıntılı talimatlar için Ngrok kurulum belgelerini izleyin.

Adım 3: Mistral AI'yı Yapılandırın

  1. Sol kenar çubuğundaki Intelligence sekmesine gidin ve Connectors öğesini seçin Mistral HomePage

  2. Add Connector düğmesine tıklayın Connector

  3. Bir bağlayıcı adı ve Ngrok tarafından yönlendirilen MCP sunucu URL'sini girerek özel bir bağlayıcı oluşturun Custom Connector

  4. Yeni bir sohbet oturumu başlatın ve MCP araçlarının etkin olduğunu doğrulayın. Yanıtı burada görüntüleyebilirsiniz Testing MCP connection Response

Birden Fazla Instana MCP Sunucusuna Bağlanma

MCP istemcinizi birden fazla örneğe bağlanacak şekilde yapılandırabilirsiniz. Aşağıda örnek bir yapılandırma verilmiştir:

{
  "mcpServers": {
    "Instana MCP Server1": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header",
        "instana-base-url: ENV1_INSTANA_URL",
        "--header",
        "instana-api-token: ENV1_INSTANA_API_TOKEN"
      ]
    },
    "Instana MCP Server2": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://0.0.0.0:8080/mcp/",
        "--allow-http",
        "--header",
        "instana-base-url: ENV2_INSTANA_URL",
        "--header",
        "instana-api-token: ENV2_INSTANA_API_TOKEN"
      ]
    }
  }
}

Belirli bir sunucuyu hedeflemek için şunları sağlayın:

  • Sunucunun MCP yapılandırmasında uygun ortam adıyla yapılandırılmış olması (ör. Instana MCP Server1)
  • İstemin sunucu/ortam adını açıkça belirtmesi.

İstek daha sonra ilgili yapılandırılmış sunucuya yönlendirilir. İstemde açıkça bir sunucu/ortam belirtilmezse, MCP yapılandırmada tanımlanan ilk sunucuyu varsayılan sunucu olarak kullanır.

Not: İstenen sunucu kapalıysa veya erişilemiyorsa, MCP beklendiği gibi davranır ve API hatasını iletir. Kullanıcı, sunucunun kullanılamadığını belirten API tarafından döndürülen ilgili hatayı alır. MCP, temel API kullanılabilirliğine dayanır ve otomatik yük devretme gerçekleştirmez.

Desteklenen Özellikler

  • Birleşik Uygulama ve Altyapı Yönetimi (manage_instana_resources)
    • Uygulama Metrikleri
      • Esnek filtreleme ile uygulama metriklerini sorgulama
      • Hizmetleri ve uç noktaları listeleme
      • Etiketlere göre gruplama ve metrikleri toplama
    • Uygulama Uyarı Yapılandırması
      • Aktif uyarı yapılandırmalarını bulma
      • Uyarı yapılandırması sürümlerini alma
      • Uyarı yapılandırmaları oluşturma, güncelleme ve silme
      • Uyarı yapılandırmalarını etkinleştirme, devre dışı bırakma ve geri yükleme
      • Geçmiş taban çizgilerini güncelleme
    • Global Uygulama Uyarı Yapılandırması
      • Global uyarı yapılandırmalarını yönetme
      • Global uyarılar için sürüm kontrolü
    • Uygulama Ayarları
      • Uygulama perspektiflerini yönetme
      • Uç noktaları ve hizmetleri yapılandırma
      • Manuel hizmetleri yönetme
    • Uygulama Kataloğu
      • Uygulama etiketi kataloğunu alma
      • Uygulama metrik kataloğunu alma
  • Altyapı Yönetimi (manage_infrastructure)
    • analyze_infrastructure yerine geçen birleşik akıllı yönlendirici — analiz, katalog ve kaynak anlık görüntüleri için tek araç
    • get_plugin_schema — bir eklenti için metrikleri ve etiketleri tek API çağrısında getirir (iki ayrı çağrının yerine geçer)
    • Instana API kataloğundaki tüm varlık türleri için dinamik destek (JVM, Kubernetes, Docker, ana bilgisayarlar, veritabanları, mesaj kuyrukları ve daha fazlası)
    • Statik şema dosyaları kaldırıldı — tüm şema Instana API'sinden canlı olarak getirilir
    • Anlık görüntü kaynak işlemleri: get_snapshot, get_snapshots
    • Esnek metrik toplama (maks, ortalama, toplam vb.)
    • Etiketlere ve özelliklere göre gelişmiş filtreleme
    • Gruplama ve sıralama yetenekleri
    • Zaman aralığı sorguları
  • Birleşik Olay Yönetimi (manage_events)
    • Olay İzleme
      • Kimliğe Göre Olay Alma (operation="get_event")
      • Kimliklere Göre Olayları Alma (operation="get_events_by_ids")
      • Aracı İzleme Olaylarını Alma (operation="get_agent_monitoring_events")
      • Kubernetes Bilgi Olaylarını Alma (operation="get_kubernetes_info_events")
      • Olayları Alma (operation="get_events")
    • Özel olay araçlarına akıllı yönlendirme
    • Birleşik parametre doğrulama (zaman aralıkları, max_events)
    • Doğal dil zaman aralıkları desteği ("son 24 saat", "son 2 gün")
    • Olay filtreleme ve optimizasyon
  • Mobil Uygulama İzleme (manage_mobile_apps)
    • Oturum Tekrarı — yeni (resource_type="session_replay")
      • get_session_replay_action_beacons — mobil uygulama kimliği ve oturum kimliğine göre eylem işaretlerinin sayfalı alınması
      • İmleç tabanlı sayfalama (cursor, page_size, hasMore)
    • İşaret Analizi, Performans Metrikleri, Coğrafi ve Cihaz Analizi, Uyarı Yönetimi (mevcut)
  • Birleşik Web Sitesi Yönetimi (manage_website_resources)
    • Web Sitesi Analizi (resource_type="analyze")
      • Web Sitesi İşaret Gruplarını Alma - gruplandırılmış/toplanmış işaret verileri (operation="get_beacon_groups")
      • Web Sitesi İşaretlerini Alma - sayfalama ile bireysel işaret verileri (operation="get_beacons")
      • Otomatik etiket doğrulama ve katalog tabanlı bilgi toplama iş akışı
      • Yanıt özetleme (%70-80 yük azaltma)
      • Birden fazla işaret türü desteği: PAGELOAD, PAGECHANGE, RESOURCELOAD, CUSTOM, HTTPREQUEST, ERROR
    • Web Sitesi Kataloğu (resource_type="catalog")
      • Web Sitesi Metrik Kataloğunu Alma (operation="get_metrics")
      • İşaret türüne ve kullanım senaryosuna göre Web Sitesi Etiket Kataloğunu Alma (operation="get_tag_catalog")
    • Web Sitesi Yapılandırması (resource_type="configuration")
      • Tüm Web Sitelerini Alma (operation="get_all")
      • Otomatik ad çözümleme ile kimliğe veya ada göre Web Sitesi Alma (operation="get")
    • Gelişmiş Yapılandırma - YALNIZCA OKUMA (resource_type="advanced_config")
      • Coğrafi Konum Yapılandırmasını Alma (operation="get_geo_config")
      • IP Maskeleme Yapılandırmasını Alma (operation="get_ip_masking")
      • Coğrafi Eşleme Kurallarını Alma (operation="get_geo_rules")
  • Birleşik Otomasyon Yönetimi (manage_automation)
    • Eylem Kataloğu (resource_type="catalog")
      • Mevcut tüm otomasyon eylemlerini listeleme (operation="get_actions")
      • Belirli bir eylem hakkında ayrıntılı bilgi alma (operation="get_action_details")
      • Ada/açıklamaya göre eşleşen eylemleri arama (operation="get_action_matches")
      • Uygulama veya anlık görüntü kimliği ve zaman penceresine göre eylem eşleşmelerini alma (operation="get_action_matches_by_id_and_time_window")
      • Mevcut eylem türlerini alma (operation="get_action_types")
      • Mevcut eylem etiketlerini alma (operation="get_action_tags")
    • Eylem Geçmişi (resource_type="history")
      • Filtreleme ile eylem yürütme örneklerini listeleme (operation="list")
      • Belirli bir eylem yürütmesinin ayrıntılarını alma (operation="get_details")
  • Birleşik Sentetik İzleme (manage_synthetics)
    • Sentetik Katalog (resource_type="catalog")
      • Sorgu planlaması için desteklenen toplamalarla mevcut metrikleri alma (operation="get_synthetic_catalog_metrics")
      • Filtreleme, gruplama ve akıllı uyarılar için geçerli etiket adlarını alma (operation="get_synthetic_tag_catalog")
    • Sentetik Metrikler (resource_type="metrics")
      • Konuma veya test adına göre gruplandırılmış toplanmış sentetik metrikleri alma (operation="get_metrics_result")
    • Sentetik Ayarlar (resource_type="settings")
      • Kimliğe veya ada göre sentetik testin tam yapılandırmasını alma (operation="get_synthetic_test")
      • Uygulama, konum veya kimlik bilgisine göre isteğe bağlı filtreleme ile sentetik testleri listeleme (operation="get_synthetic_tests")
      • Tür, coğrafya ve yetenek meta verileriyle tüm izleme konumlarını listeleme (operation="get_locations")
      • Otomatik ad çözümleme ile kimliğe veya ada göre tek bir konum alma (operation="get_location_by_id")
      • Çevrimiçi sayısıyla tüm veri merkezi (Yönetilen) konumlarını alma (operation="get_all_datacenters")
    • Sentetik Test Oynatımı (resource_type="test_playback")
      • Test başına toplanmış oynatım metriklerini alma (operation="get_synthetic_result")
      • LAST_VALUE analitiğini kullanarak test başına en son sonucu alma (operation="get_synthetic_result_analytic")
      • Ham durum, hatalar ve zaman damgalarıyla bireysel test çalıştırma sonuçlarını alma (operation="get_synthetic_result_list")
      • Son çalıştırma zamanı ve PoP sürümü dahil konum düzeyinde özet meta verilerini alma (operation="get_location_summary_list")
      • Konum başına dağılımla test başına başarı oranlarını alma (operation="get_test_summary_list")
      • Belirli bir test sonucu için mevcut ayrıntı veri türlerini alma (operation="get_synthetic_result_metadata")
      • Günlükler, HAR veya ekran görüntüleri gibi ayrıntı veri dosyası içeriklerini alma (operation="get_synthetic_result_detail_data")
  • Özel Panolar (manage_custom_dashboards)
    • Tüm özel panoları alma
    • Kimliğe göre belirli bir panoyu alma
    • Yeni özel pano oluşturma
    • Mevcut özel panoyu güncelleme
    • Özel panoyu silme
    • Pano için paylaşılabilir kullanıcıları alma
    • Pano için paylaşılabilir API belirteçlerini alma

Mevcut Araçlar

AraçKategoriAçıklama
manage_applicationsUygulama ve AltyapıUygulama metriklerini, uyarı yapılandırmalarını, ayarları ve kataloğu yönetmek için birleşik araç
manage_websitesWeb Sitesi İzlemeWeb sitesi analizi, katalog, yapılandırma ve gelişmiş yapılandırma işlemleri için birleşik akıllı yönlendirici
manage_custom_dashboardsÖzel PanolarÖzel pano CRUD işlemlerini yönetmek için birleşik araç
manage_infrastructureAltyapıAltyapı analizi, katalog (get_plugin_schema) ve anlık görüntü kaynak işlemleri için birleşik akıllı yönlendirici
manage_automationOtomasyonOtomasyon için birleşik akıllı yönlendirici: eylem kataloğuna göz atma ve yürütme geçmişini görüntüleme
manage_eventsOlaylarOlay izleme için birleşik akıllı yönlendirici: kimliğe göre olay alma, kimliklere göre olayları alma, Kubernetes olayları, aracı izleme olayları ve tüm olaylar
manage_sloSLO YönetimiAkıllı saat dilimi işleme ile SLO yapılandırmaları, raporlar, uyarılar ve düzeltme pencereleri için birleşik akıllı yönlendirici
manage_releasesSürüm YönetimiSürüm takibi için birleşik akıllı yönlendirici: sayfalama ve ad filtreleme ile sürümleri listeleme, sürüm ayrıntılarını alma, saat dilimi desteğiyle sürüm oluşturma/güncelleme/silme
manage_maintenance_windowsBakım PencereleriBakım penceresi yaşam döngüsü yönetimi için birleşik akıllı yönlendirici: şablon desteği ve ServiceNow entegrasyonu ile bakım pencereleri oluşturma, değiştirme, kapatma ve listeleme
manage_mobile_appsMobil Uygulama İzlemeMobil uygulama izleme için birleşik akıllı yönlendirici: işaretleri analiz etme, performans metrikleri, oturum tekrarı, yapılandırma ve uyarı yönetimi
manage_syntheticsSentetik İzlemeSentetik izleme için birleşik akıllı yönlendirici: katalog, metrikler, ayarlar (salt okunur) ve test oynatım sonuçları

👉 Ayrıntılı araç belgeleri, yetenekler ve teknik referans için bkz. Araçlar ve Örnekler

Araç Filtreleme

MCP sunucusu, performansı optimize etmek ve kaynak kullanımını azaltmak için seçici araç yüklemeyi destekler. Belirli kullanım senaryonuz için yalnızca ihtiyacınız olan araç kategorilerini etkinleştirebilirsiniz.

Mevcut Araç Kategorileri

  • router: Birleşik uygulama ve altyapı yönetimi

    • manage_instana_resources: Uygulama metrikleri, uyarı yapılandırmaları, ayarlar ve katalog için tek araç
    • Uygulama perspektiflerini, uç noktaları, hizmetleri ve manuel hizmetleri destekler
    • Hem uygulamaya özel hem de global uyarı yapılandırmalarını yönetir
    • Uygulama etiketi kataloğuna ve metrik kataloğuna erişim sağlar
  • dashboard: Özel pano yönetimi

    • manage_custom_dashboards: Özel panolar için CRUD işlemleri
    • Pano oluşturma, alma, güncelleme ve silme işlemlerini destekler
    • Panolar için paylaşılabilir kullanıcıları ve API belirteçlerini yönetir
  • infra: Altyapı yönetimi araçları

    • manage_infrastructure: Altyapı analizi, katalog ve anlık görüntü kaynak işlemleri için birleşik akıllı yönlendirici
    • get_plugin_schema, get_metrics + get_tag_catalog işlemlerini tek bir API çağrısında birleştirir
    • Instana kurulumunuzda bulunan tüm varlık türlerini dinamik olarak destekler (API kataloğundan otomatik olarak yüklenir)
    • JVM, Kubernetes, Docker, ana bilgisayarlar, veritabanları, mesaj kuyrukları ve özel veya yeni eklenen tüm varlık türlerini içerir
    • Esnek metrik toplama, filtreleme, gruplama ve zaman aralığı sorguları
  • automation: Otomasyon eylem araçları

    • manage_automation: Otomasyon kataloğu ve yürütme geçmişi için birleşik akıllı yönlendirici
    • Eylem Kataloğu: eylemleri göz atın, ayrıntıları alın, ada/açıklamaya göre arayın, uygulama veya anlık görüntü kimliğine göre filtreleyin
    • Eylem Geçmişi: filtreleme ile yürütme örneklerini listeleyin, yürütme ayrıntılarını alın
  • events: Olay izleme araçları

    • Olaylar: Kubernetes olayları, aracı izleme ve sistem olay takibi
  • website: Web sitesi izleme araçları

    • Web Sitesi Metrikleri: Web siteleri için performans ölçümü
    • Web Sitesi Kataloğu: Web sitesi meta verileri ve tanımları
    • Web Sitesi Analizi: Web sitesi performans analizi
    • Web Sitesi Yapılandırması: Web sitesi yapılandırma yönetimi
  • slo: Hizmet Düzeyi Hedefi (SLO) yönetimi

    • manage_slo: Kapsamlı SLO işlemleri için birleşik akıllı yönlendirici
    • Yapılandırma Yönetimi: Zaman tabanlı ve olay tabanlı göstergeler için destekle SLO yapılandırmaları oluşturun, okuyun, güncelleyin, silin
    • Rapor Oluşturma: SLI değerleri, hata bütçeleri, yanma oranları ve zaman serisi çizelgeleriyle ayrıntılı SLO raporları oluşturun
    • Uyarı Yapılandırması: Hata bütçesi izleme ve yanma oranı takibi için SLO uyarı yapılandırmalarını yönetin
    • Düzeltme Pencereleri: Planlı kesintileri SLO hesaplamalarından hariç tutmak için bakım pencereleri oluşturun ve yönetin
    • Akıllı Saat Dilimi İşleme: Doğru zaman bağlamını sağlamak için tarihsaat girdileri için otomatik saat dilimi belirleme
    • İki Geçişli Belirleme: Birden fazla girdi gerektiren karmaşık işlemler için etkileşimli parametre toplama
  • releases: Sürüm takibi ve dağıtım yönetimi

    • manage_releases: Sürüm işlemleri için birleşik akıllı yönlendirici
    • Sürümleri Listele: Verimli sayfalama (page_number, page_size) ve ada dayalı filtreleme ile tüm sürümleri alın
    • Sürüm Ayrıntıları: Uygulamalar, hizmetler ve kapsamlar dahil olmak üzere kimliğe göre belirli sürüm bilgilerini alın
    • Oluştur/Güncelle/Sil: Sürüm yönetimi için tam CRUD işlemleri
    • Akıllı Saat Dilimi İşleme: Sürüm başlangıç zamanları için otomatik saat dilimi belirleme
    • Verimli Sayfalama: Uygun sayfa tabanlı gezinme ile gereksiz veri çekmeyi önleyin
    • Ad Filtreleme: Sürümleri ada göre bulmak için büyük/küçük harf duyarsız alt dize eşleştirme
  • maintenance_window: Bakım penceresi yaşam döngüsü yönetimi

    • manage_maintenance_windows: Bakım penceresi işlemleri için birleşik akıllı yönlendirici
    • Pencere İşlemleri: Bakım pencereleri oluşturun, değiştirin, kapatın ve listeleyin (etkin, zamanlanmış, tümü, süresi dolmuş)
    • Toplu İşlemler: Birden fazla uygulama için aynı anda bakım pencereleri oluşturun
    • Şablon Desteği: Yaygın senaryolar için önceden tanımlanmış şablonlar (deployment, database_migration, infrastructure_upgrade, emergency, routine)
    • Yinelenen Pencereler: RFC 5545 RRULE biçimini kullanarak yinelenen bakım pencereleri desteği
    • ServiceNow Entegrasyonu: ServiceNow değişiklik istekleriyle isteğe bağlı entegrasyon
    • Doğrulama: Pencere oluşturmadan önce parametre doğrulama
    • Esnek Süre: Süreyi dakika, saat veya gün olarak belirtin
  • mobile_app: Mobil uygulama izleme

    • manage_mobile_apps: Mobil uygulama izleme işlemleri için birleşik akıllı yönlendirici
    • Oturum Tekrarı: Mobil uygulama kimliği ve oturum kimliğine göre sayfalanmış oturum tekrarı eylem işaretlerini alın (resource_type="session_replay")
    • İşaret Analizi: Gruplama ve filtreleme ile mobil uygulama işaret verilerini sorgulayın
    • Performans Metrikleri: Oturum süresini, çökme oranlarını ve HTTP istek performansını izleyin
    • Coğrafi Analiz: Kullanıcı dağılımını ülke, şehir ve bölgeye göre analiz edin
    • Cihaz Analizi: Farklı cihazlar, platformlar ve işletim sistemi sürümlerinde performansı izleyin
    • Yapılandırma Yönetimi: Mobil uygulama yapılandırmalarını, coğrafi konumu ve IP maskeleme ayarlarını yönetin
    • Uyarı Yönetimi: Mobil uygulama uyarı yapılandırmalarını yapılandırın ve yönetin
  • synthetics: Sentetik izleme yönetimi

    • manage_synthetics: Tüm sentetik izleme işlemleri için birleşik akıllı yönlendirici
    • Katalog: Sorgular oluşturmadan önce geçerli metrik kimliklerini ve etiket adlarını keşfedin
    • Metrikler: Konuma veya test adına göre gruplandırılmış toplu yanıt sürelerini ve başarı oranlarını alın
    • Ayarlar: Otomatik ad çözümleme ile testleri ve konumları listeleyin ve arayın; veri merkezi (Managed) ile kendi kendine barındırılan (Private) PoP'ları belirleyin
    • Test Oynatma: Çalıştırma başına ham sonuçlar, LAST_VALUE analitiği, konum başına başarı oranı özetleri ve ayrıntı dosyası indirmeleri (LOGS, HAR, screenshots)

Kullanım Örnekleri

CLI Kullanımı (PyPI Kurulumu)

# Enable only router (unified app/infra management) and events tools
mcp-instana --tools router,events --transport streamable-http

# Enable only infrastructure analysis tools
mcp-instana --tools infra --transport streamable-http

# Enable router and infrastructure analysis
mcp-instana --tools router,infra --transport streamable-http

# Enable events and website tools
mcp-instana --tools events,website --transport streamable-http

# Enable dashboard and router tools
mcp-instana --tools dashboard,router --transport streamable-http

# Enable releases and events tools
mcp-instana --tools releases,events --transport streamable-http

# Enable maintenance window and events tools
mcp-instana --tools maintenance_window,events --transport streamable-http

# Enable all tools (default behavior)
mcp-instana --transport streamable-http

# List all available tool categories and their tools
mcp-instana --list-tools

Geliştirme Kurulumunu Kullanma

# Enable only router (unified app/infra management) and events tools
uv run src/core/server.py --tools router,events --transport streamable-http

# Enable only infrastructure analysis tools
uv run src/core/server.py --tools infra --transport streamable-http

# Enable router and infrastructure analysis
uv run src/core/server.py --tools router,infra --transport streamable-http

# Enable events and website tools
uv run src/core/server.py --tools events,website --transport streamable-http

# Enable dashboard and router tools
uv run src/core/server.py --tools dashboard,router --transport streamable-http

# Enable releases and events tools
uv run src/core/server.py --tools releases,events --transport streamable-http

# Enable maintenance window and events tools
uv run src/core/server.py --tools maintenance_window,events --transport streamable-http

# Enable all tools (default behavior)
uv run src/core/server.py --transport streamable-http

# List all available tool categories and their tools
uv run src/core/server.py --list-tools

Araç Filtrelemenin Faydaları

  • Performans: Azaltılmış başlangıç süresi ve bellek kullanımı
  • Güvenlik: Yalnızca gerekli API'lere maruz kalmayı sınırlayın
  • Netlik: Belirli kullanım durumlarına odaklanın (ör. yalnızca altyapı izleme)
  • Kaynak Verimliliği: Daha düşük CPU ve ağ kullanımı

👉 Kullanım örnekleri ve istemler için bkz. Örnek İstemler

Docker Dağıtımı

MCP Instana sunucusu, üretim ortamları için Docker kullanılarak dağıtılabilir. Docker kurulumu güvenlik, performans ve minimum kaynak kullanımı için optimize edilmiştir.

Docker İmajını Oluşturma

Ön Koşullar

  • Docker kurulu ve çalışıyor
  • Proje kaynak koduna erişim

Derle ve Çalıştır

# Build the image
docker build -t mcp-instana:latest .

# Build with a specific tag
docker build -t mcp-instana:<image_tag> .
# Run the container (credentials are supplied via HTTP headers at request time)
docker run -p 8080:8080 mcp-instana

# Run with a custom host port
docker run -p 8081:8080 mcp-instana

📖 Çok mimarili derlemeler, .dockerignore, güvenlik en iyi uygulamaları ve üretim dağıtım örnekleri dahil kapsamlı Docker belgeleri için bkz. DOCKER.md.

Sorun Giderme

Docker Sorunları

Kapsayıcı Başlamıyor

# Check container logs
docker logs <container_id>
# Common issues:
# 1. Port already in use
# 2. Invalid container image
# 3. Missing dependencies
# Credentials are passed via HTTP headers from the MCP client

Bağlantı Sorunları

# Test container connectivity (expects 406 from a bare GET — means server is up)
curl http://localhost:8080/mcp
# Check port mapping
docker port <container_id>

Performans Sorunları

# Check container resource usage
docker stats <container_id>
# Monitor container health
docker inspect <container_id> | grep -A 10 Health

Genel Sorunlar

  • GitHub Copilot

    • GitHub Copilot ile sorun yaşıyorsanız, mcp.json dosyasındaki sunucuyu başlatmayı/durdurmayı/yeniden başlatmayı deneyin ve aynı anda yalnızca bir sunucunun çalıştığından emin olun.
  • Sertifika Sorunları

    • [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate gibi sertifika sorunlarıyla karşılaşırsanız:
      • SSL doğrulaması ile curl veya wget kullanarak Instana API uç noktasına ulaşabildiğinizi kontrol edin.
        • Bu çalışıyorsa, Python ortamınız sertifikayı doğrulayamıyor olabilir ve kabuğunuz veya sisteminizle aynı sertifikalara erişimi olmayabilir. Python ortamınızın sistem sertifikalarını kullandığından emin olun (macOS). Bunu Python'a sertifika yükleyerek yapabilirsiniz: /Applications/Python\ 3.13/Install\ Certificates.command
      • SSL doğrulaması ile uç noktaya ulaşamıyorsanız, doğrulama olmadan deneyin. Bu çalışıyorsa, sisteminizin CA sertifikalarını kontrol edin ve güncel olduklarından emin olun.