You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-4Lines changed: 14 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,19 +27,29 @@ Bring real-time observability data directly into your development workflow.
27
27
- Get more information about a monitored entity
28
28
- Get Ownership of an entity
29
29
30
-
## Costs
30
+
###Costs
31
31
32
-
**Important:** While this local MCP server is provided for free, using it to access data in Dynatrace Grail may incur additional costs based
32
+
**Important:** While this local MCP server is provided for free, using certain capabilities to access data in Dynatrace Grail may incur additional costs based
33
33
on your Dynatrace consumption model. This affects `execute_dql` tool and other capabilities that **query** Dynatrace Grail storage, and costs
34
-
depend on the volume (GB scanned/billed).
34
+
depend on the volume (GB scanned).
35
35
36
36
**Before using this MCP server extensively, please:**
37
37
38
38
1. Review your current Dynatrace consumption model and pricing
39
39
2. Understand the cost implications of the specific data you plan to query (logs, events, metrics) - see [Dynatrace Pricing and Rate Card](https://www.dynatrace.com/pricing/)
40
40
3. Start with smaller timeframes (e.g., 12h-24h) and make use of [buckets](https://docs.dynatrace.com/docs/discover-dynatrace/platform/grail/data-model#built-in-grail-buckets) to reduce the cost impact
41
41
42
-
**Note**: We will be providing a way to monitor Query Usage of the dynatrace-mcp-server in the future.
42
+
**To understand costs that occured:**
43
+
44
+
Execute the following DQL statement in a notebook to see how much bytes have been queried from Grail (Logs, Events, etc...):
45
+
46
+
```
47
+
fetch dt.system.events
48
+
| filter event.kind == "QUERY_EXECUTION_EVENT" and contains(client.client_context, "dynatrace-mcp")
result+=`\n ⚠️ **Very High Data Usage Warning:** This query scanned ${scannedGB.toFixed(1)} GB of data, which may impact your Dynatrace consumption. Please take measures to optimize your query, like limiting the timeframe or selecting a bucket.\n`;
483
+
}elseif(scannedGB>50){
484
+
result+=`\n ⚠️ **High Data Usage Warning:** This query scanned ${scannedGB.toFixed(2)} GB of data, which may impact your Dynatrace consumption.\n`;
485
+
}elseif(scannedGB>5){
486
+
result+=`\n 💡 **Moderate Data Usage:** This query scanned ${scannedGB.toFixed(2)} GB of data.\n`;
487
+
}elseif(response.scannedBytes===0){
488
+
result+=`\n 💡 **No Data consumed:** This query did not consume any data.\n`;
0 commit comments