mcp-instana 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,649 @@
1
+ Metadata-Version: 2.3
2
+ Name: mcp-instana
3
+ Version: 0.1.0
4
+ Summary: MCP server for Instana
5
+ License: Apache-2.0
6
+ Author: Guangya Liu
7
+ Author-email: gyliu@ibm.com
8
+ Requires-Python: >=3.11
9
+ Classifier: License :: OSI Approved :: Apache Software License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Programming Language :: Python :: 3.13
14
+ Requires-Dist: instana-client (>=1.0.0)
15
+ Requires-Dist: mcp (>=0.1.0)
16
+ Requires-Dist: pydantic (>=2.0.0)
17
+ Requires-Dist: python-dotenv (>=1.0.0)
18
+ Requires-Dist: requests (>=2.31.0)
19
+ Description-Content-Type: text/markdown
20
+
21
+ <!-- START doctoc generated TOC please keep comment here to allow auto update -->
22
+ <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
23
+ **Table of Contents**
24
+
25
+ - [MCP Server for IBM Instana](#mcp-server-for-ibm-instana)
26
+ - [Architecture Diagram](#architecture-diagram)
27
+ - [WorkFlow Diagram](#workflow-diagram)
28
+ - [Pre-Reqs](#pre-reqs)
29
+ - [Install dependencies](#install-dependencies)
30
+ - [Environment Configuration](#environment-configuration)
31
+ - [Run and Test](#run-and-test)
32
+ - [Claude Desktop](#claude-desktop)
33
+ - [Streamable HTTP Mode](#streamable-http-mode)
34
+ - [Stdio Mode](#stdio-mode)
35
+ - [GitHub Copilot](#github-copilot)
36
+ - [Streamable HTTP Mode](#streamable-http-mode-1)
37
+ - [Stdio Mode](#stdio-mode-1)
38
+ - [mcpclient](#mcpclient)
39
+ - [Streamable HTTP Mode](#streamable-http-mode-2)
40
+ - [Stdio Mode](#stdio-mode-2)
41
+ - [Features](#features)
42
+ - [Tools](#tools)
43
+ - [Example Prompts](#example-prompts)
44
+ - [Troubleshooting](#troubleshooting)
45
+
46
+ <!-- END doctoc generated TOC please keep comment here to allow auto update -->
47
+
48
+ # MCP Server for IBM Instana
49
+
50
+ The Instana MCP server allows interaction with the Instana observability platform helps fetching real-time observability data directly into development workflow.
51
+
52
+ It acts as a bridge between clients (like AI agents or custom tools) and the Instana REST APIs , converts user queries into Instana API requests and formats/summarizes the API responses into structured formats.
53
+
54
+ The server supports **Streamable HTTP** and **Stdio** transport modes for maximum compatibility with different MCP clients. For more Details refer to [MCP Transport Modes](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports) .
55
+
56
+ ## Architecture Diagram
57
+
58
+ ```mermaid
59
+ graph LR
60
+ subgraph "Application Host Process"
61
+ MH[MCP Host]
62
+ MSI[Instana MCP Server]
63
+ MST[ProductA MCP Server]
64
+ MSC[ProductB MCP Server]
65
+
66
+ MH <--> MSI
67
+ MH <--> MSC
68
+ MH <--> MST
69
+ end
70
+
71
+ subgraph "Remote Service"
72
+ II[Instana Instance]
73
+ TI[ProductA Instance]
74
+ CI[ProductB Instance]
75
+
76
+ MSI <--> II
77
+ MST <--> TI
78
+ MSC <--> CI
79
+ end
80
+
81
+ subgraph "LLM"
82
+ L[LLM]
83
+ MH <--> L
84
+ end
85
+ ```
86
+
87
+ ## WorkFlow Diagram
88
+
89
+ Let’s take a simple example. Assume you are using a MCP Host, it can be Claude Desktop, VS Code or some others, and it connected to a MCP server of Instana. Here I will ask for the Instana MCP Server to show me some alerts. Here is what happens:
90
+
91
+ - The MCP client gets the list of available tools from the Instana MCP server.
92
+ - Your query is sent to LLM along with tool descriptions.
93
+ - LLM analyzes the available tools and decides which one(s) to use. In this case some tools related to getting instana alerts and application are returned to Instana MCP client.
94
+ - The client executes the chosen tool(s) through the Instana MCP server, since tools is in the server.
95
+ - Results (latest alerts) are sent back to LLM.
96
+ - LLM formulates a natural language response.
97
+ - The response is displayed to you.
98
+
99
+ ```mermaid
100
+ sequenceDiagram
101
+ participant User
102
+ participant ChatBot as MCP Host
103
+ participant MCPClient as MCP Client
104
+ participant MCPServer as Instana MCP Server
105
+ participant LLM
106
+ participant Instana as Instana Instance
107
+
108
+ ChatBot->>MCPClient: Load available tools from MCP Server
109
+ MCPClient->>MCPServer: Request available tool list
110
+ MCPServer->>MCPClient: Return list of available tools
111
+ User->>ChatBot: Ask "Show me the latest alerts from Instana for application robot-shop"
112
+ ChatBot->>MCPClient: Forward query
113
+ MCPClient->>LLM: Send query and tool description
114
+ LLM->>MCPClient: Select appropriate tool(s) for Instana alert query
115
+ MCPClient->>MCPServer: Execute selected tool(s)
116
+ MCPServer->>Instana: Retrieve alerts for application robot-shop
117
+ MCPServer->>MCPClient: Send alerts of Instana result
118
+ MCPClient->>LLM: Forward alerts of Instana
119
+ LLM->>ChatBot: Generate natural language response for Instana alerts
120
+ ChatBot->>User: Show Instana alert response
121
+ ```
122
+
123
+ ## Pre-Reqs
124
+
125
+ To create a virtual environment and activate it, run the following command:
126
+
127
+ ```shell
128
+ python -m venv .mcp-instana
129
+ source .mcp-instana/bin/activate
130
+ ```
131
+ ### Install dependencies
132
+
133
+ ```
134
+ pip install -r requirements.txt
135
+ ```
136
+
137
+ ### Environment Configuration
138
+
139
+ Create a `.env` file in your project root:
140
+
141
+ ```bash:.env
142
+ INSTANA_BASE_URL=https://your-instana-instance.instana.io
143
+ INSTANA_API_TOKEN=your_instana_api_token_here
144
+ ```
145
+
146
+ ## Run and Test
147
+
148
+ ### Claude Desktop
149
+
150
+ Claude Desktop supports all modes - Streamable HTTP and Stdio for MCP integration.
151
+
152
+ Configure Claude Desktop by editing the configuration file:
153
+
154
+ **File Locations:**
155
+ - **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
156
+ - **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
157
+
158
+ #### Streamable HTTP Mode
159
+
160
+ The Streamable HTTP mode provides a REST API interface for MCP communication using JSON-RPC over HTTP.
161
+
162
+ **Step 1: Start the MCP Server in Streamable HTTP Mode**
163
+
164
+ ```bash
165
+ python src/mcp_server.py --transport streamable-http --debug
166
+ ```
167
+
168
+ **Note:** debug flag is optional , set `--debug` for getting additional logs. Provide --transport streamable-http to start the server in streamable-http mode.
169
+
170
+ **Step 2: Configure Claude Desktop**
171
+
172
+ ```json:claude_desktop_config.json
173
+ {
174
+ "mcpServers": {
175
+ "Instana Tools": {
176
+ "command": "npx",
177
+ "args": ["mcp-remote", "http://127.0.0.1:8000/mcp"],
178
+ "env": {
179
+ "INSTANA_BASE_URL": "<INSTANA_BASE_URL>",
180
+ "INSTANA_API_TOKEN": "<INSTANA_API_TOKEN>"
181
+ }
182
+ }
183
+ }
184
+ }
185
+ ```
186
+
187
+ **Step 3: Test the Connection**
188
+
189
+ Restart Claud Desktop, now you will be able to see instana tools in claude desktop as shown below .
190
+
191
+ ![](./images/claudeTools.png)
192
+
193
+ You can now run the query in Claud Desktop.
194
+
195
+ ```bash
196
+ get me all endpoints from Instana
197
+ ```
198
+ ![](./images/claudeResponse.png)
199
+
200
+
201
+ #### Stdio Mode
202
+
203
+ **Configuration:**
204
+
205
+ ```json
206
+ {
207
+ "mcpServers": {
208
+ "Instana Tools": {
209
+ "command": "<path-to-mcp-instana-virtual-env-folder>/bin/uv",
210
+ "args": [
211
+ "--directory",
212
+ "<path-to-mcp-instana-folder>"
213
+ "run",
214
+ "src/mcp_server.py"
215
+ ],
216
+ "env": {
217
+ "INSTANA_BASE_URL": "<INSTANA_BASE_URL>",
218
+ "INSTANA_API_TOKEN": "<INSTANA_API_TOKEN>"
219
+ }
220
+ }
221
+ }
222
+ }
223
+ ```
224
+
225
+
226
+ ### GitHub Copilot
227
+
228
+ GitHub Copilot supports MCP integration through VS Code configuration.
229
+ For GitHub Copilot integration with VScode refer this [link](#https://code.visualstudio.com/docs/copilot/setup).
230
+
231
+ #### Streamable HTTP Mode
232
+
233
+ **Step 1: Start the MCP Server in Streamable HTTP Mode**
234
+
235
+ ```bash
236
+ python src/mcp_server.py --transport streamable-http --debug
237
+ ```
238
+
239
+ **Step 2: Configure VS Code**
240
+
241
+ Check [Use MCP servers in VS Code](https://code.visualstudio.com/docs/copilot/chat/mcp-servers) for detailed configuration.
242
+
243
+ 1. In the `mcp.json` file click on Add Server .
244
+ 2. From the list, select HTTP (HTTP or Server-Sent Events).
245
+
246
+ ![alt text](./images/copilotHTTPServer.png)
247
+ 3. In the Server URL field, enter http://127.0.0.1:8000/mcp and press Enter.
248
+ 4. Under Enter Server ID, press Enter to use the default server ID, or enter a custom server ID( here I was using default name as `my-mcp-server-http`), post which it will add `my-mcp-server-http` to `mcp.json` file as shown below.
249
+
250
+ ![alt text](./images/copilotStartServer.png)
251
+
252
+ In the above picture we have server configuration for all modes (Steamable HTTP, Stdio) . Based on the particular mode we want to use, we can keep the configuration in mcp.json file.
253
+
254
+ #### Stdio Mode
255
+
256
+ **Step 1: Create VS Code MCP Configuration**
257
+ Create `.vscode/mcp.json` in your project root:
258
+
259
+ ```json:.vscode/mcp.json
260
+ {
261
+ "servers": {
262
+ "Instana Tools": {
263
+ "command": "/absolute/path/to/your/project/.mcp-instana/bin/uv",
264
+ "args": [
265
+ "--directory",
266
+ "/absolute/path/to/your/project/mcp-instana",
267
+ "run",
268
+ "src/mcp_server.py"
269
+ ],
270
+ "env": {
271
+ "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
272
+ "INSTANA_API_TOKEN": "your_instana_api_token"
273
+ }
274
+ }
275
+ }
276
+ }
277
+ ```
278
+
279
+ **Step 2: Manage Server in VS Code**
280
+
281
+ 1. **Open `.vscode/mcp.json`** - you'll see server management controls at the top
282
+ 2. **Click `Start`** next to `Instana Tools` to start the server
283
+ 3. Running status along with no. of tools shows the server is running
284
+
285
+ **Step 3: Test Integration**
286
+
287
+ Switch to Agent Mode in Github CoPilot and reload tools.
288
+ Here is the example of GitHub Copilot response:
289
+
290
+ ![alt text](./images/copilotResponse.png)
291
+
292
+ ### mcpclient
293
+
294
+ The MCP Client(`mcpclient/mcp_client.py`) is a Streamlit-based web application that provides a user-friendly interface for testing and interacting with the Instana MCP server. It supports all modes - Streamable HTTP and stdio allowing users to execute queries against Instana's monitoring data through an intuitive web interface.
295
+
296
+ #### Streamable HTTP Mode
297
+
298
+ **Step 1: Start the MCP Server with Streamable HTTP Mode**
299
+
300
+ ```bash
301
+ source .mcp-instana/bin/activate
302
+ cd mcp-instana
303
+ python src/mcp_server.py --transport streamable-http --debug
304
+ ```
305
+ **Step 2: Run the Client**
306
+
307
+ ```bash
308
+ cd mcp-instana
309
+ streamlit run mcpclient/mcp_client.py
310
+ ```
311
+ **Step 3: Configure Streamable HTTP Mode**
312
+
313
+ 1. Access the client at http://localhost:8501
314
+ 2. In the sidebar, select **"streamable-http"** as the transport mode
315
+ 3. Configure the server settings:
316
+ - **Server Host**: `localhost`
317
+ - **Server Port**: `8000`
318
+ 4. The http URL will be automatically set to `http://localhost:8000/mcp/`
319
+
320
+ ![](./images/mcpClientHttp.png)
321
+
322
+ #### Stdio Mode
323
+
324
+ **Step 1: Configure Environment**
325
+
326
+ Create/Update `.env` file in in your project root and configure watsonx environment variables:
327
+
328
+
329
+ ```bash:.env
330
+ WATSONX_URL=your_watsonx_url
331
+ WATSONX_API_KEY=your_watsonx_api_key
332
+ WATSONX_PROJECT_ID=your_watsonx_project_id
333
+ INSTANA_BASE_URL=https://your-instana-instance.instana.io
334
+ INSTANA_API_TOKEN=your_instana_api_token
335
+ ```
336
+ **Step 2: Update MCP Configuration**
337
+
338
+ Update `mcpclient/mcp-instana.json` file with your working directory path.
339
+
340
+ ```json:mcpclient/mcp-instana.json
341
+ {
342
+ "mcpServers": {
343
+ "instana": {
344
+ "command": "/absolute/path/to/your/project/.mcp-instana/bin/python",
345
+ "args": ["/absolute/path/to/your/project/src/mcp_server.py"],
346
+ "cwd": "/absolute/path/to/your/project",
347
+ "env": {
348
+ "INSTANA_BASE_URL": "https://your-instana-instance.instana.io",
349
+ "INSTANA_API_TOKEN": "your_instana_api_token"
350
+ }
351
+ }
352
+ }
353
+ }
354
+ ```
355
+ **Step 3: Run the Client**
356
+
357
+ ```
358
+ cd mcp-instana
359
+ streamlit run mcpclient/mcp_client.py
360
+ ```
361
+
362
+ Access the client at http://localhost:8501 and select **"stdio"** as the transport mode.
363
+
364
+ ![](./images/mcpClientStdio.png)
365
+
366
+ ## Features
367
+
368
+ - [ ] Application
369
+ - [ ] Application Metrics
370
+ - [ ] Application Metrics
371
+ - [ ] Endpoint Metrics
372
+ - [ ] Service Metrics
373
+ - [ ] Data Metrics
374
+ - [x] Application Resources
375
+ - [x] Get Applications Endpoints
376
+ - [x] Get Applications
377
+ - [x] Get Services
378
+ - [x] Get Application Services
379
+ - [x] Application Alert Configuration
380
+ - [x] Get All Smart Alert Configurations
381
+ - [x] Get Smart Alert Configuration
382
+ - [x] Get Smart Alert Config Versions
383
+ - [ ] Create Smart Alert Configuration
384
+ - [ ] Update Smart Alert Configuration
385
+ - [x] Delete Smart Alert Configuration
386
+ - [ ] Recalculate Smart Alert Config Baseline
387
+ - [x] Enable Application Alert Config
388
+ - [x] Disable Smart Alert Config
389
+ - [x] Restore Smart Alert Config
390
+ - [ ] Infrastructure
391
+ - [ ] Infrastructure Analyze
392
+ - [x] Get Available Metrics
393
+ - [ ] Get infrastructure entities
394
+ - [ ] Get grouped entities with aggregated metrics
395
+ - [x] Get available plugins/entity types
396
+ - [x] Infrastructure Catalog
397
+ - [x] Get Payload Keys By plugin ID
398
+ - [x] Get Infrastructure Catalog Metrics
399
+ - [x] Get Infrastructure Catalog Plugins
400
+ - [x] Get Infrastructure Catalog Plugins with Custom Metrics
401
+ - [x] Get Infrastructure Catalog Search Fields
402
+ - [x] Get Infrastructure Catalog Search Fields with Custom Metrics
403
+ - [x] Get Tag Catalog
404
+ - [x] Get Tag Catalog ALL
405
+ - [ ] Infrastructure Resources
406
+ - [x] Get Monitoring State
407
+ - [ ] Get plugin Payload
408
+ - [x] Search Snapshots
409
+ - [x] Get Snapshot Details for single Snapshot ID
410
+ - [x] Get Details for Multiple Snapshot IDs
411
+ - [x] Software Versions
412
+ - [x] Infrastructure Topology
413
+ - [x] Get Hosts for Snapshot
414
+ - [x] Get Topology
415
+ - [ ] Events
416
+ - [ ] Events
417
+ - [ ] Get all Events
418
+ - [x] Get Events by IDs
419
+ - [x] Get Agent Monitoring Events
420
+ - [x] Get Kubernetes Info Events
421
+
422
+
423
+ ## Tools
424
+
425
+ | Tool | Category | Description |
426
+ |---------------------------------------------------------------|--------------------------|------------------------------------------------------- |
427
+ | `get_application_metrics` | Application Metrics | Get ApplicationMetrics |
428
+ | `get_endpoints_metrics` | Application Metrics | Get Endpoint metrics |
429
+ | `get_services_metrics` | Application Metrics | Get Service metrics |
430
+ | `get_application_data_metrics_v2` | Application Metrics | Get Application Data Metrics |
431
+ | `get_applications` | Application Resources | Get applications |
432
+ | `get_application_services` | Application Resources | Get applications/services |
433
+ | `get_application_endpoints` | Application Resources | Get endpoints |
434
+ | `get_services` | Application Resources | Get services |
435
+ | `get_monitoring_state` | Infrastructure Resources | Monitored host count |
436
+ | `get_plugin_payload` | Infrastructure Resources | Get a payload for a snapshot |
437
+ | `get_snapshots` | Infrastructure Resources | Search snapshots |
438
+ | `post_snapshots` | Infrastructure Resources | Get snapshot details for multiple snapshots |
439
+ | `get_snapshot` | Infrastructure Resources | Get snapshot details |
440
+ | `software_versions` | Infrastructure Resources | Get installed software |
441
+ | `get_available_payload_keys_by_plugin_id` | Infrastructure Catalog | Get Payload Keys By plugin ID |
442
+ | `get_infrastructure_catalog_metrics` | Infrastructure Catalog | Get Infrastructure Catalog Metrics |
443
+ | `get_infrastructure_catalog_plugins` | Infrastructure Catalog | Get Infrastructure Catalog Plugins |
444
+ | `get_infrastructure_catalog_plugins_with_custom_metrics` | Infrastructure Catalog | Get Infrastructure Catalog Plugins with Custom Metrics |
445
+ | `get_infrastructure_catalog_search_fields` | Infrastructure Catalog | Get Infrastructure Catalog Search Fields |
446
+ | `get_tag_catalog` | Infrastructure Catalog | Get Tag Catalog |
447
+ | `get_tag_catalog_all` | Infrastructure Catalog | Get Tag Catalog ALL |
448
+ | `get_related_hosts` | Infrastructure Topology | Get Related Hosts |
449
+ | `get_topology` | Infrastructure Topology | Get Topology |
450
+ | `get_available_metrics` | Infrastructure Analyze | Get Available Metrics |
451
+ | `get_entities` | Infrastructure Analyze | Get infrastructure entities |
452
+ | `get_aggregated_entity_groups` | Infrastructure Analyze | Get grouped entities with aggregated metrics |
453
+ | `get_available_plugins` | Infrastructure Analyze | Get available entity types |
454
+ | `get_application_alert_configs` | Application Alert Configuration | Get All Smart Alert Configurations |
455
+ | `find_application_alert_config` | Application Alert Configuration | Get Smart Alert Configuration |
456
+ | `find_application_alert_config_versions` | Application Alert Configuration | Get Smart Alert Config Versions |
457
+ | `create_application_alert_config` | Application Alert Configuration | Create Smart Alert Configuration |
458
+ | `update_application_alert_config` | Application Alert Configuration | Update Smart Alert Configuration |
459
+ | `delete_application_alert_config` | Application Alert Configuration | Delete Smart Alert Configuration |
460
+ | `update_application_historic_baseline` | Application Alert Configuration | Recalculate Smart Alert Config Baseline |
461
+ | `enable_application_alert_config` | Application Alert Configuration | Enable Application Alert Config |
462
+ | `disable_application_alert_config` | Application Alert Configuration | Disable Smart Alert Config |
463
+ | `restore_application_alert_config` | Application Alert Configuration | Restore Smart Alert Config |
464
+ | `get_event` | Events | Get Events by IDs |
465
+ | `get_kubernetes_info_events` | Events | Get Kubernetes Info Events |
466
+ | `get_agent_monitoring_events` | Events | Get Agent Monitoring Events |
467
+
468
+ ## Example Prompts
469
+
470
+ Here are some example prompts (contains the query and results) that you can use to get started with the Instana Observability Platform API:
471
+
472
+ - Query 1
473
+ ```
474
+ we want to understand what all search criteria are available in Instana so that
475
+ we can find out correct search tags for specific entities and
476
+ build complex queries to filter entities in Instana . can you help with this?
477
+ ```
478
+
479
+ - Result 1
480
+
481
+ ```shell
482
+
483
+ Here is the list of search criteria available in Instana:
484
+
485
+ entity.jvm.dropwizard.timer
486
+ entity.otel
487
+ host.name
488
+ entity.dropwizard.meter
489
+ entity.springboot.name
490
+ entity.kubernetes.node.name
491
+ entity.tuxedoapp.tuxedoService.name
492
+ entity.ace.integrationServer.name
493
+ entity.containerd.containerIdentity.tuxedo.domain.tuxconfig
494
+ entity.host.mac
495
+ ```
496
+ - Query 2
497
+ ```shell
498
+ Our application deployments seem to be failing intermittently.
499
+ Can you fetch recent Kubernetes info events events from Instana for last 1 day
500
+ to help identify what might be causing these deployment issues?
501
+ ```
502
+ - Result 2
503
+ ![alt text](./images/kubernetesEvents.png)
504
+
505
+ - Query 3
506
+ ```shell
507
+ we are seeing errors in agent logs and experiencing some issue with agent behavior
508
+ Can you fetch recent agent monitoring events from Instana
509
+ to help figure out what might be causing these issues?
510
+ ```
511
+ - Result 3
512
+ ```shell
513
+ The recent agent monitoring events from Instana indicate that there are several issues with the agent behavior, including:
514
+
515
+ 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.
516
+ 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.
517
+ 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).
518
+ PostgreSQL connection failed: There is 1 event related to PostgreSQL connection failed issues, affecting the entity PostgreSQL DB (PostgreSQL @5432).
519
+ 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).
520
+ 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.
521
+ ```
522
+ - Query 4
523
+ ```shell
524
+ We're setting up comprehensive application performance monitoring across our entire infrastructure.
525
+ Can you retrieve all the applications that Instana has discovered? I need to see which applications are available
526
+ so I can configure monitoring dashboards, set up alerts, and establish performance baselines for each service in our environment.
527
+ ```
528
+ - Result 4
529
+
530
+ ```shell
531
+ The discovered applications are:
532
+
533
+ Ovcharov
534
+ AWS Resources
535
+ Cedric OTel
536
+ Cedric Sein Otel
537
+ Col
538
+ Damian - Sample Go App
539
+ Fofo
540
+ INSTANA-ECOSYSTEM-SAP-CF
541
+ Kate
542
+ ```
543
+ - Query 5
544
+ ```shell
545
+ We're investigating an issue for the snapshot id "qjNuS6pmtYkxCBKwqsfxvHylisU" and
546
+ want to see which hosts might be affected for this . Can you get the hosts for this snapshot id?
547
+ ```
548
+ - Result 5
549
+ ```shell
550
+ The hosts related to the snapshot with ID "qjNuS6pmtYkxCBKwqsfxvHylisU" are:
551
+
552
+ XDrSHZ5iq0BV_bPxQ6FFGsbxqv4
553
+ There is 1 host related to this snapshot.
554
+ ```
555
+ - Query 6
556
+ ```shell
557
+ We want to get specific metrics for Amazon MQ in INstana, Can you Show all possible tags
558
+ I can use for the plugin awsMq ?
559
+ ```
560
+ - Result 6
561
+
562
+ ```shell
563
+
564
+ The following tags are available for the plugin "awsMq":
565
+
566
+ aws.accountId
567
+ aws.arn
568
+ aws.mq.brokerName
569
+ aws.mq.deploymentMode
570
+ aws.mq.engineVersion
571
+ aws.mq.instanceType
572
+ dfq.selftype
573
+ dfq.type
574
+ label
575
+ metricId
576
+ type
577
+ zone
578
+ These tags can be used to filter and group metrics for Amazon MQ in Instana.
579
+ ```
580
+
581
+ - Query 7
582
+ ```shell
583
+ we want to troubleshoot issues with custom metric collection, hence need details of the
584
+ plugins which are configured with custom metrics in Instana,Can you help us get the details ?
585
+ ```
586
+ - Result 7
587
+
588
+ ```shell
589
+ JVM and OpenTelemetry SDK. The JVM plugin is identified by the label "JVM" and the plugin ID "jvmRuntimePlatform".
590
+ The OpenTelemetry SDK plugin is identified by the label "OpenTelemetry SDK" and the plugin ID "openTelemetry".
591
+ ```
592
+
593
+ - Query 8
594
+ ```shell
595
+ we want to see what kind of systems Instana is tracking , want to explore the monitoring
596
+ capabilities of our Instana installation, please give me the list of monitored entity types
597
+ ```
598
+ - Result 8
599
+ ```shell
600
+ The list includes various plugins such as businessActivity, azureManagedHSM, kafkaConnectWorker, and many more.
601
+ The total number of available plugins is 395, but only the first 50 are shown in the output.
602
+ ```
603
+
604
+ - Query 9
605
+ ```shell
606
+ We're having performance issues with our db2Database. What payload keys are available for the
607
+ db2Database plugin so I can access detailed monitoring data?
608
+ ```
609
+ - Result 9
610
+
611
+ ```shell
612
+ The available payload keys for the db2Database plugin are:
613
+
614
+ tableSpaceNamesSense
615
+ topqueries
616
+ diaglogentries
617
+ dbConfig
618
+ dbmConfig
619
+ lockWaits
620
+ runstats
621
+ dbutilities
622
+ toptotalstmts
623
+ idlogdiskwait
624
+ idhadrstats
625
+ reorgtablesize
626
+ ```
627
+
628
+ - Query 10
629
+ ```shell
630
+ We have SLAs for our cryptographic services. What Azure Managed HSM metrics can help
631
+ monitor service levels using azureManagedHSM plugin?
632
+ ```
633
+ - Result 10
634
+
635
+ ```shell
636
+ The azureManagedHSM plugin provides three metrics that can help monitor service levels for cryptographic services:
637
+ 1. Total Service Api Hits: This metric measures the total number of API hits for the service.
638
+ 2. Overall Service Api Latency: This metric measures the overall latency of service API requests.
639
+ 3. Overall Service Availability: This metric measures the availability of the service.
640
+ ```
641
+
642
+ ## Troubleshooting
643
+
644
+ - Dependency Version Conflicts
645
+ - If you encounter version conflicts during `pip install -r requirements.txt` for any of the packages try updating to latest versions via `pip install --upgrade -r requirements.txt` or manually update conflicting package versions in requirements.txt
646
+
647
+ - Github Copilot
648
+ - If you encounter any issues with Github Copilot, try start/stop/restart the server in `mcp.json` file and try to keep any one server at a time.
649
+
@@ -0,0 +1,19 @@
1
+ src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ src/client/What is the sum of queue depth for all q,sha256=Ya_mffnaM8lWf5S54GObgeelp-iPtPGaU5eknT94x64,5564
3
+ src/client/application_alert_config_mcp_tools.py,sha256=OwAE7JXD-Nf2TWy5Y9XoIZPXqcZK0j-Xy4DA57BxlEM,31316
4
+ src/client/application_metrics_mcp_tools.py,sha256=rKPOZ12rHBtCqJUr8E5URM5_DOnb1yeGtkYRE2dvICc,16294
5
+ src/client/application_resources_mcp_tools.py,sha256=lJe1JL70sS0FOvB2RMiRU_Y9F2QX_GRQVNgWeWWBq1U,19076
6
+ src/client/events_mcp_tools.py,sha256=U9Ltkavjflz7LWaItODZYDeSrtUycwgYXVWDLLxmH5Y,26663
7
+ src/client/infrastructure_analyze_mcp_tools.py,sha256=EbpKCOh3P36iClyb2p3qyg5xiJR2EKyHtXxElGGjMgs,30326
8
+ src/client/infrastructure_catalog_mcp_tools.py,sha256=rwokyguCa_5pGDue_aNhobBlNTcvQO99QyXbP__K3uU,31502
9
+ src/client/infrastructure_resources_mcp_tools.py,sha256=TWjUE9PaSPotUuMWzUllbFkBO3b-XbiFo680pq8LirA,30735
10
+ src/client/infrastructure_topology_mcp_tools.py,sha256=_lc9H6JbJO3qOG64jFtfdm6sFfaEsUCEheCMlw1n1kw,15334
11
+ src/client/instana_client_base.py,sha256=Grc8rLq0ZA7pbhczZfH6NNsKS3KAyhVXThDUXkGC5dc,3620
12
+ src/client/log_alert_configuration_mcp_tools.py,sha256=R1v_pEMKCNryHynLovcNh-z4OBmZRIwGxe3x8vg29Jo,13267
13
+ src/client/show the top 5 services with the highest,sha256=lKQ2ULcBtP1K4DxZYrzfySgA-5cTy5Ng0eiDV9raYZM,3433
14
+ src/mcp_server.py,sha256=qFfTTULjxzNk4Ryii3QQK6FivRlX_5wDC3yvtxVYB3I,13497
15
+ mcp_instana-0.1.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
16
+ mcp_instana-0.1.0.dist-info/METADATA,sha256=UWfRyf5JuMdyIoNEhTUO0y75IzdHX_AmWUuu6nJStxA,25907
17
+ mcp_instana-0.1.0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
18
+ mcp_instana-0.1.0.dist-info/entry_points.txt,sha256=Ct-3wKWErkkx8mXN3_ZmdyUx9qap9hYoWv2dfAAFu00,51
19
+ mcp_instana-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: poetry-core 2.1.3
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ mcp-instana=src.mcp_server:main
3
+
src/__init__.py ADDED
File without changes