mcp-instana
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-instanaShow me recent alerts for all services"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Server for IBM Instana
The Instana MCP server enables seamless interaction with the Instana observability platform, allowing you to access real-time observability data directly within your development workflow.
It serves as a bridge between clients (such as AI agents or custom tools) and the Instana REST APIs, converting user queries into Instana API requests and formatting the responses into structured, easily consumable formats.
The server supports both Streamable HTTP and Stdio transport modes for maximum compatibility with different MCP clients. For more details, refer to the MCP Transport Modes specification.
Architecture Overview
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
endRelated MCP server: Spyglass AI MCP Server
Workflow
Consider a simple example: You're using an MCP Host (such as Claude Desktop, VS Code, or another client) connected to the Instana MCP Server. When you request information about Instana alerts, the following process occurs:
The MCP client retrieves the list of available tools from the Instana MCP server
Your query is sent to the LLM along with tool descriptions
The LLM analyzes the available tools and selects the appropriate one(s) for retrieving Instana alerts
The client executes the chosen tool(s) through the Instana MCP server
Results (latest alerts) are returned to the LLM
The LLM formulates a natural language response
The response is displayed to you
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 responsePrerequisites
Option 1: Install from PyPI (Recommended)
The easiest way to use mcp-instana is to install it directly from PyPI:
pip install mcp-instanaAfter installation, you can run the server using the mcp-instana command directly.
Option 2: Development Installation
For development or local customization, you can clone and set up the project locally.
Installing uv
This project uses uv, a fast Python package installer and resolver. To install uv, you have several options:
Using pip:
pip install uvUsing Homebrew (macOS):
brew install uvFor more installation options and detailed instructions, visit the uv documentation.
Setting Up the Environment
After installing uv, set up the project environment by running:
uv syncHeader-Based Authentication for Streamable HTTP Mode
When using Streamable HTTP mode, you must pass Instana credentials via HTTP headers. This approach enhances security and flexibility by:
Avoiding credential storage in environment variables
Enabling the use of different credentials for different requests
Supporting shared environments where environment variable modification is restricted
Required Headers:
instana-base-url: Your Instana instance URLinstana-api-token: Your Instana API token
Authentication Flow:
HTTP headers (
instana-base-url,instana-api-token) must be present in each requestRequests without these headers will fail
This design ensures secure credential transmission where credentials are only sent via headers for each request, making it suitable for scenarios requiring different credentials or avoiding credential storage in environment variables.
Starting the Local MCP Server
Before configuring any MCP client (Claude Desktop, GitHub Copilot, or custom MCP clients), you need to start the local MCP server. The server supports two transport modes: Streamable HTTP and Stdio.
Server Command Options
Using the CLI (PyPI Installation)
If you installed mcp-instana from PyPI, use the mcp-instana command:
mcp-instana [OPTIONS]Using Development Installation
For local development, use the uv run command:
uv run src/core/server.py [OPTIONS]Available Options:
--transport <mode>: Transport mode (choices:streamable-http,stdio)--debug: Enable debug mode with additional logging--log-level <level>: Set the logging level (choices:DEBUG,INFO,WARNING,ERROR,CRITICAL)--tools <categories>: Comma-separated list of tool categories to enable (e.g., infra,app,events,automation,website). Enabling a category will also enable its related prompts. For example:--tools infraenables the infra tools and all infra-related prompts.--list-tools: List all available tool categories and exit--port <port>: Port to listen on (default: 8080)--help: Show help message and exit
Starting in Streamable HTTP Mode
Streamable HTTP mode provides a REST API interface and is recommended for most use cases.
Using CLI (PyPI Installation)
# 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,eventsUsing Development Installation
# 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
# Combine options (specific log level, custom tools and prompts)
uv run src/core/server.py --transport streamable-http --log-level DEBUG --tools app,eventsKey Features of Streamable HTTP Mode:
Uses HTTP headers for authentication (no environment variables needed)
Supports different credentials per request
Better suited for shared environments
Default port: 8080
Endpoint:
http://0.0.0.0:8080/mcp/
Starting in Stdio Mode
Stdio mode uses standard input/output for communication and requires environment variables for authentication.
Using CLI (PyPI Installation)
# 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 stdioUsing Development Installation
# 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 stdioKey Features of Stdio Mode:
Uses environment variables for authentication
Direct communication via stdin/stdout
Required for certain MCP client configurations
Tool Categories
You can optimize server performance by enabling only the tools and prompts categories you need:
Using CLI (PyPI Installation)
# 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 eventsUsing Development Installation
# 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 eventsAvailable Categories:
infra: Infrastructure monitoring tools and prompts (resources, catalog, topology, analyze, metrics)app: Application performance tools and prompts (resources, metrics, alerts, catalog, topology, analyze, settings, global alerts)events: Event monitoring tools and prompts (Kubernetes events, agent monitoring)automation: Automation-related tools and prompts (action catalog, action history)website: Website monitoring tools and prompts (metrics, catalog, analyze, configuration)
Verifying Server Status
Once started, you can verify the server is running:
For Streamable HTTP mode:
# Check server health
curl http://0.0.0.0:8080/mcp/
# Or with custom port
curl http://0.0.0.0:9000/mcp/For Stdio mode: The server will start and wait for stdin input from MCP clients.
Common Startup Issues
Certificate Issues: If you encounter SSL certificate errors, ensure your Python environment has access to system certificates:
# macOS - Install certificates for Python
/Applications/Python\ 3.13/Install\ Certificates.commandPort Already in Use: If port 8080 is already in use, specify a different port:
uv run src/core/server.py --transport streamable-http --port 9000Missing Dependencies: Ensure all dependencies are installed:
uv syncSetup and Usage
Claude Desktop
Claude Desktop supports both Streamable HTTP and Stdio modes for MCP integration.
Configure Claude Desktop by editing the configuration file:
File Locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Streamable HTTP Mode
The Streamable HTTP mode provides a REST API interface for MCP communication using JSON-RPC over HTTP.
Step 1: Start the MCP Server in Streamable HTTP Mode
Before configuring Claude Desktop, you need to start the MCP server in Streamable HTTP mode. Please refer to the Starting the Local MCP Server section for detailed instructions.
Step 2: Configure Claude Desktop
Configure Claude Desktop to pass Instana credentials via headers:
{
"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"
]
}
}
}Note: To use npx, we recommend first installing NVM (Node Version Manager), then using it to install Node.js. Installation instructions are available at: https://nodejs.org/en/download
Step 3: Test the Connection
Restart Claude Desktop. You should now see Instana MCP Server in the Claude Desktop interface as shown below:

