[DEPRECATED] Model Context Protocol (MCP) server for Dynatrace. Migrate to dynatrace-for-ai + dtctl or the Dynatrace Remote MCP Server.
The Dynatrace MCP server has significant quality gaps across naming, descriptions, schemas, and error handling. While tool names generally follow verb conventions, most parameter schemas are not visible in the source code provided, and descriptions are often too brief (under 50 chars) to guide LLM tool selection effectively. The server is marked [DEPRECATED] in package.json, indicating it is no longer actively maintained. Of the 17 tools, only 3 have visible input schemas (execute_dql, verify_dql_statement, explain_dql_in_natural_language, generate_dql_from_natural_language). The remaining 13 tools appear to have tool definitions but no visible parameter schemas, making them un-scoreable for schema quality. Most descriptions lack the specificity needed for LLMs to understand WHEN to call each tool vs similar tools (e.g., 'find_monitored_entities_by_name' vs 'find_monitored_entity_via_smartscape_by_name' have identical descriptions). No error handling guidance is documented. No output schemas are visible. The source code snippet is truncated and does not show full tool registration code.
Sends a message to Davis CoPilot for conversational analysis
Creates a new notebook in Dynatrace
Executes a Davis analyzer and returns the results
Executes a DQL (Dynatrace Query Language) statement against Dynatrace Grail
Explains a DQL statement in natural language using Davis CoPilot
Finds monitored entities by name in Dynatrace
No input schemas visible for 13 of 17 tools. Only execute_dql, verify_dql_statement, explain_dql_in_natural_language, and generate_dql_from_natural_language show parameter definitions. Remaining tools (list_vulnerabilities, list_problems, send_slack_message, send_email, etc.) have zero visible schema documentation, preventing validation of parameter types and constraints.
Descriptions too brief and lack WHEN-to-use guidance. Examples: 'Lists vulnerabilities from Dynatrace' (34 chars), 'Sends a message to Slack' (25 chars), 'Sends an email via Dynatrace' (29 chars). These bypass the 10 - 1024 character window for effective LLM tool selection. Descriptions do not clarify when to prefer one tool over similar ones (e.g., find_monitored_entities_by_name vs find_monitored_entity_via_smartscape_by_name both say the same thing but are listed as separate tools).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 35 | - | v1 |
Finds monitored entities via Smartscape by name in Dynatrace
Generates a DQL statement from natural language using Davis CoPilot
Gets events for a Kubernetes cluster from Dynatrace
Lists available Davis analyzers from Dynatrace
Lists exceptions from Dynatrace
Lists problems/alerts from Dynatrace
Lists vulnerabilities from Dynatrace
Sends an email via Dynatrace
Sends an event to Dynatrace
Sends a message to Slack
Verifies the syntax of a DQL statement without executing it
No visible output schemas or pagination support. Tools like list_vulnerabilities, list_problems, and list_exceptions return list results but lack documented schemas for response structure, pagination (limit/offset/cursor), or result count. Without this, LLMs cannot determine what fields to extract or how to iterate over large result sets.
No error handling guidance visible. Tools lack descriptions of how to recover from failures (e.g., 'User not found, try search_users()'), error classification (retryable vs user-fixable), or actionable error messages. Agents cannot distinguish between transient failures and configuration issues.
Confusing tool naming for variants. 'find_monitored_entities_by_name' vs 'find_monitored_entity_via_smartscape_by_name', the distinction is unclear from names alone, and both have identical descriptions. LLMs cannot infer when to use one over the other. Suggests these may be the same tool with a parameter for search method.
Write operations (send_slack_message, send_email, send_event, create_dynatrace_notebook) lack dry-run or confirmation step descriptions. No guidance on idempotency, retry safety, or whether multiple invocations with the same parameters produce duplicate side effects.
Server marked [DEPRECATED] in package.json. Description states 'Migrate to dynatrace-for-ai + dtctl or the Dynatrace Remote MCP Server.' This server is no longer actively maintained, indicating quality may not improve and users should migrate.