IBM Instana MCP Server
resmiServer MCP IBM Instana memungkinkan interaksi yang mulus dengan platform observabilitas IBM Instana, sehingga Anda dapat mengakses data observabilitas waktu nyata langsung dalam alur kerja pengembangan Anda.
Apa yang bisa Anda lakukan dengan IBM Instana MCP?
- Ambil cuplikan infrastruktur — Minta cuplikan dari host, proses, atau wadah tertentu menggunakan
get_infra_snapshot. - Analisis metrik aplikasi atau layanan — Minta metrik deret waktu untuk panggilan, kesalahan, atau latensi dengan
get_app_metricsatauget_service_metrics. - Daftar peringatan dan insiden aktif — Dapatkan peringatan, insiden, atau peringatan pintar global saat ini melalui
get_alertsdanget_incidents. - Periksa peristiwa Kubernetes — Tarik peristiwa Kubernetes terbaru untuk klaster atau namespace dengan
get_k8s_events. - Kueri data pemantauan situs web — Ambil metrik kinerja situs web atau hasil beacon melalui
get_website_metrics.
Dokumentasi
Daftar Isi
- Server MCP untuk IBM Instana
- 📚 Tautan Cepat
- Ikhtisar Arsitektur
- Alur Kerja
- Prasyarat
- Memulai Server MCP Lokal
- Penyiapan dan Penggunaan
- Fitur yang Didukung
- Alat yang Tersedia
- Penyaringan Alat
- Penerapan Docker
- Pemecahan Masalah
Server MCP untuk IBM Instana
📚 Tautan Cepat
- Alat & Contoh - Dokumentasi alat yang komprehensif dengan contoh dunia nyata
- Kebijakan Privasi - Informasi penanganan data dan privasi
- Panduan Penerapan Docker - Penerapan Docker yang komprehensif, build multi-arsitektur, dan penyiapan produksi
Server MCP Instana memungkinkan interaksi yang mulus dengan platform observabilitas Instana, memungkinkan Anda mengakses data observabilitas waktu nyata langsung dalam alur kerja pengembangan Anda.
Server ini berfungsi sebagai jembatan antara klien (seperti agen AI atau alat kustom) dan REST API Instana, mengonversi kueri pengguna menjadi permintaan API Instana dan memformat respons ke dalam format terstruktur yang mudah digunakan.
Server mendukung mode transport HTTP Streamable dan Stdio untuk kompatibilitas maksimum dengan berbagai klien MCP. Untuk detail lebih lanjut, lihat spesifikasi Mode Transport MCP.
Ikhtisar Arsitektur
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
Alur Kerja
Pertimbangkan contoh sederhana: Anda menggunakan Host MCP (seperti Claude Desktop, VS Code, atau klien lain) yang terhubung ke Server MCP Instana. Saat Anda meminta informasi tentang peringatan Instana, proses berikut terjadi:
- Klien MCP mengambil daftar alat yang tersedia dari server MCP Instana
- Kueri Anda dikirim ke LLM bersama dengan deskripsi alat
- LLM menganalisis alat yang tersedia dan memilih yang sesuai untuk mengambil peringatan Instana
- Klien menjalankan alat yang dipilih melalui server MCP Instana
- Hasil (peringatan terbaru) dikembalikan ke LLM
- LLM merumuskan respons bahasa alami
- Respons ditampilkan kepada Anda
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
Prasyarat
Opsi 1: Instal dari PyPI (Direkomendasikan)
Cara termudah untuk menggunakan mcp-instana adalah dengan menginstalnya langsung dari PyPI:
pip install mcp-instana
Setelah instalasi, Anda dapat menjalankan server menggunakan perintah mcp-instana secara langsung.
Opsi 2: Instalasi Pengembangan
Untuk pengembangan atau kustomisasi lokal, Anda dapat mengkloning dan menyiapkan proyek secara lokal.
Menginstal uv
Proyek ini menggunakan uv, penginstal dan penyelesai paket Python yang cepat. Untuk menginstal uv, Anda memiliki beberapa opsi:
Menggunakan pip:
pip install uv
Menggunakan Homebrew (macOS):
brew install uv
Untuk opsi instalasi lainnya dan petunjuk terperinci, kunjungi dokumentasi uv.
Menyiapkan Lingkungan
Setelah menginstal uv, siapkan lingkungan proyek dengan menjalankan:
uv sync
Autentikasi Berbasis Header untuk Mode HTTP Streamable
Saat menggunakan mode HTTP Streamable, Anda harus meneruskan kredensial Instana melalui header HTTP. Pendekatan ini meningkatkan keamanan dan fleksibilitas dengan:
- Menghindari penyimpanan kredensial di variabel lingkungan
- Memungkinkan penggunaan kredensial yang berbeda untuk permintaan yang berbeda
- Mendukung lingkungan bersama di mana modifikasi variabel lingkungan dibatasi
- Mendukung autentikasi berbasis token API dan sesi
Mode Autentikasi yang Didukung:
1. Autentikasi Token API (Panggilan API Langsung)
Header yang Diperlukan:
instana-base-url: URL instans Instana Andainstana-api-token: Token API Instana Anda
Contoh:
--header "instana-base-url: https://your-instance.instana.io"
--header "instana-api-token: your-api-token"
2. Autentikasi Token Sesi (Panggilan yang Dimulai UI)
Header yang Diperlukan:
instana-base-url: URL instans Instana Andainstana-auth-token: Token autentikasi sesi dari backend UIinstana-csrf-token: Token CSRF dari backend UIinstana-cookie-name: (Opsional) Nama cookie untuk auth sesi (default:instanaAuthToken)
Contoh:
--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. Autentikasi Token JWT (Integrasi Platform IBM)
Header yang Diperlukan:
instana-base-url: URL instans Instana Andainstana-jwt-token: Token JWT dari Platform IBMinstana-csrf-token: Token CSRF untuk validasi permintaan
Contoh Konfigurasi:
{
"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"
]
}
}
}
Prioritas Autentikasi:
- Token JWT (jika disediakan dengan token CSRF) - Diutamakan untuk integrasi Platform IBM
- Token Sesi (jika auth_token dan csrf_token disediakan)
- Token API (jika disediakan) - Autentikasi standar
- Variabel Lingkungan (
INSTANA_API_TOKEN) - Fallback
Alur Autentikasi:
- Header HTTP harus ada di setiap permintaan
- Server memvalidasi kredensial berdasarkan urutan prioritas
- Permintaan tanpa autentikasi yang valid akan gagal
Desain ini memastikan transmisi kredensial yang aman dan mendukung berbagai alur autentikasi termasuk panggilan yang dimulai UI melalui WebSocket → Coordinator → Server MCP.
Pastikan token yang digunakan memiliki izin yang diperlukan untuk menjalankan alat MCP. Periksa di sini untuk informasi lebih lanjut.
Memulai Server MCP Lokal
Sebelum mengonfigurasi klien MCP apa pun (Claude Desktop, GitHub Copilot, atau klien MCP kustom), Anda perlu memulai server MCP lokal. Server mendukung dua mode transport: HTTP Streamable dan Stdio.
Opsi Perintah Server
Menggunakan CLI (Instalasi PyPI)
Jika Anda menginstal mcp-instana dari PyPI, gunakan perintah mcp-instana:
mcp-instana [OPTIONS]
Menggunakan Instalasi Pengembangan
Untuk pengembangan lokal, gunakan perintah uv run:
uv run src/core/server.py [OPTIONS]
Opsi yang Tersedia:
--transport <mode>: Mode transport (pilihan:streamable-http,stdio)--env KEY=VALUE: Atur variabel lingkungan (dapat diulang untuk beberapa variabel, mis.,--env INSTANA_BASE_URL=https://... --env INSTANA_API_TOKEN=...)--debug: Aktifkan mode debug dengan logging tambahan--log-level <level>: Atur level logging (pilihan:DEBUG,INFO,WARNING,ERROR,CRITICAL)--tools <categories>: Daftar kategori alat yang dipisahkan koma untuk diaktifkan (mis., infra,app,events,website). Mengaktifkan kategori juga akan mengaktifkan prompt terkaitnya. Contoh:--tools inframengaktifkan alat infra dan semua prompt terkait infra.--list-tools: Tampilkan semua kategori alat yang tersedia dan keluar--port <port>: Port server MCP (default: 8080, dapat ditimpa dengan env var PORT)--help: Tampilkan pesan bantuan dan keluar
Memulai dalam Mode HTTP Streamable
Mode HTTP Streamable menyediakan antarmuka REST API dan direkomendasikan untuk sebagian besar kasus penggunaan.
Menggunakan CLI (Instalasi PyPI)
# 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
Menggunakan Instalasi Pengembangan
# 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
Fitur Utama Mode HTTP Streamable:
- Menggunakan header HTTP untuk autentikasi (tidak perlu variabel lingkungan)
- Mendukung kredensial berbeda per permintaan
- Lebih cocok untuk lingkungan bersama
- Port default server MCP: 8080
- Endpoint MCP:
http://0.0.0.0:8080/mcp/
Memulai dalam Mode Stdio
Mode Stdio menggunakan input/output standar untuk komunikasi dan memerlukan variabel lingkungan untuk autentikasi.
Menggunakan CLI (Instalasi PyPI)
# 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
Menggunakan Instalasi Pengembangan
# 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
Fitur Utama Mode Stdio:
- Menggunakan variabel lingkungan untuk autentikasi (dapat diatur melalui flag
exportatau--env) - Komunikasi langsung melalui stdin/stdout
- Diperlukan untuk konfigurasi klien MCP tertentu
- Flag
--envmenyediakan cara mudah untuk mengatur kredensial tanpa mengubah lingkungan shell
Kategori Alat
Anda dapat mengoptimalkan kinerja server dengan hanya mengaktifkan kategori alat dan prompt yang Anda butuhkan:
Menggunakan CLI (Instalasi PyPI)
# 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
Menggunakan Instalasi Pengembangan
# 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
Kategori yang Tersedia:
infra: Alat dan prompt pemantauan infrastruktur (sumber daya, katalog, topologi, analisis, metrik)app: Alat dan prompt kinerja aplikasi (sumber daya, metrik, peringatan, katalog, topologi, analisis, pengaturan, peringatan global)events: Alat dan prompt pemantauan peristiwa (peristiwa Kubernetes, pemantauan agen)website: Alat dan prompt pemantauan situs web (metrik, katalog, analisis, konfigurasi)
Memverifikasi Status Server
Setelah dimulai, Anda dapat memverifikasi bahwa server berjalan:
Untuk mode HTTP Streamable:
# Check MCP server
curl http://0.0.0.0:8080/mcp/
# Or with custom port
curl http://0.0.0.0:9000/mcp/
Untuk mode Stdio: Server akan mulai dan menunggu input stdin dari klien MCP.
Masalah Umum Saat Memulai
Masalah Sertifikat: Jika Anda mengalami kesalahan sertifikat SSL, pastikan lingkungan Python Anda memiliki akses ke sertifikat sistem:
# macOS - Install certificates for Python
/Applications/Python\ 3.13/Install\ Certificates.command
Port Sudah Digunakan: Jika port 8080 sudah digunakan, tentukan port yang berbeda:
uv run src/core/server.py --transport streamable-http --port 9000
Dependensi Hilang: Pastikan semua dependensi terinstal:
uv sync
Penyiapan dan Penggunaan
Bob IDE
Bob adalah IDE bertenaga AI dari IBM yang secara native mendukung integrasi MCP. Bob menyediakan pengalaman pengembangan yang mulus dengan bantuan AI bawaan dan alat observabilitas.
Mode HTTP Streamable
Mode HTTP Streamable menyediakan antarmuka REST API untuk komunikasi MCP menggunakan JSON-RPC melalui HTTP.
Langkah 1: Mulai Server MCP dalam Mode HTTP Streamable
Sebelum mengonfigurasi Bob, Anda perlu memulai server MCP dalam mode HTTP Streamable. Silakan merujuk ke bagian Memulai Server MCP Lokal untuk petunjuk detail.
Langkah 2: Konfigurasi Bob
Di sudut kanan atas panel Bob, Anda akan melihat dropdown dengan server MCP:

Saat memilih ini, Anda seharusnya dapat melihat opsi untuk mengonfigurasi MCP di tingkat proyek atau tingkat global.

Cakupan Konfigurasi MCP
Bob mendukung dua tingkat konfigurasi MCP, memungkinkan Anda memilih cakupan yang paling sesuai dengan kasus penggunaan Anda:
1. Konfigurasi Global (Tingkat Pengguna)
Konfigurasi global menerapkan server MCP di semua proyek untuk pengguna saat ini. Ini ideal ketika Anda ingin server MCP yang sama tersedia di setiap proyek yang Anda kerjakan.
Lokasi File:
- macOS:
~/Library/Application Support/Bob/bob_config.json - Windows:
%APPDATA%\Bob\bob_config.json - Linux:
~/.config/Bob/bob_config.json
2. Konfigurasi Proyek (Tingkat Proyek)
Konfigurasi proyek menerapkan server MCP hanya ke proyek tertentu. Ini berguna ketika proyek yang berbeda memerlukan konfigurasi server MCP yang berbeda atau ketika Anda ingin berbagi pengaturan MCP dengan tim Anda melalui kontrol versi.
Lokasi File:
.bob/bob_config.jsondi direktori root proyek Anda
Memilih Antara Konfigurasi Global dan Proyek:
- Gunakan konfigurasi global untuk server MCP yang ingin Anda sediakan di semua proyek Anda
- Gunakan konfigurasi proyek untuk server MCP spesifik proyek atau untuk berbagi konfigurasi dengan tim Anda
- Kedua konfigurasi dapat hidup berdampingan - pengaturan tingkat proyek lebih diutamakan daripada pengaturan global untuk nama server yang sama
Untuk informasi lebih lanjut tentang Bob dan konfigurasi MCP, kunjungi: https://bob.ibm.com/docs/ide/configuration/mcp/mcp-in-bob
Konfigurasi Lokal:
Konfigurasikan Bob untuk terhubung ke server MCP Instana lokal Anda:
{
"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"
]
}
}
}
Konfigurasi Jarak Jauh:
Konfigurasikan Bob untuk terhubung ke server MCP Instana jarak jauh (misalnya, di-deploy di IBM Code Engine):
{
"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"
]
}
}
}
Catatan: Untuk menggunakan npx, kami sarankan menginstal NVM (Node Version Manager) terlebih dahulu, lalu menggunakannya untuk menginstal Node.js. Petunjuk instalasi tersedia di: https://nodejs.org/en/download
Langkah 3: Uji Koneksi
Setelah Anda menyiapkan konfigurasi MCP, server MCP yang baru dikonfigurasi akan muncul sebagai diaktifkan. Titik hijau menunjukkan bahwa server berjalan dengan sukses.