You can now run queries in Claude Desktop:
get me all endpoints from Instana
Stdio Mode
Configuration using CLI (PyPI Installation - Recommended):
{
"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"
}
}
}
}Note: If you encounter "command not found" errors, use the full path to mcp-instana. Find it with which mcp-instana and use that path instead.
Configuration using Development Installation:
{
"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"
}
}
}
}GitHub Copilot
GitHub Copilot supports MCP integration through VS Code configuration. For GitHub Copilot integration with VS Code, refer to this setup guide.
Streamable HTTP Mode
Step 1: Start the MCP Server in Streamable HTTP Mode
Before configuring VS Code, you need to start the MCP server in Streamable HTTP mode. Please refer to the Starting the Local MCP Server section for detailed instructions.
Step 2: Configure VS Code
Refer to Use MCP servers in VS Code for detailed configuration.
You can directly create or update .vscode/mcp.json with the following configuration:
{
"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"
}
}
}
}Note: Replace the following values with your actual configuration:
instana-base-url: Your Instana instance URLinstana-api-token: Your Instana API tokencommand: Update the npx path to match your system's Node.js installation (e.g.,/path/to/your/node/bin/npx)Environment variables: Adjust PATH and other environment variables as needed for your system
Stdio Mode
Step 1: Create VS Code MCP Configuration
Using CLI (PyPI Installation - Recommended):
Create .vscode/mcp.json in your project root:
{
"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"
}
}
}
}Using Development Installation:
Create .vscode/mcp.json in your project root:
{
"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"
}
}
}
}Note: Replace the following values with your actual configuration:
For CLI installation: Ensure
mcp-instanais in your PATHFor development installation:
command: Update the uv path to match your system's uv installation (e.g.,/path/to/your/uv/bin/uvor/usr/local/bin/uv)--directory: Update with the absolute path to your mcp-instana project directory
INSTANA_BASE_URL: Your Instana instance URLINSTANA_API_TOKEN: Your Instana API token
Step 2: Manage Server in VS Code
Open
.vscode/mcp.json- you'll see server management controls at the topClick
Startnext toInstana MCP Serverto start the serverRunning status along with the number of tools indicates the server is running
Step 3: Test Integration
Switch to Agent Mode in GitHub Copilot and reload tools. Here is an example of a GitHub Copilot response:

Supported Features
Application
Application Metrics
Application Metrics
Endpoint Metrics
Service Metrics
Data Metrics
Application Resources
Get Applications Endpoints
Get Applications
Get Services
Get Application Services
Application Alert Configuration
Get All Smart Alert Configurations
Get Smart Alert Configuration
Get Smart Alert Config Versions
Create Smart Alert Configuration
Update Smart Alert Configuration
Delete Smart Alert Configuration
Recalculate Smart Alert Config Baseline
Enable Application Alert Config
Disable Smart Alert Config
Restore Smart Alert Config
Infrastructure
Infrastructure Analyze
Get Available Metrics
Get infrastructure entities
Get grouped entities with aggregated metrics
Get available plugins/entity types
Infrastructure Catalog
Get Payload Keys By plugin ID
Get Infrastructure Catalog Metrics
Get Infrastructure Catalog Plugins
Get Infrastructure Catalog Plugins with Custom Metrics
Get Infrastructure Catalog Search Fields
Get Infrastructure Catalog Search Fields with Custom Metrics
Get Tag Catalog
Get Tag Catalog ALL
Infrastructure Resources
Get Monitoring State
Get plugin Payload
Search Snapshots
Get Snapshot Details for single Snapshot ID
Get Details for Multiple Snapshot IDs
Software Versions
Infrastructure Topology
Get Hosts for Snapshot
Get Topology
Events
Events
Get Event
Get Events by IDs
Get Agent Monitoring Events
Get Kubernetes Info Events
Get Issues
Get Incidents
Get Changes
Available Tools
Tool | Category | Description |
| Application Metrics | Get ApplicationMetrics |
| Application Metrics | Get Endpoint metrics |
| Application Metrics | Get Service metrics |
| Application Metrics | Get Application Data Metrics |
| Application Resources | Get applications |
| Application Resources | Get applications/services |
| Application Resources | Get endpoints |
| Application Resources | Get services |
| Infrastructure Resources | Monitored host count |
| Infrastructure Resources | Get a payload for a snapshot |
| Infrastructure Resources | Search snapshots |
| Infrastructure Resources | Get snapshot details for multiple snapshots |
| Infrastructure Resources | Get snapshot details |
| Infrastructure Resources | Get installed software |
| Infrastructure Catalog | Get Payload Keys By plugin ID |
| Infrastructure Catalog | Get Infrastructure Catalog Metrics |
| Infrastructure Catalog | Get Infrastructure Catalog Plugins |
| Infrastructure Catalog | Get Infrastructure Catalog Plugins with Custom Metrics |
| Infrastructure Catalog | Get Infrastructure Catalog Search Fields |
| Infrastructure Catalog | Get Tag Catalog |
| Infrastructure Catalog | Get Tag Catalog ALL |
| Infrastructure Topology | Get Related Hosts |
| Infrastructure Topology | Get Topology |
| Infrastructure Analyze | Get Available Metrics |
| Infrastructure Analyze | Get infrastructure entities |
| Infrastructure Analyze | Get grouped entities with aggregated metrics |
| Infrastructure Analyze | Get available entity types |
| Application Alert Configuration | Get All Smart Alert Configurations |
| Application Alert Configuration | Get Smart Alert Configuration |
| Application Alert Configuration | Get Smart Alert Config Versions |
| Application Alert Configuration | Create Smart Alert Configuration |
| Application Alert Configuration | Update Smart Alert Configuration |
| Application Alert Configuration | Delete Smart Alert Configuration |
| Application Alert Configuration | Recalculate Smart Alert Config Baseline |
| Application Alert Configuration | Enable Application Alert Config |
| Application Alert Configuration | Disable Smart Alert Config |
| Application Alert Configuration | Restore Smart Alert Config |
| Events | Get Specific Event by ID |
| Events | Get Kubernetes Info Events |
| Events | Get Agent Monitoring Events |
| Events | Get Issues |
| Events | Get Incidents |
| Events | Get Changes |
| Events | Get Events by IDs |
Tool Filtering
The MCP server supports selective tool loading to optimize performance and reduce resource usage. You can enable only the tool categories you need for your specific use case.
Available Tool Categories
infra: Infrastructure monitoring toolsInfrastructure Resources: Host monitoring, snapshot management, software inventory
Infrastructure Catalog: Plugin metadata, metrics definitions, tag management
Infrastructure Topology: Host relationships and system topology visualization
Infrastructure Analyze: Entity metrics, aggregation, and plugin discovery
Infrastructure Metrics: Performance data collection
app: Application performance toolsApplication Resources: Service and endpoint discovery
Application Metrics: Performance measurement across application components
Application Alert Configuration: Smart alert management
Application Catalog: Metadata and definitions
Application Topology: Service dependency mapping
Application Analyze: Application performance analysis
Application Settings: Configuration management
Application Global Alert: Global alert management
events: Event monitoring toolsEvents: Kubernetes events, agent monitoring, incidents, issues, changes and system event tracking
automation: Automation-related toolsAction Catalog: Automation action discovery and management
Action History: Tracking and managing automation action history
website: Website monitoring toolsWebsite Metrics: Performance measurement for websites
Website Catalog: Website metadata and definitions
Website Analyze: Website performance analysis
Website Configuration: Website configuration management
Usage Examples
Using CLI (PyPI Installation)
# Enable only infrastructure and events tools
mcp-instana --tools infra,events --transport streamable-http
# Enable only application tools
mcp-instana --tools app --transport streamable-http
# Enable automation and website tools
mcp-instana --tools automation,website --transport streamable-http
# Enable all tools (default behavior)
mcp-instana --transport streamable-http
# List all available tool categories and their tools
mcp-instana --list-toolsUsing Development Installation
# Enable only infrastructure and events tools
uv run src/core/server.py --tools infra,events --transport streamable-http
# Enable only application tools
uv run src/core/server.py --tools app --transport streamable-http
# Enable automation and website tools
uv run src/core/server.py --tools automation,website --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-toolsBenefits of Tool Filtering
Performance: Reduced startup time and memory usage
Security: Limit exposure to only necessary APIs
Clarity: Focus on specific use cases (e.g., only infrastructure monitoring)
Resource Efficiency: Lower CPU and network usage
Example Prompts
Here are some example prompts (with their corresponding results) that you can use to get started with the Instana Observability Platform API:
Query 1
We want to understand what search criteria are available in Instana so that
we can find the correct search tags for specific entities and
build complex queries to filter entities in Instana. Can you help with this?Result 1
Here is the list of search criteria available in Instana:
entity.jvm.dropwizard.timer
entity.otel
host.name
entity.dropwizard.meter
entity.springboot.name
entity.kubernetes.node.name
entity.tuxedoapp.tuxedoService.name
entity.ace.integrationServer.name
entity.containerd.containerIdentity.tuxedo.domain.tuxconfig
entity.host.macQuery 2
Our application deployments seem to be failing intermittently.
Can you fetch recent Kubernetes info events from Instana for the last 1 day
to help identify what might be causing these deployment issues?Result 2

