/ Directory / Playground / Dynatrace MCP
● Official dynatrace-oss 🔑 Needs your key

Dynatrace MCP

by dynatrace-oss · dynatrace-oss/dynatrace-mcp

Dynatrace-official MCP — Claude writes DQL, investigates incidents, tracks K8s events, surfaces security findings.

Dynatrace publishes this MCP under their dynatrace-oss org. It exposes the Grail platform: DQL query helper, problems/incidents stream, K8s events, security findings. Comes with a Grail budget tracker so agents don't blow your quota.

Why use it

Key features

Live Demo

What it looks like in practice

ready

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "dynatrace-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dynatrace-oss/dynatrace-mcp-server@latest"
      ],
      "env": {
        "DT_ENVIRONMENT": "${DT_ENVIRONMENT}",
        "DT_PLATFORM_TOKEN": "${DT_PLATFORM_TOKEN}"
      }
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "dynatrace-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dynatrace-oss/dynatrace-mcp-server@latest"
      ],
      "env": {
        "DT_ENVIRONMENT": "${DT_ENVIRONMENT}",
        "DT_PLATFORM_TOKEN": "${DT_PLATFORM_TOKEN}"
      }
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "dynatrace-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dynatrace-oss/dynatrace-mcp-server@latest"
      ],
      "env": {
        "DT_ENVIRONMENT": "${DT_ENVIRONMENT}",
        "DT_PLATFORM_TOKEN": "${DT_PLATFORM_TOKEN}"
      }
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "dynatrace-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dynatrace-oss/dynatrace-mcp-server@latest"
      ],
      "env": {
        "DT_ENVIRONMENT": "${DT_ENVIRONMENT}",
        "DT_PLATFORM_TOKEN": "${DT_PLATFORM_TOKEN}"
      }
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "dynatrace-mcp",
      "command": "npx",
      "args": [
        "-y",
        "@dynatrace-oss/dynatrace-mcp-server@latest"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "dynatrace-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@dynatrace-oss/dynatrace-mcp-server@latest"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add dynatrace-mcp -- npx -y @dynatrace-oss/dynatrace-mcp-server@latest

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use Dynatrace MCP

Investigate a fresh incident via DQL

👤 Developers ⏱ ~15 min intermediate

When to use: PagerDuty fires; you want a focused first-look from Claude.

Flow
  1. Pull problem
    get_problem <id>✓ Copied
    → Problem context
  2. Query
    Ask Claude to draft DQL for root cause; run it.✓ Copied
    → Slim event list
  3. Report
    Compose incident draft.✓ Copied
    → Triage doc

Outcome: First-pass investigation in minutes, with DQL receipts.

Combinations

Pair with other MCPs for X10 leverage

dynatrace-mcp + sentry

Cross-reference Dynatrace problems with Sentry events

Combine dynatrace-mcp with sentry: Cross-reference Dynatrace problems with Sentry events✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
run_dql (see docs) Execute a DQL query 1 call
get_problem (see docs) Fetch a problem/incident 1 call
list_events (see docs) Kubernetes events 1 call
list_findings (see docs) Security findings 1 call

Cost & Limits

What this costs to run

API quota
Grail budget per tenant
Tokens per call
Event payloads can be large
Monetary
Dynatrace plan applies
Tip
Enable Grail budget tracker — cheap insurance

Security

Permissions, secrets, blast radius

Minimum scopes: platform-token: read-only
Credential storage: Platform token in env
Data egress: Your DT environment URL
Never grant: admin platform tokens

Troubleshooting

Common errors and fixes

DQL fails on missing field

Use the schema discovery tool first — fields vary per tenant

Alternatives

Dynatrace MCP vs others

AlternativeWhen to use it insteadTradeoff
sentry-mcpYou're on SentryDifferent surface

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills