Dynatrace MCP Server

Dynatrace MCP Server

A remote MCP server that enables real-time interaction with the Dynatrace observability platform, bringing production-level monitoring data directly into development workflows.

Category
Visit Server

README

Dynatrace MCP Server

This remote MCP server allows interaction with the Dynatrace observability platform. Bring real-time observability data directly into your development workflow.

<img width="1046" alt="image" src="/assets/dynatrace-mcp-arch.png" />

Use cases

  • Real-time observability, fetch production-level data for early detection.
  • Fix issues in the context from monitored exceptions, logs, and anomalies.
  • More context on security level issues
  • Natural language to query log data

Capabilities

  • List and get problem details from your services (for example Kubernetes)
  • List and get security problems / vulnerability details
  • Execute DQL(Dynatrace Query Language) like getting events or logs
  • Send Slack messages (via Slack Connector)
  • Set up notification Workflow (via Dynatrace AutomationEngine)
  • Get Ownership of an entity

Quickstart

Work in progress

You can add this MCP server (using STDIO) to your MCP Client like VS Code, Claude, Cursor, Windsurf Github Copilot via the package @dynatrace-oss/dynatrace-mcp-server.

VS Code

{
  "servers": {
    "npx-dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "envFile": "${workspaceFolder}/.env"
    }
  }
}

Claude Desktop

{
  "mcpServers": {
    "mobile-mcp": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "OAUTH_CLIENT_ID": "",
        "OAUTH_CLIENT_SECRET": "",
        "DT_ENVIRONMENT": ""
      }
    }
  }
}

Environment Variables

A Dynatrace OAuth Client is needed to communicate with your Dynatrace Environment. Please follow the documentation about creating an Oauth Client in Dynatrace, and set up the following environment variables in order for this MCP to work:

  • DT_ENVIRONMENT (string, e.g., https://abcd1234.apps.dynatrace.com) - URL to your Dynatrace Platform
  • OAUTH_CLIENT_ID (string, e.g., dt0s02.SAMPLE) - Dynatrace OAuth Client ID
  • OAUTH_CLIENT_SECRET (string, e.g., dt0s02.SAMPLE.abcd1234) - Dynatrace OAuth Client Secret
  • OAuth Client Scopes:
    • app-engine:apps:run - needed for environmentInformationClient
    • app-engine:functions:run - needed for environmentInformationClient
    • hub:catalog:read - get details about installed Apps on Dynatrace Environment
    • environment-api:security-problems:read - needed for reading security problems
    • environment-api:entities:read - read monitored entities
    • environment-api:problems:read - get problems
    • environment-api:metrics:read - read metrics
    • environment-api:slo:read - read SLOs
    • settings:objects:read - needed for reading ownership information and Guardians (SRG) from settings
    • storage:buckets:read - Read all system data stored on Grail
    • storage:logs:read - Read logs for reliability guardian validations
    • storage:metrics:read - Read metrics for reliability guardian validations
    • storage:bizevents:read - Read bizevents for reliability guardian validations
    • storage:spans:read - Read spans from Grail
    • storage:entities:read - Read Entities from Grail
    • storage:system:read - Read System Data from Grail
    • storage:user.events:read - Read User events from Grail
    • storage:user.sessions:read - Read User sessions from Grail

In addition, depending on the features you use, the following variables can be configured:

  • SLACK_CONNECTION_ID (string) - connection ID of a Slack Connection
  • USE_APP_SETTINGS (boolean, true or false; default: false)
    • Requires scope app-settings:objects:read to read settings-objects from app settings
  • USE_WORKFLOWS (boolean, true or false; default: false)
    • Requires scopes automation:workflows:read, automation:workflows:write and automation:workflows:run to read, write and execute Workflows

✨ Example prompts ✨

Use these example prompts as a starting point. Just copy them into your IDE or agent setup, adapt them to your services/stack/architecture, and extend them as needed. They’re here to help you imagine how real-time observability and automation work together in the MCP context in your IDE.

Find open vulnerabilities on production, setup alert.

I have this code snippet here in my IDE, where I get a dependency vulnerability warning for my code.
Check if I see any open vulnerability/cve on production.
Analyze a specific production problem.
Setup a workflow that sends Slack alerts to the #devops-alerts channel when availability problems occur.

Debug intermittent 503 errors.

Our load balancer is intermittently returning 503 errors during peak traffic.
Pull all recent problems detected for our front-end services and
run a query to correlate error rates with service instance health indicators.
I suspect we have circuit breakers triggering, but need confirmation from the telemetry data.

Correlate memory issue with logs.

There's a problem with high memory usage on one of our hosts.
Get the problem details and then fetch related logs to help understand
what's causing the memory spike? Which file in this repo is this related to?

Trace request flow analysis.

Our users are experiencing slow checkout processes.
Can you execute a DQL query to show me the full request trace for our checkout flow,
so I can identify which service is causing the bottleneck?

Analyze Kubernetes cluster events.

Our application deployments seem to be failing intermittently.
Can you fetch recent events from our "production-cluster"
to help identify what might be causing these deployment issues?

Development

For development purposes, you can use VSCode and GitHub Copilot.

First, enable Copilot for your Workspace .vscode/settings.json:

{
  "github.copilot.enable": {
    "*": true
  }
}

Second, add the MCP to .vscode/mcp.json:

{
  "servers": {
    "my-dynatrace-mcp-server": {
      "command": "node",
      "args": [
        "${workspaceFolder}/dist/index.js"
      ],
      "envFile": "${workspaceFolder}/.env"
    }
  }
}

Third, create a .env file in this repository (you can copy from .env.template) and configure environment variables as described above.

Last but not least, switch to Agent Mode in CoPilot and reload tools.

Notes

This product is not officially supported by Dynatrace. Please contact us via GitHub Issues if you have feature requests, questions, or need help.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured