Token导航 LogoToken导航TokenDH.com
Dynatrace MCP logo
运维云端stdio官方级别未说明来源级核验

Dynatrace MCP

MCP Server

@dynatrace-oss/dynatrace-mcp-server@latest

MCP server for Dynatrace Observability

工具数

18

提示词数

0

GitHub Stars

115

资源数

0
TypeScriptClaude云端部署ClaudeClineClaude DesktopCursorWindsurfVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

dynatrace-oss

提供方

dynatrace-oss

最后核验

2026/5/18 03:27

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @dynatrace-oss/dynatrace-mcp-server@latest --help

详细介绍

Dynatrace MCP服务器

🚀 试试我们全新的 远程动态跟踪MCP服务器! 现在可用-无需本地设置,从任何兼容MCP的客户端立即连接到您的Dynatrace环境。查看我们的 迁移指南 以获取比较和分步说明。

维护模式 -请注意,此存储库当前位于 _维护模式_.

当地 _Dynatrace MCP服务器_ 允许AI助手与 动态追踪 可观测性平台, 将实时可观察性数据直接引入您的开发工作流程。

注意:Dynatrace不支持此产品。

如果您需要帮助,请通过以下方式联系我们 如果您有功能请求、问题或需要帮助。

https://github.com/user-attachments/assets/25c05db1-8e09-4a7f-add2-ed486ffd4b5a

先决条件

  • Node.js v22.10或更新版本 需要运行Dynatrace MCP服务器。

快速入门

您可以通过以下命令将此MCP服务器添加到您的MCP客户端,如VSCode、Claude、Cursor、Amazon Q、Windsurf、ChatGPT或Github Copilot npx -y @dynatrace-oss/dynatrace-mcp-server (类型: stdio).有关更多详细信息,请参阅 下面的配置部分.

此外,您需要将URL配置为Dynatrace环境:

  • DT_ENVIRONMENT (字符串。, https://abc12345.apps.dynatrace.com)-Dynatrace平台的URL(不要使用Dynatrace经典URL,如 abc12345.live.dynatrace.com)

身份验证将通过浏览器中的授权代码流进行处理,您不需要定义平台令牌或OAuth客户端即可开始。

完成后,我们建议您查看 示例提示,比如 Get all details of the entity 'my-service'Show me error logs请注意,这些提示会导致执行DQL语句,这可能会导致 成本 根据您的许可证。

VSCode

{
  "servers": {
    "npx-dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      }
    }
  }
}

建筑

Architecture

用例

  • 实时可观测性 -获取生产级数据以进行早期检测和主动监控
  • 上下文调试 -从监控的异常、日志和异常中修复完整上下文的问题
  • 安全洞察 -获取详细的漏洞分析和安全问题跟踪
  • 自然语言查询 -使用AI驱动的DQL生成和解释
  • 多阶段事件调查 -采用自动化影响评估的系统化四阶段方法
  • 高级交易分析 -具有文件/行级精度的精确根本原因识别
  • 交叉数据源相关性 -连接问题→ 跨度→ 具有跟踪ID相关性的日志
  • DevOps自动化 -具有自动升级/回滚逻辑的部署健康门
  • 安全合规性监控 -基于循证调查的多云合规性评估

能力

  • 可观察性和问题管理(例如。, list_problems, list_vulnerabilities, list_exceptions, get_kubernetes_events)
  • 从Grail查询数据(例如。, execute_dql, verify_dql, generate_dql_from_natural_language, explain_dql_in_natural_language)
  • 实体发现(例如。, find_entity_by_name)
  • Dynatrace智能 (例如。, chat_with_davis_copilot, list_davis_analyzers, execute_davis_analyzer)
  • 自动化和通知(例如。, create_workflow_for_notification, send_slack_message, send_email, send_event)
  • 分享结果(例如。, create_dynatrace_notebook)

成本

重要提示: 虽然此本地MCP服务器是免费提供的,但使用某些功能访问Dynatrace Grail中的数据可能会产生额外的成本 在您的Dynatrace消费模型上。这会影响 execute_dql 工具和其他功能 查询 Dynatrace Grail存储和成本 取决于扫描的容量(GB)。