Anda sekarang dapat menjalankan kueri di IDE Bob:
get me all applications from Instana in the last 24 hours

Mode Stdio
Konfigurasi menggunakan CLI (Instalasi PyPI - Direkomendasikan):
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Catatan: Jika Anda mengalami kesalahan "command not found", gunakan path lengkap ke mcp-instana. Temukan dengan which mcp-instana dan gunakan path tersebut sebagai gantinya.
Konfigurasi menggunakan Instalasi Pengembangan:
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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 mendukung mode HTTP Streamable dan Stdio untuk integrasi MCP.
Konfigurasikan Claude Desktop dengan mengedit file konfigurasi:
Lokasi File:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Mode HTTP Streamable
Mode HTTP Streamable menyediakan antarmuka REST API untuk komunikasi MCP menggunakan JSON-RPC melalui HTTP.
Langkah 1: Mulai Server MCP dalam Mode HTTP Streamable
Sebelum mengonfigurasi Claude Desktop, Anda perlu memulai server MCP dalam mode HTTP Streamable. Silakan merujuk ke bagian Memulai Server MCP Lokal untuk petunjuk detail.
Langkah 2: Konfigurasi Claude Desktop
Konfigurasikan Claude Desktop untuk meneruskan kredensial Instana melalui header:
{
"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"
]
}
}
}
Catatan: Untuk menggunakan npx, kami sarankan menginstal NVM (Node Version Manager) terlebih dahulu, lalu menggunakannya untuk menginstal Node.js. Petunjuk instalasi tersedia di: https://nodejs.org/en/download
Langkah 3: Uji Koneksi
Mulai ulang Claude Desktop. Anda sekarang akan melihat Server MCP Instana di antarmuka Claude Desktop seperti yang ditunjukkan di bawah ini:

Anda sekarang dapat menjalankan kueri di Claude Desktop:
get me all endpoints from Instana

Mode Stdio
Konfigurasi menggunakan CLI (Instalasi PyPI - Direkomendasikan):
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Catatan: Jika Anda mengalami kesalahan "command not found", gunakan path lengkap ke mcp-instana. Temukan dengan which mcp-instana dan gunakan path tersebut sebagai gantinya.
Konfigurasi menggunakan Instalasi Pengembangan:
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Pengaturan Kiro
Kiro adalah IDE agentik, bukan ekstensi yang dapat diunduh ke dalam VS Code atau IDE lainnya.
Langkah 1: Unduh dan instal Kiro untuk sistem operasi Anda dari https://kiro.dev/.
Langkah 2: Setelah instalasi, luncurkan Kiro dan buka proyek apa pun di IDE.

Langkah 3: Klik ikon Kiro (Ghost) di bilah sisi kiri untuk mengakses fitur Kiro.

Langkah 4: Pilih ikon Edit Config di sudut kanan atas bagian MCP Servers.

Langkah 5: Buka file konfigurasi server MCP (mcp.json) dan konfigurasikan berdasarkan mode transport pilihan Anda:
Mode HTTP Streamable (Direkomendasikan untuk Kiro)
{
"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"
]
}
}
}
Catatan: Pastikan untuk memulai server MCP dalam mode streamable-http sebelum menggunakan konfigurasi ini:
mcp-instana --transport streamable-http
Mode Stdio
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Langkah 6: Setelah menyimpan file, Klik tombol Enable MCP dan Anda akan melihat server MCP Anda dan alat yang tersedia muncul di bagian kiri bawah Kiro.

Langkah 7: Buka panel AI Chat, masukkan prompt yang terkait dengan server MCP Anda, dan lihat responsnya langsung di dalam Kiro.

GitHub Copilot
GitHub Copilot mendukung integrasi MCP melalui konfigurasi VS Code. Untuk integrasi GitHub Copilot dengan VS Code, lihat panduan pengaturan ini.
Mode HTTP Streamable
Langkah 1: Mulai Server MCP dalam Mode HTTP Streamable
Sebelum mengonfigurasi VS Code, Anda perlu memulai server MCP dalam mode HTTP Streamable. Silakan merujuk ke bagian Memulai Server MCP Lokal untuk petunjuk detail.
Langkah 2: Konfigurasi VS Code
Lihat Gunakan server MCP di VS Code untuk konfigurasi detail.
Anda dapat langsung membuat atau memperbarui .vscode/mcp.json dengan konfigurasi berikut:
{
"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"
}
}
}
}
Catatan: Ganti nilai berikut dengan konfigurasi Anda yang sebenarnya:
instana-base-url: URL instans Instana Andainstana-api-token: Token API Instana Andacommand: Perbarui path npx agar sesuai dengan instalasi Node.js sistem Anda (misalnya,/path/to/your/node/bin/npx)- Variabel lingkungan: Sesuaikan PATH dan variabel lingkungan lainnya sesuai kebutuhan sistem Anda
Mode Stdio
Langkah 1: Buat Konfigurasi MCP VS Code
Menggunakan CLI (Instalasi PyPI - Direkomendasikan):
Buat .vscode/mcp.json di root proyek Anda:
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Menggunakan Instalasi Pengembangan:
Buat .vscode/mcp.json di root proyek Anda:
Opsi 1: Menggunakan variabel lingkungan di config:
{
"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"
}
}
}
}
Opsi 2: Menggunakan flag --env (metode alternatif):
{
"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"
]
}
}
}
Catatan: Ganti nilai berikut dengan konfigurasi Anda yang sebenarnya:
- Untuk instalasi CLI: Pastikan
mcp-instanaada di PATH Anda - Untuk instalasi pengembangan:
command: Perbarui path uv agar sesuai dengan instalasi uv sistem Anda (misalnya,/path/to/your/uv/bin/uvatau/usr/local/bin/uv)--directory: Perbarui dengan path absolut ke direktori proyek mcp-instana Anda
INSTANA_BASE_URL: URL instans Instana AndaINSTANA_API_TOKEN: Token API Instana Anda
Langkah 2: Kelola Server di VS Code
- Buka
.vscode/mcp.json- Anda akan melihat kontrol manajemen server di bagian atas - Klik
Startdi sampingInstana MCP Serveruntuk memulai server - Status berjalan beserta jumlah alat menunjukkan bahwa server sedang berjalan
Langkah 3: Uji Integrasi
Beralih ke Mode Agen di GitHub Copilot dan muat ulang alat. Berikut adalah contoh respons GitHub Copilot:

Mistral AI
Mistral AI mendukung integrasi MCP secara eksklusif melalui mode HTTP Streamable.
Langkah 1: Luncurkan Server MCP dalam Mode HTTP Streamable
Mulai server MCP dalam mode HTTP Streamable dengan memberikan kredensial Instana Anda. Jalankan perintah berikut:
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
Langkah 2: Siapkan Port Forwarding dengan Ngrok
Konfigurasikan port forwarding untuk mengekspos server lokal Anda. Ikuti dokumentasi pengaturan Ngrok untuk petunjuk detail.
Langkah 3: Konfigurasikan Mistral AI
-
Arahkan ke tab Intelligence di bilah sisi kiri dan pilih Connectors

-
Klik Add Connector

-
Buat konektor kustom dengan memasukkan nama konektor dan URL server MCP yang diteruskan Ngrok

-
Mulai sesi obrolan baru dan verifikasi bahwa alat MCP diaktifkan. Anda dapat melihat responsnya di sini

Fitur yang Didukung
- Manajemen Aplikasi & Infrastruktur Terpadu (
manage_instana_resources)- Metrik Aplikasi
- Kueri metrik aplikasi dengan pemfilteran fleksibel
- Daftar layanan dan titik akhir
- Kelompokkan berdasarkan tag dan agregasi metrik
- Konfigurasi Peringatan Aplikasi
- Temukan konfigurasi peringatan aktif
- Dapatkan versi konfigurasi peringatan
- Buat, perbarui, dan hapus konfigurasi peringatan
- Aktifkan, nonaktifkan, dan pulihkan konfigurasi peringatan
- Perbarui baseline historis
- Konfigurasi Peringatan Aplikasi Global
- Kelola konfigurasi peringatan global
- Kontrol versi untuk peringatan global
- Pengaturan Aplikasi
- Kelola perspektif aplikasi
- Konfigurasikan titik akhir dan layanan
- Kelola layanan manual
- Katalog Aplikasi
- Dapatkan katalog tag aplikasi
- Dapatkan katalog metrik aplikasi
- Metrik Aplikasi
- Analisis Infrastruktur (
analyze_infrastructure)- Elisitasi dua langkah untuk kueri entitas/metrik
- Dukungan dinamis untuk semua tipe entitas dari katalog API Instana (JVM, Kubernetes, Docker, host, basis data, antrean pesan, dan lainnya)
- Disinkronkan secara otomatis dengan plugin yang tersedia di instalasi Instana Anda
- Agregasi metrik fleksibel (maks, rata-rata, jumlah, dll.)
- Pemfilteran lanjutan berdasarkan tag dan properti
- Kemampuan pengelompokan dan pengurutan
- Kueri rentang waktu
- Manajemen Peristiwa Terpadu (
manage_events)- Pemantauan Peristiwa
- Dapatkan Peristiwa berdasarkan ID (operation="get_event")
- Dapatkan Peristiwa berdasarkan ID (operation="get_events_by_ids")
- Dapatkan Peristiwa Pemantauan Agen (operation="get_agent_monitoring_events")
- Dapatkan Peristiwa Info Kubernetes (operation="get_kubernetes_info_events")
- Dapatkan Peristiwa (operation="get_events")
- Perutean cerdas ke alat peristiwa khusus
- Validasi parameter terpadu (rentang waktu, max_events)
- Dukungan untuk rentang waktu bahasa alami ("24 jam terakhir", "2 hari terakhir")
- Pemfilteran dan pengoptimalan peristiwa
- Pemantauan Peristiwa
- Manajemen Situs Web Terpadu (
manage_website_resources)- Analisis Situs Web (resource_type="analyze")
- Dapatkan Grup Beacon Situs Web - data beacon yang dikelompokkan/diagregasi (operation="get_beacon_groups")
- Dapatkan Beacon Situs Web - data beacon individual dengan paginasi (operation="get_beacons")
- Validasi tag otomatis dan alur kerja elisitasi berbasis katalog
- Ringkasan respons (pengurangan payload 70-80%)
- Dukungan untuk berbagai tipe beacon: PAGELOAD, PAGECHANGE, RESOURCELOAD, CUSTOM, HTTPREQUEST, ERROR
- Katalog Situs Web (resource_type="catalog")
- Dapatkan Katalog Metrik Situs Web (operation="get_metrics")
- Dapatkan Katalog Tag Situs Web berdasarkan tipe beacon dan kasus penggunaan (operation="get_tag_catalog")
- Konfigurasi Situs Web (resource_type="configuration")
- Dapatkan Semua Situs Web (operation="get_all")
- Dapatkan Situs Web berdasarkan ID atau nama dengan resolusi nama otomatis (operation="get")
- Konfigurasi Lanjutan - HANYA BACA (resource_type="advanced_config")
- Dapatkan Konfigurasi Geo-Lokasi (operation="get_geo_config")
- Dapatkan Konfigurasi Penyamaran IP (operation="get_ip_masking")
- Dapatkan Aturan Pemetaan Geo (operation="get_geo_rules")
- Analisis Situs Web (resource_type="analyze")
- Manajemen Otomatisasi Terpadu (
manage_automation)- Katalog Tindakan (resource_type="catalog")
- Daftar semua tindakan otomatisasi yang tersedia (operation="get_actions")
- Dapatkan informasi detail tentang tindakan tertentu (operation="get_action_details")
- Cari tindakan yang cocok berdasarkan nama/deskripsi (operation="get_action_matches")
- Dapatkan kecocokan tindakan berdasarkan ID aplikasi atau snapshot dan jendela waktu (operation="get_action_matches_by_id_and_time_window")
- Dapatkan tipe tindakan yang tersedia (operation="get_action_types")
- Dapatkan tag tindakan yang tersedia (operation="get_action_tags")
- Riwayat Tindakan (resource_type="history")
- Daftar instance eksekusi tindakan dengan pemfilteran (operation="list")
- Dapatkan detail eksekusi tindakan tertentu (operation="get_details")
- Katalog Tindakan (resource_type="catalog")
- Dasbor Kustom (
manage_custom_dashboards)- Dapatkan semua dasbor kustom
- Dapatkan dasbor tertentu berdasarkan ID
- Buat dasbor kustom baru
- Perbarui dasbor kustom yang ada
- Hapus dasbor kustom
- Dapatkan pengguna yang dapat berbagi untuk dasbor
- Dapatkan token API yang dapat berbagi untuk dasbor
Alat yang Tersedia
| Alat | Kategori | Deskripsi |
|---|---|---|
manage_applications | Aplikasi & Infrastruktur | Alat terpadu untuk mengelola metrik aplikasi, konfigurasi peringatan, pengaturan, dan katalog |
manage_websites | Pemantauan Situs Web | Perute cerdas terpadu untuk analisis situs web, katalog, konfigurasi, dan operasi konfigurasi lanjutan |
manage_custom_dashboards | Dasbor Kustom | Alat terpadu untuk mengelola operasi CRUD dasbor kustom |
analyze_infrastructure | Analisis Infrastruktur | Analisis infrastruktur dua langkah dengan elisitasi entitas/metrik |
manage_automation | Otomatisasi | Perute cerdas terpadu untuk otomatisasi: jelajahi katalog tindakan dan lihat riwayat eksekusi |
manage_events | Peristiwa | Perute cerdas terpadu untuk pemantauan peristiwa: dapatkan peristiwa berdasarkan ID, dapatkan peristiwa berdasarkan ID, peristiwa Kubernetes, peristiwa pemantauan agen, dan semua peristiwa |
manage_slo | Manajemen SLO | Perute cerdas terpadu untuk konfigurasi SLO, laporan, peringatan, dan jendela koreksi dengan penanganan zona waktu cerdas |
manage_releases | Manajemen Rilis | Perute cerdas terpadu untuk pelacakan rilis: daftar rilis dengan paginasi dan pemfilteran nama, dapatkan detail rilis, buat/perbarui/hapus rilis dengan dukungan zona waktu |
manage_maintenance_windows | Jendela Pemeliharaan | Perute cerdas terpadu untuk manajemen siklus hidup jendela pemeliharaan: buat, modifikasi, tutup, dan daftar jendela pemeliharaan dengan dukungan template dan integrasi ServiceNow |
manage_mobile_apps | Pemantauan Aplikasi Seluler | Perute cerdas terpadu untuk pemantauan aplikasi seluler: analisis beacon, metrik kinerja, konfigurasi, dan manajemen peringatan |
👉 Untuk dokumentasi alat yang detail, kemampuan, dan referensi teknis, lihat Alat & Contoh
Pemfilteran Alat
Server MCP mendukung pemuatan alat selektif untuk mengoptimalkan kinerja dan mengurangi penggunaan sumber daya. Anda dapat mengaktifkan hanya kategori alat yang Anda butuhkan untuk kasus penggunaan spesifik Anda.
Kategori Alat yang Tersedia
-
router: Manajemen aplikasi dan infrastruktur terpadumanage_instana_resources: Alat tunggal untuk metrik aplikasi, konfigurasi peringatan, pengaturan, dan katalog- Mendukung perspektif aplikasi, titik akhir, layanan, dan layanan manual
- Mengelola konfigurasi peringatan spesifik aplikasi dan global
- Menyediakan akses ke katalog tag aplikasi dan katalog metrik
-
dashboard: Manajemen dasbor kustommanage_custom_dashboards: Operasi CRUD untuk dasbor kustom- Mendukung pembuatan, pengambilan, pembaruan, dan penghapusan dasbor
- Mengelola pengguna dan token API yang dapat berbagi untuk dasbor
-
infra: Alat analisis infrastrukturanalyze_infrastructure: Analisis infrastruktur dua langkah dengan elisitasi entitas/metrik- Mendukung secara dinamis semua tipe entitas yang tersedia di instalasi Instana Anda (dimuat otomatis dari katalog API)
- Termasuk JVM, Kubernetes, Docker, host, basis data, antrean pesan, dan tipe entitas kustom atau yang baru ditambahkan
- Agregasi metrik, pemfilteran, pengelompokan, dan kueri rentang waktu yang fleksibel
-
automation: Alat tindakan otomatisasimanage_automation: Perute cerdas terpadu untuk katalog otomatisasi dan riwayat eksekusi- Katalog Tindakan: jelajahi tindakan, dapatkan detail, cari berdasarkan nama/deskripsi, filter berdasarkan ID aplikasi atau snapshot
- Riwayat Tindakan: daftar instance eksekusi dengan pemfilteran, dapatkan detail eksekusi
-
events: Alat pemantauan peristiwa- Peristiwa: Peristiwa Kubernetes, pemantauan agen, dan pelacakan peristiwa sistem
-
website: Alat pemantauan situs web- Metrik Situs Web: Pengukuran kinerja untuk situs web
- Katalog Situs Web: Metadata dan definisi situs web
- Analisis Situs Web: Analisis kinerja situs web
- Konfigurasi Situs Web: Manajemen konfigurasi situs web
-
slo: Manajemen Service Level Objective (SLO)manage_slo: Perute cerdas terpadu untuk operasi SLO yang komprehensif- Manajemen Konfigurasi: Buat, baca, perbarui, hapus konfigurasi SLO dengan dukungan untuk indikator berbasis waktu dan berbasis peristiwa
- Pembuatan Laporan: Hasilkan laporan SLO detail dengan nilai SLI, anggaran kesalahan, laju pembakaran, dan bagan deret waktu
- Konfigurasi Peringatan: Kelola konfigurasi peringatan SLO untuk pemantauan anggaran kesalahan dan pelacakan laju pembakaran
- Jendela Koreksi: Buat dan kelola jendela pemeliharaan untuk mengecualikan waktu henti yang direncanakan dari perhitungan SLO
- Penanganan Zona Waktu Cerdas: Elisitasi zona waktu otomatis untuk input datetime guna memastikan konteks waktu yang akurat
- Elisitasi Dua Langkah: Pengumpulan parameter interaktif untuk operasi kompleks yang memerlukan banyak input
-
releases: Pelacakan rilis dan manajemen deploymentmanage_releases: Perute cerdas terpadu untuk operasi rilis- Daftar Rilis: Dapatkan semua rilis dengan paginasi efisien (page_number, page_size) dan pemfilteran berdasarkan nama
- Detail Rilis: Ambil informasi rilis spesifik berdasarkan ID termasuk aplikasi, layanan, dan cakupan
- Buat/Perbarui/Hapus: Operasi CRUD penuh untuk manajemen rilis
- Penanganan Zona Waktu Cerdas: Elisitasi zona waktu otomatis untuk waktu mulai rilis
- Paginasi Efisien: Hindari pengambilan data berlebihan dengan navigasi berbasis halaman yang tepat
- Pemfilteran Nama: Pencocokan substring tidak peka huruf besar/kecil untuk menemukan rilis berdasarkan nama
-
maintenance_window: Manajemen siklus hidup jendela pemeliharaanmanage_maintenance_windows: Perute cerdas terpadu untuk operasi jendela pemeliharaan- Operasi Jendela: Buat, modifikasi, tutup, dan daftar jendela pemeliharaan (aktif, terjadwal, semua, kedaluwarsa)
- Operasi Massal: Buat jendela pemeliharaan untuk beberapa aplikasi secara bersamaan
- Dukungan Template: Template yang telah ditentukan untuk skenario umum (deployment, database_migration, infrastructure_upgrade, emergency, routine)
- Jendela Berulang: Dukungan untuk jendela pemeliharaan berulang menggunakan format RFC 5545 RRULE
- Integrasi ServiceNow: Integrasi opsional dengan permintaan perubahan ServiceNow
- Validasi: Validasi parameter sebelum pembuatan jendela
- Durasi Fleksibel: Tentukan durasi dalam menit, jam, atau hari
-
mobile_app: Pemantauan aplikasi selulermanage_mobile_apps: Router pintar terpadu untuk operasi pemantauan aplikasi seluler- Analisis Beacon: Kueri data beacon aplikasi seluler dengan pengelompokan dan penyaringan
- Metrik Kinerja: Lacak durasi sesi, tingkat kerusakan, dan kinerja permintaan HTTP
- Analisis Geografis: Analisis distribusi pengguna berdasarkan negara, kota, dan wilayah
- Analisis Perangkat: Pantau kinerja di berbagai perangkat, platform, dan versi OS
- Manajemen Konfigurasi: Kelola konfigurasi aplikasi seluler, pengaturan geo-lokasi, dan penyamaran IP
- Manajemen Peringatan: Konfigurasikan dan kelola konfigurasi peringatan aplikasi seluler
Contoh Penggunaan
Menggunakan CLI (Instalasi PyPI)
# 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
Menggunakan Instalasi Pengembangan
# 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
Manfaat Penyaringan Alat
- Kinerja: Mengurangi waktu startup dan penggunaan memori
- Keamanan: Batasi paparan hanya pada API yang diperlukan
- Kejelasan: Fokus pada kasus penggunaan tertentu (misalnya, hanya pemantauan infrastruktur)
- Efisiensi Sumber Daya: Penggunaan CPU dan jaringan yang lebih rendah
👉 Untuk contoh penggunaan dan prompt, lihat Contoh Prompt
Penerapan Docker
Server MCP Instana dapat diterapkan menggunakan Docker untuk lingkungan produksi. Pengaturan Docker dioptimalkan untuk keamanan, kinerja, dan penggunaan sumber daya minimal.
Arsitektur Docker
Proyek ini menggunakan strategi manajemen dependensi dua file:
pyproject.toml
- Tujuan: Konfigurasi terpadu untuk pengembangan dan produksi
- Dependensi: Semua dependensi penting dengan dependensi pengembangan opsional
- Penggunaan: Pengembangan lokal, pengujian, CI/CD, dan build produksi Docker
- Manfaat: Sumber kebenaran tunggal untuk semua dependensi, pemeliharaan yang disederhanakan
Membangun Image Docker
Prasyarat
- Docker terinstal dan berjalan
- Akses ke kode sumber proyek
- Docker BuildKit untuk build multi-arsitektur (diaktifkan secara default di versi Docker terbaru)
Perintah Build
# Build the optimized production image
docker build -t mcp-instana:latest .
# Build with a specific tag
docker build -t mcp-instana:<image_tag> .
#### **Run Command**
# 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
📖 Untuk dokumentasi Docker yang komprehensif termasuk build multi-arsitektur, pengaturan Docker Compose, praktik terbaik keamanan, dan contoh penerapan produksi, lihat DOCKER.md.
Pemecahan Masalah
Masalah Docker
Kontainer Tidak Mau Mulai
# 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
Masalah Koneksi
# Test container connectivity
docker exec -it <container_id> curl http://127.0.0.1:8080/health
# Check port mapping
docker port <container_id>
Masalah Kinerja
# Check container resource usage
docker stats <container_id>
# Monitor container health
docker inspect <container_id> | grep -A 10 Health
Masalah Umum
-
GitHub Copilot
- Jika Anda mengalami masalah dengan GitHub Copilot, coba mulai/hentikan/mulai ulang server di file
mcp.jsondan hanya jalankan satu server pada satu waktu.
- Jika Anda mengalami masalah dengan GitHub Copilot, coba mulai/hentikan/mulai ulang server di file
-
Masalah Sertifikat
- Jika Anda mengalami masalah sertifikat, seperti
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate:- Periksa apakah Anda dapat mencapai endpoint API Instana menggunakan
curlatauwgetdengan verifikasi SSL.- Jika berhasil, lingkungan Python Anda mungkin tidak dapat memverifikasi sertifikat dan mungkin tidak memiliki akses ke sertifikat yang sama seperti shell atau sistem Anda. Pastikan lingkungan Python Anda menggunakan sertifikat sistem (macOS). Anda dapat melakukannya dengan menginstal sertifikat ke Python:
//Applications/Python\ 3.13/Install\ Certificates.command
- Jika berhasil, lingkungan Python Anda mungkin tidak dapat memverifikasi sertifikat dan mungkin tidak memiliki akses ke sertifikat yang sama seperti shell atau sistem Anda. Pastikan lingkungan Python Anda menggunakan sertifikat sistem (macOS). Anda dapat melakukannya dengan menginstal sertifikat ke Python:
- Jika Anda tidak dapat mencapai endpoint dengan verifikasi SSL, coba tanpa itu. Jika berhasil, periksa sertifikat CA sistem Anda dan pastikan mereka mutakhir.
- Periksa apakah Anda dapat mencapai endpoint API Instana menggunakan
- Jika Anda mengalami masalah sertifikat, seperti