Query 3
We are seeing errors in agent logs and experiencing issues with agent behavior.
Can you fetch recent agent monitoring events from Instana
to help figure out what might be causing these issues?Result 3
The recent agent monitoring events from Instana indicate that there are several issues with the agent behavior, including:
JVM attach generic issues: There are 36 events related to JVM attach generic issues, affecting multiple entities such as Process (/etc/java-8-64bit-jdk/jdk8u402-b06/bin/java), Process (/etc/java-16-64bit-jdk/jdk-16.0.2+7/bin/java), and others.
Python sensor not installed: There are 7 events related to Python sensor not installed issues, affecting entities such as Process (/usr/bin/python3), Process (/usr/libexec/platform-python), and others.
PostgreSQL authentication failed: There are 2 events related to PostgreSQL authentication failed issues, affecting entities such as PostgreSQL DB (PostgreSQL) and PostgreSQL DB (PostgreSQL @5432).
PostgreSQL connection failed: There is 1 event related to PostgreSQL connection failed issues, affecting the entity PostgreSQL DB (PostgreSQL @5432).
Spring Boot actuator not configured: There is 1 event related to Spring Boot actuator not configured issues, affecting the entity Spring Boot App (sqs-demo-application 0.0.1).
These issues may be causing the errors in the agent logs and affecting the agent behavior. It is recommended to investigate and resolve these issues to ensure proper agent functionality.Query 4
We're setting up comprehensive application performance monitoring across our entire infrastructure.
Can you retrieve all the applications that Instana has discovered? I need to see which applications are available
so I can configure monitoring dashboards, set up alerts, and establish performance baselines for each service in our environment.Result 4
The discovered applications are:
Ovcharov
AWS Resources
Cedric OTel
Cedric Sein Otel
Col
Damian - Sample Go App
Fofo
INSTANA-ECOSYSTEM-SAP-CF
KateQuery 5
We're investigating an issue for the snapshot id "qjNuS6pmtYkxCBKwqsfxvHylisU" and
want to see which hosts might be affected. Can you get the hosts for this snapshot id?Result 5
The hosts related to the snapshot with ID "qjNuS6pmtYkxCBKwqsfxvHylisU" are:
XDrSHZ5iq0BV_bPxQ6FFGsbxqv4
There is 1 host related to this snapshot.Query 6
We want to get specific metrics for Amazon MQ in Instana. Can you show all possible tags
I can use for the plugin awsMq?Result 6
The following tags are available for the plugin "awsMq":
aws.accountId
aws.arn
aws.mq.brokerName
aws.mq.deploymentMode
aws.mq.engineVersion
aws.mq.instanceType
dfq.selftype
dfq.type
label
metricId
type
zone
These tags can be used to filter and group metrics for Amazon MQ in Instana.Query 7
We want to troubleshoot issues with custom metric collection, hence need details of the
plugins which are configured with custom metrics in Instana. Can you help us get the details?Result 7
JVM and OpenTelemetry SDK. The JVM plugin is identified by the label "JVM" and the plugin ID "jvmRuntimePlatform".
The OpenTelemetry SDK plugin is identified by the label "OpenTelemetry SDK" and the plugin ID "openTelemetry".Query 8
We want to see what kind of systems Instana is tracking. We want to explore the monitoring
capabilities of our Instana installation. Please give me the list of monitored entity types.Result 8
The list includes various plugins such as businessActivity, azureManagedHSM, kafkaConnectWorker, and many more.
The total number of available plugins is 395, but only the first 50 are shown in the output.Query 9
We're having performance issues with our db2Database. What payload keys are available for the
db2Database plugin so I can access detailed monitoring data?Result 9
The available payload keys for the db2Database plugin are:
tableSpaceNamesSense
topqueries
diaglogentries
dbConfig
dbmConfig
lockWaits
runstats
dbutilities
toptotalstmts
idlogdiskwait
idhadrstats
reorgtablesizeQuery 10
We have SLAs for our cryptographic services. What Azure Managed HSM metrics can help
monitor service levels using the azureManagedHSM plugin?Result 10
The azureManagedHSM plugin provides three metrics that can help monitor service levels for cryptographic services:
1. Total Service Api Hits: This metric measures the total number of API hits for the service.
2. Overall Service Api Latency: This metric measures the overall latency of service API requests.
3. Overall Service Availability: This metric measures the availability of the service.Docker Deployment
The MCP Instana server can be deployed using Docker for production environments. The Docker setup is optimized for security, performance, and minimal resource usage.
Docker Architecture
The project uses a two-file dependency management strategy:
pyproject.toml (Development)
Purpose: Full development environment with all tools
Dependencies: 20 essential + 8 development dependencies (pytest, ruff, coverage, etc.)
Usage: Local development, testing, and CI/CD
Size: Larger but includes all development tools
pyproject-runtime.toml (Production)
Purpose: Minimal production runtime dependencies only
Dependencies: 20 essential dependencies only
Usage: Docker production builds
Size: Optimized for minimal image size and security
Building the Docker Image
Prerequisites
Docker installed and running
Access to the project source code
Docker BuildKit for multi-architecture builds (enabled by default in recent Docker versions)
Build Command
# 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**
```bash
# 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-instanaTroubleshooting
Docker Issues
Container Won't Start
# 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 clientConnection Issues
# Test container connectivity
docker exec -it <container_id> curl http://127.0.0.1:8080/health
# Check port mapping
docker port <container_id>Performance Issues
# Check container resource usage
docker stats <container_id>
# Monitor container health
docker inspect <container_id> | grep -A 10 HealthGeneral Issues
GitHub Copilot
If you encounter issues with GitHub Copilot, try starting/stopping/restarting the server in the
mcp.jsonfile and keep only one server running at a time.
Certificate Issues
If you encounter certificate issues, such as
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate:Check that you can reach the Instana API endpoint using
curlorwgetwith SSL verification.If that works, your Python environment may not be able to verify the certificate and might not have access to the same certificates as your shell or system. Ensure your Python environment uses system certificates (macOS). You can do this by installing certificates to Python:
//Applications/Python\ 3.13/Install\ Certificates.command
If you cannot reach the endpoint with SSL verification, try without it. If that works, check your system's CA certificates and ensure they are up-to-date.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/shikato/mcp-instana'
If you have feedback or need assistance with the MCP directory API, please join our Discord server