在广泛使用此MCP服务器之前,请:

  1. 查看您当前的Dynatrace消费模式和定价
  2. 了解您计划查询的特定数据(日志、事件、指标)的成本影响-请参阅 Dynatrace定价和费率卡
  3. 从较小的时间框架(例如12h-24h)开始,并利用 降低成本影响
  4. 设置合适的 DT_GRAIL_QUERY_BUDGET_GB 环境变量(默认值:1000 GB),用于控制和监视Grail查询的消耗

圣杯预算跟踪:

MCP服务器包括用于Grail查询的内置预算跟踪,以帮助您监控和控制成本:

  • DT_GRAIL_QUERY_BUDGET_GB (默认值:1000 GB)以定义您的会话预算限制
  • 服务器跟踪当前会话中所有Grail查询扫描的字节
  • 当你的预算接近80%时,你会收到警告
  • 超出预算警报有助于防止意外的高消耗
  • 重新启动MCP服务器会话时,预算重置

要了解发生的成本:

在笔记本中执行以下DQL语句,查看从Grail查询了多少字节(日志、事件等):

fetch dt.system.events
| filter event.kind == "QUERY_EXECUTION_EVENT" and contains(client.client_context, "dynatrace-mcp")
| sort timestamp desc
| fields timestamp, query_id, query_string, scanned_bytes, table, bucket, user.id, user.email, client.client_context
| maketimeSeries sum(scanned_bytes), by: { user.email, user.id, table }

人工智能辅助

  • 自然语言到DQL -将纯英语查询转换为Dynatrace查询语言
  • DQL说明 -获取复杂DQL查询的简明英文解释
  • AI聊天助手 -获取Dynatrace问题的上下文帮助和指导

配置

您可以通过软件包将此MCP服务器(使用STDIO)添加到您的MCP客户端,如VS Code、Claude、Cursor、Amazon Q Developer CLI、Windsurf Github Copilot @dynatrace-oss/dynatrace-mcp-server.

我们建议始终为您当前的工作区设置它,而不是全局使用它。

VS Code

{
  "servers": {
    "npx-dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      }
    }
  }
}

克劳德桌面版

{
  "mcpServers": {
    "dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      }
    }
  }
}

Amazon Q开发者命令行界面

Amazon Q开发者命令行界面 直接在您的终端中提供交互式聊天体验。您可以在不离开命令行环境的情况下提出问题、获得AWS服务的帮助、排除问题并生成代码片段。

{
  "mcpServers": {
    "dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      }
    }
  }
}

此配置应存储在 /.amazonq/mcp.json.

亚马逊Kiro

亚马逊Kiro 是一个代理IDE,可以帮助您最好地使用规范、转向和挂钩等功能。

{
  "mcpServers": {
    "dynatrace-mcp-server": {
      "command": "npx",
      "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      }
    }
  }
}

此配置应存储在 /.kiro/settings/mcp.json.

谷歌Gemini CLI

谷歌Gemini CLI 是谷歌官方的命令行人工智能助手,支持MCP服务器集成。您可以使用内置管理命令或手动配置添加Dynatrace MCP服务器。

使用 gemini 直接CLI(推荐):

gemini extensions install https://github.com/dynatrace-oss/dynatrace-mcp
export DT_PLATFORM_TOKEN=... # optional

该命令将要求输入值Dynatrace Environment。

验证服务器是否正在通过运行

gemini mcp list

或者手动输入 ~/.gemini/settings.json.gemini/settings.json:

{
  "mcpServers": {
    "dynatrace": {
      "command": "npx",
      "args": ["@dynatrace-oss/dynatrace-mcp-server@latest"],
      "env": {
        "DT_ENVIRONMENT": "https://abc12345.apps.dynatrace.com"
      },
      "timeout": 30000,
      "trust": false
    }
  }
}

HTTP服务器模式(备选)

对于需要将MCP服务器作为HTTP服务运行而不是使用stdio的场景(例如,用于有状态会话、负载平衡或与web客户端集成),可以使用HTTP服务器模式:

以HTTP服务器身份运行:

# Get help and see all available options
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --help

# Run with HTTP server on default port 3000
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http

# Run with custom port (using short or long flag)
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --server -p 8080
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http --port 3001

# Run with custom host/IP (using short or long flag)
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http --host 127.0.0.1 # recommended for local computers
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http --host 0.0.0.0 # recommended for container
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --http -H 192.168.0.1 # recommended when sharing connection over a local network

# Static OAuth callback port (useful when the port must be exposed, e.g., when running the MCP in a container)
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --oauth-redirect-port 5344

# Check version
npx -y @dynatrace-oss/dynatrace-mcp-server@latest --version

支持HTTP传输的MCP客户端的配置:

{
  "mcpServers": {
    "dynatrace-http": {
      "url": "http://localhost:3000",
      "transport": "http"
    }
  }
}

MCP束(MCPB)

每个版本都发布一个预构建的MCP Bundle文件(.mcpb)您可以直接在Claude Desktop中安装,而无需任何手动JSON配置。

在Claude Desktop中安装:

  1. 去 页面并下载最新 dynatrace-mcp-server-.mcpb 文件。
  2. 双击下载的 .mcpb 文件,或打开克劳德桌面→ 设置开发者 并将文件拖动到MCP服务器列表中。
  3. 按照提示设置您的 DT_ENVIRONMENT 变量(例如。 https://abc12345.apps.dynatrace.com).

此存储库还包括与MCP Bundle兼容的 manifest.json 用于本地安装。 该捆绑包通过stdio运行编译的本地服务器入口点:

  • server.type: node
  • server.entry_point: dist/index.js
  • mcp_config.command: node
  • mcp_config.args: ["${__dirname}/dist/index.js"]

则文件

# Observability

We use Dynatrace as an Observability solution. This document provides instructions on how to get data for easytrade from Dynatrace using DQL.

## How to get any data for my App

Depending on the query and tool used, the following filters can be applied to narrow down results:

* `contains(entity.name, "easytrade")`
* `contains(affected_entity.name, "easytrade")`
* `contains(container.name, "easytrade")`

For best results, you can combine these filters with an `OR` operator.

## Logs

To fetch logs for easytrade, execute `fetch logs | filter contains(container.name, "easyatrade")`.
For fetching just error-logs, add `| filter loglevel == "ERROR"`.

环境变量

v1.0.0中的重大更改: MCP服务器不再自动加载 .env 文件夹。使用环境变量 .env 文件,您需要配置MCP客户端以使用本机加载环境变量 envFile 配置选项。看 配置示例 详见下文。
  • DT_ENVIRONMENT (必需的字符串,例如。, https://abc12345.apps.dynatrace.com)-Dynatrace平台的URL(不要使用Dynatrace经典URL,如 abc12345.live.dynatrace.com)
  • DT_PLATFORM_TOKEN (可选,字符串,例如。, dt0s16.SAMPLE.abcd1234)-Dynatrace平台令牌
  • OAUTH_CLIENT_ID (可选,字符串,例如。, dt0s02.SAMPLE)-替代方案:Dynatrace OAuth客户端ID(用于高级用例)
  • OAUTH_CLIENT_SECRET (可选,字符串,例如。, dt0s02.SAMPLE.abcd1234)-替代方案:Dynatrace OAuth客户端密钥(用于高级用例)
  • DT_SSO_URL (可选,字符串,例如。, https://sso.dynatrace.com)-覆盖OAuth身份验证的SSO URL。默认情况下,SSO URL会自动从Dynatrace环境中发现。
  • DT_GRAIL_QUERY_BUDGET_GB (可选,数字,默认值: 1000)-每个会话扫描的Grail查询字节的预算限制(GB)(基数1000)。MCP服务器会跟踪您的Grail使用情况,并在接近或超过此限制时发出警告。

当只是提供 DT_ENVIRONMENT,本地MCP服务器将尝试打开浏览器窗口,以对Dynatrace SSO进行身份验证。

有关其他身份验证方法的更多信息,请查看以下文档 在Dynatrace中创建平台令牌,以及 在Dynatrace中创建OAuth客户端 用于高级场景(服务用户、后端到后端通信)。

此外,根据您使用的功能,可以配置以下变量:

代理配置

MCP服务器遵守公司环境的系统代理设置:

  • https_proxyHTTPS_PROXY (可选,字符串,例如。, http://proxy.example.com:8080)-HTTPS请求的代理服务器URL
  • http_proxyHTTP_PROXY (可选,字符串,例如。, http://proxy.example.com:8080)-HTTP请求的代理服务器URL
  • no_proxyNO_PROXY (可选,字符串,例如。, localhost,127.0.0.1,.local)-应绕过代理的主机名或域的逗号分隔列表
  • NODE_EXTRA_CA_CERTS (可选,字符串,例如。, C:\some-path\certificate.pem)-设置后,众所周知的“根”CA(如VeriSign)将使用额外的证书进行扩展

注:no_proxy 环境变量当前被记录用于提供信息,但底层HTTP客户端并未完全执行。如果需要绕过特定主机的代理,请考虑配置代理服务器来处理这些排除。

代理配置示例:

export HTTPS_PROXY=http://proxy.company.com:8080
export NO_PROXY=localhost,127.0.0.1,.company.local
export DT_ENVIRONMENT=https://abc12345.apps.dynatrace.com

身份验证范围

根据您使用的功能,需要以下范围:

适用于平台令牌和OAuth客户端:

  • app-engine:apps:run -几乎所有工具都需要
  • automation:workflows:read -阅读工作流
  • automation:workflows:write -创建和更新工作流
  • automation:workflows:run -运行工作流
  • app-settings:objects:read -读取应用程序设置-需要 send_slack_message 从应用程序设置中读取连接详细信息的工具
  • storage:buckets:read -需要为 execute_dql 用于读取Grail上存储的所有系统数据的工具
  • storage:logs:read -需要为 execute_dql 用于读取日志以进行可靠性监护验证的工具
  • storage:metrics:read -需要为 execute_dql 用于读取可靠性监护人验证指标的工具
  • storage:bizevents:read -需要为 execute_dql 用于读取bizevents以进行可靠性监护人验证的工具
  • storage:spans:read -需要为 execute_dql 从Grail读取跨度的工具
  • storage:entities:read -需要为 execute_dql 从Grail读取实体的工具
  • storage:events:read -需要为 execute_dql 从Grail读取事件的工具
  • storage:security.events:read-需要为 execute_dql 从Grail读取安全事件的工具
  • storage:system:read -需要为 execute_dql 从Grail读取系统数据的工具
  • storage:user.events:read -需要为 execute_dql 从Grail读取用户事件的工具
  • storage:user.sessions:read -需要为 execute_dql 从Grail读取用户会话的工具
  • storage:smartscape:read -需要为 execute_dql 读取Smartscape数据的工具
  • storage:files:read -需要为 execute_dql 使用DQL的工具 load 用于查找数据的语句(例如。, /lookups/http_status_codes)
  • storage:events:write -需要为 send_event 将事件数据发送到Dynatrace的工具
  • davis-copilot:conversations:execute -执行对话技巧(与副驾驶聊天)
  • davis-copilot:nl2dql:execute -执行Davis Copilot自然语言(NL)到DQL技能
  • davis-copilot:dql2nl:execute -将DQL转换为自然语言(NL)技能
  • davis:analyzers:read -列出和获取Davis分析器定义所需
  • davis:analyzers:execute -执行Davis分析器所需
  • email:emails:send -需要为 send_email 发送电子邮件的工具
  • document:documents:read -需要为 list_documentsread_document 列出和阅读Dynatrace文档的工具(笔记本、仪表板、Launchpad等)
  • document:documents:write -需要为 create_document 创建新文档的工具

备注:

  • 0.12.0之前的版本需要范围 app-engine:functions:run,这已不再需要。
  • 0.13.0之前的版本需要范围 settings:objects:readenvironment-api:entities:read,这些已不再需要。

✨ 示例提示✨

您可以从“我的组件是否受到Dynatrace的监控?”这样简单的问题开始,然后进行更复杂的跟进 例子.

故障排除

身份验证问题

在大多数情况下,身份验证问题与缺少作用域或无效令牌有关。请确保您已添加了上面列出的所有必需范围。

对于平台代币:

  1. 验证您的平台令牌是否具有“身份验证范围”部分中列出的所有必要范围
  2. 确保您的令牌有效且未过期
  3. 检查您的用户在Dynatrace环境中是否具有所需的权限

对于OAuth客户端: 如果出现与OAuth相关的问题,您可以根据我们的 Dynatrace开发人员文档.

建议使用以下API测试访问(需要最少的作用域 app-engine:apps:run 例如。, storage:logs:read):

  1. 使用OAuth客户端ID和密钥检索承载令牌(仅在几分钟内有效):
curl --request POST 'https://sso.dynatrace.com/sso/oauth2/token' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'grant_type=client_credentials' \
  --data-urlencode 'client_id={your-client-id}' \
  --data-urlencode 'client_secret={your-client-secret}' \
  --data-urlencode 'scope=app-engine:apps:run storage:logs:read'
  1. 使用 access_token 根据上述呼叫的响应作为下一个呼叫中的承载令牌:
curl -X GET https://abc12345.apps.dynatrace.com/platform/management/v1/environment \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer {your-bearer-token}'
  1. 您应该检索这样的结果:
{
  "environmentId": "abc12345",
  "createTime": "2023-01-01T00:10:57.123Z",
  "blockTime": "2025-12-07T00:00:00Z",
  "state": "ACTIVE"
}

访问Grail上的数据时出现问题

Grail在Dynatrace文档中有一个关于权限的专门部分。请参考https://docs.dynatrace.com/docs/discover-dynatrace/platform/grail/data-model/assign-permissions-in-grail了解更多详情。

遥测

Dynatrace MCP服务器使用Dynatrace OpenKit BizEvents发送遥测数据,以帮助改进产品。这包括:

  • 服务器启动事件(com.dynatrace-oss.mcp.server-start)
  • 客户端初始化事件(com.dynatrace-oss.mcp.client-initialization)-正在连接哪个MCP客户端(例如,VS Code、Claude Desktop、Cursor)
  • 工具使用事件(com.dynatrace-oss.mcp.tool-usage)-调用哪些工具、成功/失败、执行持续时间
  • 错误事件(com.dynatrace-oss.mcp.error)-用于调试和改进的错误跟踪

所有遥测数据均按以下方式发送 商业活动 并可通过Grail进行分析:

fetch bizevents
| filter startsWith(event.type, "com.dynatrace-oss.mcp")
| sort timestamp DESC

隐私和选择退出:

  • 遥测是 默认启用 但可以通过设置禁用 DT_MCP_DISABLE_TELEMETRY=true
  • 不会跟踪Dynatrace环境中的敏感数据
  • 仅收集匿名使用统计数据和错误信息
  • 使用统计数据和错误数据被传输到Dynatrace的分析端点

配置选项:

  • DT_MCP_DISABLE_TELEMETRY (布尔值,默认值: false)-禁用遥测
  • DT_MCP_TELEMETRY_APPLICATION_ID (字符串,默认值: dynatrace-mcp-server)-用于跟踪的应用程序ID
  • DT_MCP_TELEMETRY_ENDPOINT_URL (字符串,默认值:Dynatrace端点)-OpenKit端点URL
  • DT_MCP_TELEMETRY_DEVICE_ID (字符串,默认值:自动生成)-用于跟踪的设备标识符

要禁用使用情况跟踪,请将此添加到您的环境中:

DT_MCP_DISABLE_TELEMETRY=true

目录标签

目录标签

TypeScriptClaude云端部署monitoringmcpdynatracecopilotobservabilitycline可观测性平台本地部署AI助手集成实时数据开发工具

支持客户端

ClaudeClineClaude DesktopCursorWindsurfVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

@dynatrace-oss/dynatrace-mcp-server@latest

工具数量(toolCount,工具数)

18

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP