Dynatrace MCP Server
MCP server that brings real-time Dynatrace observability data into AI assistants, including problems, vulnerabilities, DQL queries, and Davis Copilot.
The Dynatrace MCP server, published by the dynatrace-oss organization, lets AI assistants interact with the Dynatrace observability platform directly from your editor or chat client. It exposes Dynatrace problems, security vulnerabilities, exceptions, Kubernetes events, traces, logs, metrics, and entity data, and supports running Dynatrace Query Language (DQL) statements against Grail storage. Integration with Davis Copilot adds natural language to DQL translation and AI-assisted root cause analysis.
In addition to read-only investigation, the server can trigger workflows, send Slack messages or emails, submit Dynatrace events, and create Dynatrace notebooks from agent findings. It supports three authentication paths: a browser-based Authorization Code flow (default), a Platform Token, or an OAuth client. The package can run over stdio for desktop clients or as an HTTP server.
Note: the GitHub repository states the project is in maintenance mode and is "not officially supported by Dynatrace." Dynatrace also offers a Remote Dynatrace MCP Server hosted at your tenant URL (https://{env}.apps.dynatrace.com/platform-reserved/mcp-gateway/v0.1/servers/dynatrace-mcp/mcp) as the recommended path going forward. Using tools that query Grail can incur consumption charges based on GB scanned.
Tools
| Tool | Description |
|---|---|
list_problems |
List active problems detected by Dynatrace. |
list_vulnerabilities |
List security vulnerabilities tracked by Dynatrace Application Security. |
list_exceptions |
Retrieve application exception data. |
get_kubernetes_events |
Fetch Kubernetes events for cluster troubleshooting. |
execute_dql |
Execute a Dynatrace Query Language statement against Grail (logs, spans, events, metrics). |
verify_dql |
Validate the syntax of a DQL statement before execution. |
generate_dql_from_natural_language |
Translate a natural language request into a DQL query via Davis Copilot. |
explain_dql_in_natural_language |
Explain what a DQL statement does in plain English. |
find_entity_by_name |
Find a monitored entity (host, service, process group, etc.) by name. |
chat_with_davis_copilot |
Send a free-form question to Davis Copilot for AI-assisted analysis. |
list_davis_analyzers |
List available Davis analyzers for automated analysis. |
execute_davis_analyzer |
Run a specific Davis analyzer over a given scope. |
create_workflow_for_notification |
Create a Dynatrace Workflow for notifications. |
send_slack_message |
Send a message to Slack via a Dynatrace Slack connection. |
send_email |
Send an email notification via Dynatrace. |
send_event |
Submit a custom event to Dynatrace. |
create_dynatrace_notebook |
Create a Dynatrace Notebook documenting findings. |
Prerequisites
- Node.js v22.10 or newer
- A Dynatrace SaaS environment URL (e.g.
https://abc12345.apps.dynatrace.com) - Authentication via Authorization Code flow (default browser login), a Platform Token, or an OAuth client with the required scopes (minimum
app-engine:apps:runandstorage:buckets:read)
Install / run
The server runs via npx and is published on npm as @dynatrace-oss/dynatrace-mcp-server:
npx -y @dynatrace-oss/dynatrace-mcp-server@latest
To run as an HTTP server instead of stdio:
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http --port 3000
Claude Desktop config
{
"mcpServers": {
"dynatrace-mcp-server": {
"command": "npx",
"args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
"env": {
"DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
}
}
}
}
VS Code config
{
"servers": {
"npx-dynatrace-mcp-server": {
"command": "npx",
"args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
"env": {
"DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
}
}
}
}
Environment variables
DT_ENVIRONMENT(required): Dynatrace platform URLDT_PLATFORM_TOKEN(optional): Platform token authenticationOAUTH_CLIENT_ID/OAUTH_CLIENT_SECRET(optional): OAuth client credentialsDT_GRAIL_QUERY_BUDGET_GB(optional, default 1000): cap on Grail GB scannedSLACK_CONNECTION_ID(optional): Slack connection to use forsend_slack_messageDT_MCP_DISABLE_TELEMETRY(optional): opt out of usage telemetry- Proxy:
https_proxy,http_proxy,no_proxy,NODE_EXTRA_CA_CERTS
Remote (provider-hosted) alternative
Dynatrace also offers a hosted Remote MCP Server reachable at:
https://{environment-name}.apps.dynatrace.com/platform-reserved/mcp-gateway/v0.1/servers/dynatrace-mcp/mcp
This requires no local install and is the path Dynatrace recommends going forward.
- Triage live production incidents by listing open Dynatrace problems and pivoting into related logs and spans with DQL
- Surface and prioritize application security vulnerabilities (CVEs) detected by Dynatrace Application Security across services
- Investigate Kubernetes issues by correlating cluster events with affected entities and exceptions
- Let developers ask questions in plain English and have Davis Copilot generate the matching DQL query against Grail
- Close the loop on findings by creating a Dynatrace Notebook, sending a Slack/email summary, or triggering a Workflow
- "List all open Dynatrace problems in the last 2 hours and group them by impacted service."
- "Show me the top 10 security vulnerabilities by risk score from Dynatrace and which services they affect."
- "Write a DQL query that returns 5xx error counts per service for the last 24 hours, then run it."
- "Ask Davis Copilot why latency on the checkout-service spiked at 14:00 UTC."
- "Create a Dynatrace notebook summarizing today's incident and post a Slack message to #sre with the link."
- Broad tool coverage: problems, vulnerabilities, exceptions, K8s events, DQL on Grail, Davis Copilot, workflows, and notifications
- Published and maintained under the official
dynatrace-ossGitHub org with an npm package - Flexible auth (browser Authorization Code, Platform Token, or OAuth client) and supports both stdio and HTTP transports
- A provider-hosted Remote MCP Server option is available for zero-install setup
- Repository is in maintenance mode and the README states it is "not officially supported by Dynatrace"
- Grail-backed tools like
execute_dqlcan incur consumption charges based on GB scanned - Requires Node.js 22.10+ and a fair amount of OAuth scope configuration to unlock the full toolset
- Dynatrace Managed MCP Server for Dynatrace Managed (self-hosted) deployments
- Remote Dynatrace MCP Server hosted at
https://{env}.apps.dynatrace.com/platform-reserved/mcp-gateway/v0.1/servers/dynatrace-mcp/mcp - Grafana, Datadog, or New Relic MCP servers for similar observability workflows on other platforms