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 metriklerini sorgulaapp araç kategorisiyle metrikler, uyarılar ve topoloji dahil uygulama performans verilerini isteyin.
  • Altyapı sağlığını izleinfra araç kategorisini kullanarak altyapı kaynaklarını alın, katalog bilgilerini edinin ve metrikleri analiz edin.
  • Olayları ve uyarıları takip etevents araç kategorisi aracılığıyla Kubernetes olaylarını ve aracı izleme verilerini alın.
  • Web sitesi performansını kontrol etwebsite araç kategorisini kullanarak web sitesi izleme metriklerine ve yapılandırmasına erişin.
  • Araçları kategoriye göre filtrele — Performansı optimize etmek için sunucuyu yalnızca gerekli kategorilerle --tools bayrağını kullanarak başlatın.

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.

Bu sunucu, istemciler (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 Streamable 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üşünelim: 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'dan Kurulum (Önerilen)

mcp-instana kullanmanın en kolay yolu, doğrudan PyPI'dan 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

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

Streamable 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 birlikte sağlanmışsa) - IBM Platform entegrasyonu için önceliklidir
  2. Oturum Token'ları (hem auth_token hem csrf_token sağlanmışsa)
  3. API Token (sağlanmışsa) - 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: Streamable HTTP ve Stdio.

Sunucu Komut Seçenekleri

CLI Kullanımı (PyPI Kurulumu)

mcp-instana'yı PyPI'dan 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 ayarlayın (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ştirin
  • --log-level <level>: Günlük seviyesini ayarlayın (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)
  • --help: Yardım mesajını göster ve çık

Streamable HTTP Modunda Başlatma

Streamable 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

Streamable HTTP Modunun Temel Özellikleri:

  • Kimlik doğrulama için HTTP başlıklarını kullanır (ortam değişkeni 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, global 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)

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şlatma Sorunları

Sertifika Sorunları: SSL sertifika hatalarıyla karşılaşırsanı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 doğal olarak destekleyen IBM'in yapay zeka destekli IDE'sidir. Bob, yerleşik yapay zeka yardımı ve gözlemlenebilirlik araçlarıyla kesintisiz bir geliştirme deneyimi sunar.

Streamable HTTP Modu

Streamable HTTP modu, HTTP üzerinden JSON-RPC kullanarak MCP iletişimi için 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ın bulunduğu bir açılır menü görürsünüz:

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

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ının tüm projelerinde uygular. Aynı MCP sunucularını üzerinde çalıştığınız her projede kullanılabilir hale getirmek 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. Farklı projelerin farklı MCP sunucu yapılandırmaları gerektirdiği durumlarda veya MCP ayarlarını ekibinizle sürüm kontrolü aracılığıyla paylaşmak istediğinizde kullanışlıdır.

Dosya Konumu:

  • Proje kök dizininizdeki .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ırma kullanın
  • Projeye özel MCP sunucuları veya yapılandırmaları ekibinizle paylaşmak için proje yapılandırması kullanın
  • Her iki yapılandırma da birlikte bulunabilir - proje düzeyindeki ayarlar, aynı sunucu adı için 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 üzerinde dağıtılmış) 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 Sürüm Yöneticisi) kurmanızı, ardından Node.js'i kurmak için bunu 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ı ayarladıktan sonra, 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 bu yolu bunun yerine 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 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 Sürüm Yöneticisi) kurmanızı, ardından Node.js'i kurmak için bunu 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 bu yolu bunun yerine 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 veya başka bir IDE'ye indirilebilen bir eklenti değil, aracı tabanlı (agentic) 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 projeyi 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 (Edit Config) simgesini seçin. alt text

Adım 5: MCP sunucu yapılandırma dosyasını (mcp.json) açın ve tercih ettiğiniz taşıma 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 (Enable MCP) düğmesine tıklayın; MCP sunucunuzu ve kullanılabilir araçlarını Kiro'nun sol alt bölümünde görürsünüz. 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 bu kurulum kılavuzuna başvurun.

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 başvurun.

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 örneği URL'niz
  • instana-api-token: Instana API belirteciniz
  • command: npx yolunu sisteminizin Node.js kurulumuna uyacak şekilde güncelleyin (ör. /path/to/your/node/bin/npx)
  • Ortam değişkenleri: PATH ve diğer ortam değişkenlerini sisteminiz için gerektiği şekilde 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 içinde olduğundan emin olun
  • Geliştirme kurulumu için:
    • command: uv yolunu sisteminizin uv kurulumuna uyacak ş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 örneği URL'niz
  • INSTANA_API_TOKEN: Instana API belirteciniz

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

  1. .vscode/mcp.json öğesini açın - üst kısımda sunucu yönetimi kontrollerini görürsünüz
  2. Instana MCP Server yanındaki Start öğesine tıklayın - sunucuyu başlatmak için
  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. GitHub Copilot yanıtına bir örnek:

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 öğesine tıklayın Connector

  3. Bir bağlayıcı adı ve Ngrok ile 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ğladığınızdan emin olun:

  • Sunucu, MCP yapılandırmasında uygun ortam adıyla yapılandırılmıştır (ör. Instana MCP Server1)
  • İstem, sunucu/ortam adını açıkça belirtir.

