datadog-mcp 5.5.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -4
- package/dist/index.js +1127 -75
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -122,12 +122,15 @@ When running with `--transport=http`:
|
|
|
122
122
|
| `monitors` | list | Alerting | List monitors with optional filters | `monitors_read` |
|
|
123
123
|
| `monitors` | get | Alerting | Get monitor by ID | `monitors_read` |
|
|
124
124
|
| `monitors` | search | Alerting | Search monitors by query | `monitors_read` |
|
|
125
|
-
| `monitors` | create | Alerting | Create a new monitor; `config` is validated against a typed schema covering documented options (notifyNoData, renotifyInterval, thresholds, …) — unknown keys surface in `warnings` | `monitors_write` |
|
|
125
|
+
| `monitors` | create | Alerting | Create a new monitor; `config` is validated against a typed schema covering documented options (notifyNoData, renotifyInterval, thresholds, …) — unknown keys surface in `warnings`. Pass `dry_run: true` to validate without creating (uses `/api/v1/monitor/validate`, allowed in read-only mode). | `monitors_write` |
|
|
126
126
|
| `monitors` | update | Alerting | Update an existing monitor; same validated schema as `create`; partial configs accepted; validation errors short-circuit before any HTTP call as `EINVALID_MONITOR_CONFIG:` | `monitors_write` |
|
|
127
|
+
| `monitors` | preview | Alerting | Render a monitor template (inline `message` or by `monitor_id`/`id`) with optional `context` of variables and conditionals. Returns `{rendered, variablesUsed, variablesMissing, conditionalsResolved}`. Supports Datadog Mustache subset: variable substitution + six documented conditionals (`is_alert`, `is_warning`, `is_no_data`, `is_recovery`, `is_alert_to_warning`, `is_warning_to_alert`); `{{#each}}`/partials throw `EUNSUPPORTED_TEMPLATE_SYNTAX`. Read-only. | `monitors_read` |
|
|
128
|
+
| `monitors` | test_notification | Alerting | **Known limitation**: returns `ENOT_SUPPORTED` — Datadog has no public REST endpoint for triggering a test notification. Documentation pointer in response. | n/a |
|
|
127
129
|
| `monitors` | delete | Alerting | Delete a monitor | `monitors_write` |
|
|
128
130
|
| `monitors` | mute | Alerting | Mute a monitor | `monitors_write` |
|
|
129
131
|
| `monitors` | unmute | Alerting | Unmute a monitor | `monitors_write` |
|
|
130
|
-
| `monitors` | top | Alerting | Top N monitors by alert frequency with real monitor names and context breakdown.
|
|
132
|
+
| `monitors` | top | Alerting | Top N monitors by alert frequency with real monitor names and context breakdown. **WARNING:** `total_count` includes renotifies/re-evaluations (Datadog emits a renotify event every `renotify_interval` minutes while Alert). For real fires use `action=history`. | `monitors_read` |
|
|
133
|
+
| `monitors` | history | Alerting | Count and list real state transitions for one monitor over a time window. Filters by `transitionType` (default `["alert","alert recovery"]` — fires+recoveries, excludes renotifies) and optional `group`. Returns `{transitions: [...], count, meta}` where `count` is the number of real transitions (e.g. for one always-Alert burn-rate monitor over 7d: 98 raw events vs **38 real transitions**). | `monitors_read`, `events_read` |
|
|
131
134
|
| `dashboards` | list | Visualization | List all dashboards | `dashboards_read` |
|
|
132
135
|
| `dashboards` | get | Visualization | Get dashboard by ID | `dashboards_read` |
|
|
133
136
|
| `dashboards` | create | Visualization | Create a new dashboard | `dashboards_write` |
|
|
@@ -144,7 +147,7 @@ When running with `--transport=http`:
|
|
|
144
147
|
| `logs_archives` | list, get | Logs Config | Inspect log archives (S3 / GCS / Azure destinations); per-provider credential fields are forwarded unchanged | `logs_read_archives` |
|
|
145
148
|
| `logs_archives` | create, update, delete, reorder | Logs Config | Manage archive destinations; `destination.type` validated against `s3 | gcs | azure_storage` before SDK call | `logs_write_archives` |
|
|
146
149
|
| `logs_archives` | get_order | Logs Config | Read archive evaluation order | `logs_read_archives` |
|
|
147
|
-
| `metrics` | query | Metrics | Query timeseries data | `metrics_read`, `timeseries_query` |
|
|
150
|
+
| `metrics` | query | Metrics | Query timeseries data. Response `meta` now includes `rollupRequested` (parsed from `rollup(method, seconds)` in the query, with `methodInferred` flag), `rollupEffective` (interval derived from returned pointlist intervals + deduped `intervalsObserved` for multi-series), and `rollupOverridden: boolean` so callers can detect when Datadog silently downsampled. | `metrics_read`, `timeseries_query` |
|
|
148
151
|
| `metrics` | search | Metrics | Search for metrics by name | `metrics_read` |
|
|
149
152
|
| `metrics` | list | Metrics | List active metrics | `metrics_read` |
|
|
150
153
|
| `metrics` | metadata | Metrics | Get metric metadata | `metrics_read` |
|
|
@@ -154,7 +157,8 @@ When running with `--transport=http`:
|
|
|
154
157
|
| `events` | list | Events | List events | `events_read` |
|
|
155
158
|
| `events` | get | Events | Get event by ID | `events_read` |
|
|
156
159
|
| `events` | create | Events | Create an event | `events_read` |
|
|
157
|
-
| `events` | search | Events | Search events with v2 API and cursor pagination | `events_read` |
|
|
160
|
+
| `events` | search | Events | Search events with v2 API and cursor pagination. Optional `transitionType` filter (e.g. `["alert","alert recovery"]`) restricts to monitor state-transition events — without it, `source:alert` includes renotifies. For monitor-specific fires use `monitors action=history`. Optional `timezone` adds `*Local` ISO 8601 siblings to every timestamp. Zero-result responses include a `diagnostics` array hinting at the cause (`UNINDEXED_TAG_PREFIX`, `NARROW_TIME_RANGE`, `RESTRICTIVE_SOURCE_FILTER`). | `events_read` |
|
|
161
|
+
| `events` | histogram | Events | Server-side bucketing of events by `hour_of_day`, `day_of_week`, or `day_of_month` in an IANA `timezone` (DST-safe via `Intl.DateTimeFormat`). Cursor-paginates the underlying search; cap at `limits.maxEventsForHistogram` (default 5000, `MCP_MAX_EVENTS_HISTOGRAM` env var). When the cap is hit, returns `bucketCountIncomplete: true` and `nextCursor` for continuation. | `events_read` |
|
|
158
162
|
| `events` | aggregate | Events | Client-side aggregation by monitor_name, source, etc. | `events_read` |
|
|
159
163
|
| `events` | top | Events | Top N event groups by count with generic groupBy support (deployments, configs, alerts, etc.). Groups without context tags are included as "no_context" | `events_read` |
|
|
160
164
|
| `events` | timeseries | Events | Time-bucketed alert trends (hourly/daily counts) | `events_read` |
|