İstek daha sonra ilgili yapılandırılmış sunucuya yönlendirilir. İstemde hiçbir sunucu/ortam açıkça 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- [x] 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ı
    • Etkin 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şe dayalı 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 metriği 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 bir API çağrısıyla getirir (iki ayrı çağrının yerini alır)
    • 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 şemalar Instana API'sinden canlı olarak getirilir
    • Kaynak anlık görüntü 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 Etkinlik Yönetimi (manage_events)
    • Etkinlik İzleme
      • Etkinliği Kimliğe Göre Al (operation="get_event")
      • Etkinlikleri Kimliklere Göre Al (operation="get_events_by_ids")
      • Aracı İzleme Etkinliklerini Al (operation="get_agent_monitoring_events")
      • Kubernetes Bilgi Etkinliklerini Al (operation="get_kubernetes_info_events")
      • Etkinlikleri Al (operation="get_events")
    • Özel etkinlik araçlarına akıllı yönlendirme
    • Birleşik parametre doğrulama (zaman aralıkları, max_events)
    • Doğal dil zaman aralıkları için destek ("son 24 saat", "son 2 gün")
    • Etkinlik 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 etkinleştirme işaretlerinin sayfalı olarak 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ı Al - gruplandırılmış/toplanmış işaret verileri (operation="get_beacon_groups")
      • Web Sitesi İşaretlerini Al - 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 azaltımı)
      • Birden fazla işaret türü desteği: PAGELOAD, PAGECHANGE, RESOURCELOAD, CUSTOM, HTTPREQUEST, ERROR
    • Web Sitesi Kataloğu (resource_type="catalog")
      • Web Sitesi Metrikleri Kataloğunu Al (operation="get_metrics")
      • İşaret türüne ve kullanım durumuna göre Web Sitesi Etiketi Kataloğunu Al (operation="get_tag_catalog")
    • Web Sitesi Yapılandırması (resource_type="configuration")
      • Tüm Web Sitelerini Al (operation="get_all")
      • Otomatik ad çözümleme ile Web Sitesini Kimliğe veya Ada Göre Al (operation="get")
    • Gelişmiş Yapılandırma - YALNIZCA OKUMA (resource_type="advanced_config")
      • Coğrafi Konum Yapılandırmasını Al (operation="get_geo_config")
      • IP Maskeleme Yapılandırmasını Al (operation="get_ip_masking")
      • Coğrafi Eşleme Kurallarını Al (operation="get_geo_rules")
  • Birleşik Otomasyon Yönetimi (manage_automation)
    • Eylem Kataloğu (resource_type="catalog")
      • Mevcut tüm otomasyon eylemlerini listele (operation="get_actions")
      • Belirli bir eylem hakkında ayrıntılı bilgi al (operation="get_action_details")
      • Ada/açıklamaya göre eşleşen eylemleri ara (operation="get_action_matches")
      • Uygulama veya anlık görüntü kimliğine ve zaman penceresine göre eylem eşleşmelerini al (operation="get_action_matches_by_id_and_time_window")
      • Mevcut eylem türlerini al (operation="get_action_types")
      • Mevcut eylem etiketlerini al (operation="get_action_tags")
    • Eylem Geçmişi (resource_type="history")
      • Filtreleme ile eylem yürütme örneklerini listele (operation="list")
      • Belirli bir eylem yürütmesinin ayrıntılarını al (operation="get_details")
  • Özel Panolar (manage_custom_dashboards)
    • Tüm özel panoları al
    • Belirli bir panoyu kimliğe göre al
    • Yeni özel pano oluştur
    • Mevcut özel panoyu güncelle
    • Özel panoyu sil
    • Pano için paylaşılabilir kullanıcıları al
    • Pano için paylaşılabilir API belirteçlerini al

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 kaynak anlık görüntü 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_eventsEtkinliklerEtkinlik izleme için birleşik akıllı yönlendirici: etkinliği kimliğe göre al, etkinlikleri kimliklere göre al, Kubernetes etkinlikleri, aracı izleme etkinlikleri ve tüm etkinlikler
manage_sloSLO YönetimiAkıllı saat dilimi yönetimi 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 listele, sürüm ayrıntılarını al, saat dilimi desteği ile sürüm oluştur/güncelle/sil
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ştur, değiştir, kapat ve listele
manage_mobile_appsMobil Uygulama İzlemeMobil uygulama izleme için birleşik akıllı yönlendirici: işaretleri analiz et, performans metrikleri, oturum tekrarı, yapılandırma ve uyarı yönetimi

👉 Ayrıntılı araç dokümantasyonu, 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üklemesini destekler. Belirli kullanım durumunuz 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 silmeyi destekler
    • Panolar için paylaşılabilir kullanıcıları ve API belirteçlerini yönetir
  • infra: Altyapı yönetim araçları

    • manage_infrastructure: Altyapı analizi, katalog ve kaynak anlık görüntü işlemleri için birleşik akıllı yönlendirici
    • get_plugin_schema, get_metrics + get_tag_catalog değerlerini 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 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: eylemlere göz at, ayrıntıları al, ada/açıklamaya göre ara, uygulama veya anlık görüntü kimliğine göre filtrele
    • Eylem Geçmişi: filtreleme ile yürütme örneklerini listele, yürütme ayrıntılarını al
  • events: Etkinlik izleme araçları

    • Etkinlikler: Kubernetes etkinlikleri, aracı izleme ve sistem etkinliği 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 SLO yapılandırmaları oluşturma, okuma, güncelleme, silme
    • Rapor Üretimi: SLI değerleri, hata bütçeleri, yanma oranları ve zaman serisi grafikleriyle ayrıntılı SLO raporları oluşturma
    • Uyarı Yapılandırması: Hata bütçesi izleme ve yanma oranı takibi için SLO uyarı yapılandırmalarını yönetme
    • Düzeltme Pencereleri: Planlanan kesintileri SLO hesaplamalarından hariç tutmak için bakım pencereleri oluşturma ve yönetme
    • Akıllı Saat Dilimi Yönetimi: Doğru zaman bağlamını sağlamak için tarih-saat girdilerinde otomatik saat dilimi bilgisi toplama
    • İki Aşamalı Bilgi Toplama: 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 ad tabanlı filtreleme ile tüm sürümleri al
    • Sürüm Ayrıntıları: Uygulamalar, hizmetler ve kapsamlar dahil olmak üzere kimliğe göre belirli sürüm bilgilerini al
    • Oluştur/Güncelle/Sil: Sürüm yönetimi için tam CRUD işlemleri
    • Akıllı Saat Dilimi Yönetimi: Sürüm başlangıç zamanları için otomatik saat dilimi bilgisi toplama
    • Verimli Sayfalama: Doğru sayfa tabanlı gezinme ile gereksiz veri getirmeyi önleme
    • Ad Filtreleme: Sürümleri ada göre bulmak için büyük/küçük harfe 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şturma, değiştirme, kapatma ve listeleme (aktif, zamanlanmış, tümü, süresi dolmuş)
    • Toplu İşlemler: Birden fazla uygulama için aynı anda bakım pencereleri oluşturma
    • Şablon Desteği: Yaygın senaryolar için önceden tanımlanmış şablonlar (deployment, database_migration, infrastructure_upgrade, emergency, routine)
    • Tekrarlayan Pencereler: RFC 5545 RRULE formatını kullanarak tekrarlayan bakım pencereleri desteği
    • ServiceNow Entegrasyonu: ServiceNow değişiklik talepleriyle isteğe bağlı entegrasyon
    • Doğrulama: Pencere oluşturmadan önce parametre doğrulama
    • Esnek Süre: Süreyi dakika, saat veya gün cinsinden 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 (beacon) alın (resource_type="session_replay")
    • İşaret (Beacon) 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 konum ve IP maskeleme ayarlarını yönetin
    • Uyarı Yönetimi: Mobil uygulama uyarı yapılandırmalarını yapılandırın ve yönetin

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 maruziyeti sınırlayın
  • Netlik: Belirli kullanım senaryoları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 Mimarisi

Proje iki dosyalı bağımlılık yönetimi stratejisi kullanır:

pyproject.toml

  • Amaç: Hem geliştirme hem de üretim için birleşik yapılandırma
  • Bağımlılıklar: İsteğe bağlı geliştirme bağımlılıklarıyla birlikte tüm temel bağımlılıklar
  • Kullanım: Yerel geliştirme, test, CI/CD ve Docker üretim derlemeleri
  • Faydalar: Tüm bağımlılıklar için tek doğruluk kaynağı, basitleştirilmiş bakım

Docker İmajını Oluşturma

Ön Koşullar

  • Docker kurulu ve çalışıyor
  • Proje kaynak koduna erişim
  • Çoklu mimari derlemeleri için Docker BuildKit (yeni Docker sürümlerinde varsayılan olarak etkindir)

Derleme Komutu

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

# Build with a specific tag
docker build -t mcp-instana:<image_tag> .

Çalıştırma Komutu

# Run the container (no credentials needed in the container)
docker run -p 8080:8080 mcp-instana

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

📖 Çoklu mimari derlemeler, Docker Compose kurulumu, 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
docker exec -it <container_id> curl http://127.0.0.1:8080/health
# 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şarsanı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ıyla 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ğunuzun veya sisteminizin erişebildiği sertifikalara erişemiyor olabilir. 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ıyla 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.