devhelm-mcp-server 0.8.0__tar.gz → 0.8.2__tar.gz
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.
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/PKG-INFO +2 -2
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/docs/openapi/monitoring-api.json +209 -17
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/pyproject.toml +6 -4
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/uv.lock +5 -5
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/.github/workflows/ci.yml +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/.github/workflows/release.yml +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/.github/workflows/spec-check.yml +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/.gitignore +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/LICENSE +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/Makefile +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/README.md +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/docker/Dockerfile +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/scripts/regen-from.sh +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/scripts/release.sh +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/__init__.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/client.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/server.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/__init__.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/alert_channels.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/api_keys.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/dependencies.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/deploy_lock.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/environments.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/forensics.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/incidents.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/maintenance_windows.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/monitors.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/notification_policies.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/resource_groups.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/secrets.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/status.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/status_pages.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/tags.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/webhooks.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/__init__.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/run_mcp.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_auth.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_cli.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_client.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_devex_round3_fixes.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_maintenance_windows.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_tools.py +0 -0
- {devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/tests/test_typed_schemas.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: devhelm-mcp-server
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.2
|
|
4
4
|
Summary: DevHelm MCP server — AI agent access to monitors, incidents, alerting, and more
|
|
5
5
|
Project-URL: Homepage, https://devhelm.io
|
|
6
6
|
Project-URL: Repository, https://github.com/devhelmhq/mcp-server
|
|
@@ -18,7 +18,7 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.13
|
|
19
19
|
Classifier: Topic :: Software Development :: Libraries
|
|
20
20
|
Requires-Python: >=3.11
|
|
21
|
-
Requires-Dist: devhelm>=0.
|
|
21
|
+
Requires-Dist: devhelm>=0.7.2
|
|
22
22
|
Requires-Dist: fastmcp>=2.0.0
|
|
23
23
|
Description-Content-Type: text/markdown
|
|
24
24
|
|
|
@@ -166,8 +166,52 @@
|
|
|
166
166
|
"Alert Channels"
|
|
167
167
|
],
|
|
168
168
|
"summary": "List active alert channels for the authenticated org",
|
|
169
|
+
"description": "Supports filtering by `type` (channel integration), `managedBy` (creating surface), and `search` (case-insensitive contains on name). Unrecognised query parameters are silently ignored — pin to the documented set above.",
|
|
169
170
|
"operationId": "list_14",
|
|
170
171
|
"parameters": [
|
|
172
|
+
{
|
|
173
|
+
"name": "type",
|
|
174
|
+
"in": "query",
|
|
175
|
+
"description": "Filter by channel integration type (e.g. SLACK, WEBHOOK, EMAIL)",
|
|
176
|
+
"required": false,
|
|
177
|
+
"schema": {
|
|
178
|
+
"type": "string",
|
|
179
|
+
"enum": [
|
|
180
|
+
"email",
|
|
181
|
+
"webhook",
|
|
182
|
+
"slack",
|
|
183
|
+
"pagerduty",
|
|
184
|
+
"opsgenie",
|
|
185
|
+
"teams",
|
|
186
|
+
"discord"
|
|
187
|
+
]
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"name": "managedBy",
|
|
192
|
+
"in": "query",
|
|
193
|
+
"description": "Filter by managed-by source (DASHBOARD, CLI, TERRAFORM, MCP, API)",
|
|
194
|
+
"required": false,
|
|
195
|
+
"schema": {
|
|
196
|
+
"type": "string",
|
|
197
|
+
"enum": [
|
|
198
|
+
"DASHBOARD",
|
|
199
|
+
"CLI",
|
|
200
|
+
"TERRAFORM",
|
|
201
|
+
"MCP",
|
|
202
|
+
"API"
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"name": "search",
|
|
208
|
+
"in": "query",
|
|
209
|
+
"description": "Case-insensitive contains-match on the channel name",
|
|
210
|
+
"required": false,
|
|
211
|
+
"schema": {
|
|
212
|
+
"type": "string"
|
|
213
|
+
}
|
|
214
|
+
},
|
|
171
215
|
{
|
|
172
216
|
"name": "pageable",
|
|
173
217
|
"in": "query",
|
|
@@ -6374,17 +6418,27 @@
|
|
|
6374
6418
|
"Monitors"
|
|
6375
6419
|
],
|
|
6376
6420
|
"summary": "List monitors for the authenticated org",
|
|
6421
|
+
"description": "Supports filtering by `enabled`, `status` (alias active|paused for enabled), `type`, `managedBy`, `tag` / `tags`, `search`, and `environmentId`. Unrecognised query parameters are silently ignored (Spring's default binding behaviour) — pin to the documented set above.",
|
|
6377
6422
|
"operationId": "list_8",
|
|
6378
6423
|
"parameters": [
|
|
6379
6424
|
{
|
|
6380
6425
|
"name": "enabled",
|
|
6381
6426
|
"in": "query",
|
|
6382
|
-
"description": "Filter by enabled state",
|
|
6427
|
+
"description": "Filter by enabled state (true/false)",
|
|
6383
6428
|
"required": false,
|
|
6384
6429
|
"schema": {
|
|
6385
6430
|
"type": "boolean"
|
|
6386
6431
|
}
|
|
6387
6432
|
},
|
|
6433
|
+
{
|
|
6434
|
+
"name": "status",
|
|
6435
|
+
"in": "query",
|
|
6436
|
+
"description": "Lifecycle status alias: 'active' (enabled=true) or 'paused' (enabled=false). Ignored when ?enabled is also supplied.",
|
|
6437
|
+
"required": false,
|
|
6438
|
+
"schema": {
|
|
6439
|
+
"type": "string"
|
|
6440
|
+
}
|
|
6441
|
+
},
|
|
6388
6442
|
{
|
|
6389
6443
|
"name": "type",
|
|
6390
6444
|
"in": "query",
|
|
@@ -6421,7 +6475,16 @@
|
|
|
6421
6475
|
{
|
|
6422
6476
|
"name": "tags",
|
|
6423
6477
|
"in": "query",
|
|
6424
|
-
"description": "Filter by tag names, comma-separated (e.g. prod,critical)",
|
|
6478
|
+
"description": "Filter by tag names, comma-separated (e.g. prod,critical); OR semantics",
|
|
6479
|
+
"required": false,
|
|
6480
|
+
"schema": {
|
|
6481
|
+
"type": "string"
|
|
6482
|
+
}
|
|
6483
|
+
},
|
|
6484
|
+
{
|
|
6485
|
+
"name": "tag",
|
|
6486
|
+
"in": "query",
|
|
6487
|
+
"description": "Filter by a single tag name (alias for ?tags=); merged with ?tags using OR semantics",
|
|
6425
6488
|
"required": false,
|
|
6426
6489
|
"schema": {
|
|
6427
6490
|
"type": "string"
|
|
@@ -21729,6 +21792,18 @@
|
|
|
21729
21792
|
"description": "SHA-256 hash of the channel config; use for change detection",
|
|
21730
21793
|
"nullable": true
|
|
21731
21794
|
},
|
|
21795
|
+
"managedBy": {
|
|
21796
|
+
"type": "string",
|
|
21797
|
+
"description": "Source that created/owns this channel: DASHBOARD, CLI, TERRAFORM, MCP, or API. Null on channels created before this attribution column existed.",
|
|
21798
|
+
"nullable": true,
|
|
21799
|
+
"enum": [
|
|
21800
|
+
"DASHBOARD",
|
|
21801
|
+
"CLI",
|
|
21802
|
+
"TERRAFORM",
|
|
21803
|
+
"MCP",
|
|
21804
|
+
"API"
|
|
21805
|
+
]
|
|
21806
|
+
},
|
|
21732
21807
|
"lastDeliveryAt": {
|
|
21733
21808
|
"type": "string",
|
|
21734
21809
|
"description": "Timestamp of the most recent delivery attempt",
|
|
@@ -22929,6 +23004,18 @@
|
|
|
22929
23004
|
"$ref": "#/components/schemas/WebhookChannelConfig"
|
|
22930
23005
|
}
|
|
22931
23006
|
]
|
|
23007
|
+
},
|
|
23008
|
+
"managedBy": {
|
|
23009
|
+
"type": "string",
|
|
23010
|
+
"description": "Source creating this channel: DASHBOARD, CLI, TERRAFORM, MCP, or API. Defaults to API when omitted.",
|
|
23011
|
+
"nullable": true,
|
|
23012
|
+
"enum": [
|
|
23013
|
+
"DASHBOARD",
|
|
23014
|
+
"CLI",
|
|
23015
|
+
"TERRAFORM",
|
|
23016
|
+
"MCP",
|
|
23017
|
+
"API"
|
|
23018
|
+
]
|
|
22932
23019
|
}
|
|
22933
23020
|
}
|
|
22934
23021
|
},
|
|
@@ -23189,12 +23276,14 @@
|
|
|
23189
23276
|
"maxLength": 100,
|
|
23190
23277
|
"minLength": 0,
|
|
23191
23278
|
"type": "string",
|
|
23192
|
-
"description": "iCal RRULE for recurring windows (
|
|
23279
|
+
"description": "Reserved: iCal RRULE for recurring windows (stored but not yet honored)",
|
|
23193
23280
|
"nullable": true
|
|
23194
23281
|
},
|
|
23195
23282
|
"reason": {
|
|
23283
|
+
"maxLength": 500,
|
|
23284
|
+
"minLength": 0,
|
|
23196
23285
|
"type": "string",
|
|
23197
|
-
"description": "Human-readable reason for the maintenance",
|
|
23286
|
+
"description": "Human-readable reason for the maintenance (max 500 chars)",
|
|
23198
23287
|
"nullable": true
|
|
23199
23288
|
},
|
|
23200
23289
|
"suppressAlerts": {
|
|
@@ -23241,7 +23330,6 @@
|
|
|
23241
23330
|
"CreateMonitorRequest": {
|
|
23242
23331
|
"required": [
|
|
23243
23332
|
"config",
|
|
23244
|
-
"managedBy",
|
|
23245
23333
|
"name",
|
|
23246
23334
|
"type"
|
|
23247
23335
|
],
|
|
@@ -23288,8 +23376,10 @@
|
|
|
23288
23376
|
]
|
|
23289
23377
|
},
|
|
23290
23378
|
"frequencySeconds": {
|
|
23379
|
+
"maximum": 86400,
|
|
23380
|
+
"minimum": 10,
|
|
23291
23381
|
"type": "integer",
|
|
23292
|
-
"description": "Check frequency in seconds (
|
|
23382
|
+
"description": "Check frequency in seconds (10–86400); null defaults to plan minimum (60s on most paid plans)",
|
|
23293
23383
|
"format": "int32",
|
|
23294
23384
|
"nullable": true
|
|
23295
23385
|
},
|
|
@@ -23300,16 +23390,17 @@
|
|
|
23300
23390
|
},
|
|
23301
23391
|
"regions": {
|
|
23302
23392
|
"type": "array",
|
|
23303
|
-
"description": "Probe regions to run checks from
|
|
23393
|
+
"description": "Probe regions to run checks from. Allowed values are deployment-dependent; production: us-east, us-west, eu-west, ap-south.",
|
|
23304
23394
|
"nullable": true,
|
|
23305
23395
|
"items": {
|
|
23306
23396
|
"type": "string",
|
|
23307
|
-
"description": "Probe regions to run checks from
|
|
23397
|
+
"description": "Probe regions to run checks from. Allowed values are deployment-dependent; production: us-east, us-west, eu-west, ap-south."
|
|
23308
23398
|
}
|
|
23309
23399
|
},
|
|
23310
23400
|
"managedBy": {
|
|
23311
23401
|
"type": "string",
|
|
23312
|
-
"description": "Source that created/owns this monitor: DASHBOARD, CLI, TERRAFORM, MCP, or API.
|
|
23402
|
+
"description": "Source that created/owns this monitor: DASHBOARD, CLI, TERRAFORM, MCP, or API. Defaults to API when omitted; set to your surface so audit logs, drift detection, and analytics attribute correctly.",
|
|
23403
|
+
"nullable": true,
|
|
23313
23404
|
"enum": [
|
|
23314
23405
|
"DASHBOARD",
|
|
23315
23406
|
"CLI",
|
|
@@ -23510,6 +23601,18 @@
|
|
|
23510
23601
|
"description": "Recovery cooldown in minutes after group incident resolves (0–60)",
|
|
23511
23602
|
"format": "int32",
|
|
23512
23603
|
"nullable": true
|
|
23604
|
+
},
|
|
23605
|
+
"managedBy": {
|
|
23606
|
+
"type": "string",
|
|
23607
|
+
"description": "Source creating this group: DASHBOARD, CLI, TERRAFORM, MCP, or API. Defaults to API when omitted.",
|
|
23608
|
+
"nullable": true,
|
|
23609
|
+
"enum": [
|
|
23610
|
+
"DASHBOARD",
|
|
23611
|
+
"CLI",
|
|
23612
|
+
"TERRAFORM",
|
|
23613
|
+
"MCP",
|
|
23614
|
+
"API"
|
|
23615
|
+
]
|
|
23513
23616
|
}
|
|
23514
23617
|
},
|
|
23515
23618
|
"description": "Request body for creating a resource group"
|
|
@@ -23811,6 +23914,18 @@
|
|
|
23811
23914
|
"REVIEW",
|
|
23812
23915
|
"AUTOMATIC"
|
|
23813
23916
|
]
|
|
23917
|
+
},
|
|
23918
|
+
"managedBy": {
|
|
23919
|
+
"type": "string",
|
|
23920
|
+
"description": "Source creating this page: DASHBOARD, CLI, TERRAFORM, MCP, or API. Defaults to API when omitted.",
|
|
23921
|
+
"nullable": true,
|
|
23922
|
+
"enum": [
|
|
23923
|
+
"DASHBOARD",
|
|
23924
|
+
"CLI",
|
|
23925
|
+
"TERRAFORM",
|
|
23926
|
+
"MCP",
|
|
23927
|
+
"API"
|
|
23928
|
+
]
|
|
23814
23929
|
}
|
|
23815
23930
|
}
|
|
23816
23931
|
},
|
|
@@ -26436,7 +26551,7 @@
|
|
|
26436
26551
|
},
|
|
26437
26552
|
"repeatRule": {
|
|
26438
26553
|
"type": "string",
|
|
26439
|
-
"description": "iCal RRULE for recurring windows
|
|
26554
|
+
"description": "Reserved: iCal RRULE for recurring windows (stored but not yet honored)",
|
|
26440
26555
|
"nullable": true
|
|
26441
26556
|
},
|
|
26442
26557
|
"reason": {
|
|
@@ -27271,6 +27386,18 @@
|
|
|
27271
27386
|
"description": "Alert channel IDs linked to this monitor; populated on single-monitor responses",
|
|
27272
27387
|
"format": "uuid"
|
|
27273
27388
|
}
|
|
27389
|
+
},
|
|
27390
|
+
"currentStatus": {
|
|
27391
|
+
"type": "string",
|
|
27392
|
+
"description": "Current operational state — UP, DOWN, DEGRADED, PAUSED, or UNKNOWN if no probe data yet",
|
|
27393
|
+
"nullable": true,
|
|
27394
|
+
"enum": [
|
|
27395
|
+
"up",
|
|
27396
|
+
"degraded",
|
|
27397
|
+
"down",
|
|
27398
|
+
"paused",
|
|
27399
|
+
"unknown"
|
|
27400
|
+
]
|
|
27274
27401
|
}
|
|
27275
27402
|
},
|
|
27276
27403
|
"description": "Full monitor representation"
|
|
@@ -28461,6 +28588,18 @@
|
|
|
28461
28588
|
"$ref": "#/components/schemas/ResourceGroupMemberDto"
|
|
28462
28589
|
}
|
|
28463
28590
|
},
|
|
28591
|
+
"managedBy": {
|
|
28592
|
+
"type": "string",
|
|
28593
|
+
"description": "Source that created/owns this group: DASHBOARD, CLI, TERRAFORM, MCP, or API. Null on groups created before this attribution column existed.",
|
|
28594
|
+
"nullable": true,
|
|
28595
|
+
"enum": [
|
|
28596
|
+
"DASHBOARD",
|
|
28597
|
+
"CLI",
|
|
28598
|
+
"TERRAFORM",
|
|
28599
|
+
"MCP",
|
|
28600
|
+
"API"
|
|
28601
|
+
]
|
|
28602
|
+
},
|
|
28464
28603
|
"createdAt": {
|
|
28465
28604
|
"type": "string",
|
|
28466
28605
|
"description": "Timestamp when the group was created",
|
|
@@ -28721,6 +28860,7 @@
|
|
|
28721
28860
|
"up",
|
|
28722
28861
|
"degraded",
|
|
28723
28862
|
"down",
|
|
28863
|
+
"paused",
|
|
28724
28864
|
"unknown"
|
|
28725
28865
|
]
|
|
28726
28866
|
},
|
|
@@ -31056,6 +31196,18 @@
|
|
|
31056
31196
|
"UNDER_MAINTENANCE"
|
|
31057
31197
|
]
|
|
31058
31198
|
},
|
|
31199
|
+
"managedBy": {
|
|
31200
|
+
"type": "string",
|
|
31201
|
+
"description": "Source that created/owns this status page: DASHBOARD, CLI, TERRAFORM, MCP, or API. Null on pages created before this attribution column existed.",
|
|
31202
|
+
"nullable": true,
|
|
31203
|
+
"enum": [
|
|
31204
|
+
"DASHBOARD",
|
|
31205
|
+
"CLI",
|
|
31206
|
+
"TERRAFORM",
|
|
31207
|
+
"MCP",
|
|
31208
|
+
"API"
|
|
31209
|
+
]
|
|
31210
|
+
},
|
|
31059
31211
|
"createdAt": {
|
|
31060
31212
|
"type": "string",
|
|
31061
31213
|
"format": "date-time"
|
|
@@ -32999,6 +33151,18 @@
|
|
|
32999
33151
|
"$ref": "#/components/schemas/WebhookChannelConfig"
|
|
33000
33152
|
}
|
|
33001
33153
|
]
|
|
33154
|
+
},
|
|
33155
|
+
"managedBy": {
|
|
33156
|
+
"type": "string",
|
|
33157
|
+
"description": "New attribution source: DASHBOARD, CLI, TERRAFORM, MCP, or API; null preserves current value.",
|
|
33158
|
+
"nullable": true,
|
|
33159
|
+
"enum": [
|
|
33160
|
+
"DASHBOARD",
|
|
33161
|
+
"CLI",
|
|
33162
|
+
"TERRAFORM",
|
|
33163
|
+
"MCP",
|
|
33164
|
+
"API"
|
|
33165
|
+
]
|
|
33002
33166
|
}
|
|
33003
33167
|
}
|
|
33004
33168
|
},
|
|
@@ -33239,7 +33403,7 @@
|
|
|
33239
33403
|
"properties": {
|
|
33240
33404
|
"monitorId": {
|
|
33241
33405
|
"type": "string",
|
|
33242
|
-
"description": "Monitor
|
|
33406
|
+
"description": "Monitor this window applies to; null switches the window to org-wide",
|
|
33243
33407
|
"format": "uuid",
|
|
33244
33408
|
"nullable": true
|
|
33245
33409
|
},
|
|
@@ -33257,17 +33421,19 @@
|
|
|
33257
33421
|
"maxLength": 100,
|
|
33258
33422
|
"minLength": 0,
|
|
33259
33423
|
"type": "string",
|
|
33260
|
-
"description": "
|
|
33424
|
+
"description": "Reserved: iCal RRULE for recurring windows (stored but not yet honored); null clears it",
|
|
33261
33425
|
"nullable": true
|
|
33262
33426
|
},
|
|
33263
33427
|
"reason": {
|
|
33428
|
+
"maxLength": 500,
|
|
33429
|
+
"minLength": 0,
|
|
33264
33430
|
"type": "string",
|
|
33265
|
-
"description": "Updated reason; null clears the existing reason",
|
|
33431
|
+
"description": "Updated reason (max 500 chars); null clears the existing reason",
|
|
33266
33432
|
"nullable": true
|
|
33267
33433
|
},
|
|
33268
33434
|
"suppressAlerts": {
|
|
33269
33435
|
"type": "boolean",
|
|
33270
|
-
"description": "Whether to suppress alerts; null
|
|
33436
|
+
"description": "Whether to suppress alerts during this window; null defaults to true",
|
|
33271
33437
|
"nullable": true
|
|
33272
33438
|
}
|
|
33273
33439
|
}
|
|
@@ -33330,8 +33496,10 @@
|
|
|
33330
33496
|
]
|
|
33331
33497
|
},
|
|
33332
33498
|
"frequencySeconds": {
|
|
33499
|
+
"maximum": 86400,
|
|
33500
|
+
"minimum": 10,
|
|
33333
33501
|
"type": "integer",
|
|
33334
|
-
"description": "New check frequency in seconds (
|
|
33502
|
+
"description": "New check frequency in seconds (10–86400); null preserves current",
|
|
33335
33503
|
"format": "int32",
|
|
33336
33504
|
"nullable": true
|
|
33337
33505
|
},
|
|
@@ -33342,11 +33510,11 @@
|
|
|
33342
33510
|
},
|
|
33343
33511
|
"regions": {
|
|
33344
33512
|
"type": "array",
|
|
33345
|
-
"description": "New probe regions; null preserves current",
|
|
33513
|
+
"description": "New probe regions; null preserves current. Allowed values are deployment-dependent.",
|
|
33346
33514
|
"nullable": true,
|
|
33347
33515
|
"items": {
|
|
33348
33516
|
"type": "string",
|
|
33349
|
-
"description": "New probe regions; null preserves current"
|
|
33517
|
+
"description": "New probe regions; null preserves current. Allowed values are deployment-dependent."
|
|
33350
33518
|
}
|
|
33351
33519
|
},
|
|
33352
33520
|
"managedBy": {
|
|
@@ -33605,6 +33773,18 @@
|
|
|
33605
33773
|
"description": "Recovery cooldown in minutes; null clears",
|
|
33606
33774
|
"format": "int32",
|
|
33607
33775
|
"nullable": true
|
|
33776
|
+
},
|
|
33777
|
+
"managedBy": {
|
|
33778
|
+
"type": "string",
|
|
33779
|
+
"description": "New attribution source: DASHBOARD, CLI, TERRAFORM, MCP, or API; null preserves current value.",
|
|
33780
|
+
"nullable": true,
|
|
33781
|
+
"enum": [
|
|
33782
|
+
"DASHBOARD",
|
|
33783
|
+
"CLI",
|
|
33784
|
+
"TERRAFORM",
|
|
33785
|
+
"MCP",
|
|
33786
|
+
"API"
|
|
33787
|
+
]
|
|
33608
33788
|
}
|
|
33609
33789
|
},
|
|
33610
33790
|
"description": "Request body for updating a resource group"
|
|
@@ -33809,6 +33989,18 @@
|
|
|
33809
33989
|
"REVIEW",
|
|
33810
33990
|
"AUTOMATIC"
|
|
33811
33991
|
]
|
|
33992
|
+
},
|
|
33993
|
+
"managedBy": {
|
|
33994
|
+
"type": "string",
|
|
33995
|
+
"description": "New attribution source: DASHBOARD, CLI, TERRAFORM, MCP, or API; null preserves current value.",
|
|
33996
|
+
"nullable": true,
|
|
33997
|
+
"enum": [
|
|
33998
|
+
"DASHBOARD",
|
|
33999
|
+
"CLI",
|
|
34000
|
+
"TERRAFORM",
|
|
34001
|
+
"MCP",
|
|
34002
|
+
"API"
|
|
34003
|
+
]
|
|
33812
34004
|
}
|
|
33813
34005
|
}
|
|
33814
34006
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "devhelm-mcp-server"
|
|
3
|
-
version = "0.8.
|
|
3
|
+
version = "0.8.2"
|
|
4
4
|
description = "DevHelm MCP server — AI agent access to monitors, incidents, alerting, and more"
|
|
5
5
|
authors = [{ name = "DevHelm", email = "hello@devhelm.io" }]
|
|
6
6
|
license = "MIT"
|
|
@@ -19,9 +19,11 @@ classifiers = [
|
|
|
19
19
|
]
|
|
20
20
|
|
|
21
21
|
dependencies = [
|
|
22
|
-
# Floor bumped to 0.
|
|
23
|
-
#
|
|
24
|
-
|
|
22
|
+
# Floor bumped to 0.7.2: required for `managedBy` field on resource DTOs
|
|
23
|
+
# and for the new monitor validation contract (frequencySeconds bounds,
|
|
24
|
+
# dynamic region whitelist). Older devhelm versions raise Pydantic
|
|
25
|
+
# `extra_forbidden` errors when the API returns `managedBy`.
|
|
26
|
+
"devhelm>=0.7.2",
|
|
25
27
|
"fastmcp>=2.0.0",
|
|
26
28
|
]
|
|
27
29
|
|
|
@@ -388,20 +388,20 @@ wheels = [
|
|
|
388
388
|
|
|
389
389
|
[[package]]
|
|
390
390
|
name = "devhelm"
|
|
391
|
-
version = "0.
|
|
391
|
+
version = "0.7.2"
|
|
392
392
|
source = { registry = "https://pypi.org/simple" }
|
|
393
393
|
dependencies = [
|
|
394
394
|
{ name = "httpx" },
|
|
395
395
|
{ name = "pydantic", extra = ["email"] },
|
|
396
396
|
]
|
|
397
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
397
|
+
sdist = { url = "https://files.pythonhosted.org/packages/90/5d/b853660ac8f5cfd3662f18b3608fb0c80ce8f7c246a0d66eae6806d0c212/devhelm-0.7.2.tar.gz", hash = "sha256:84e8218a42719799a2166290fcb84b7ed36c0386a41009c028a2c8abf2ff162c", size = 245192, upload-time = "2026-05-06T15:57:36.421Z" }
|
|
398
398
|
wheels = [
|
|
399
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
399
|
+
{ url = "https://files.pythonhosted.org/packages/2c/e6/74b538b202e4ff01293382af9b2951a1cc0ecdf9c5535b42f8ee919781bc/devhelm-0.7.2-py3-none-any.whl", hash = "sha256:63117a0f7722fa8aa6aa63395c4f08925299dfb9b1442bf62cd40a60f9188d94", size = 78306, upload-time = "2026-05-06T15:57:35.114Z" },
|
|
400
400
|
]
|
|
401
401
|
|
|
402
402
|
[[package]]
|
|
403
403
|
name = "devhelm-mcp-server"
|
|
404
|
-
version = "0.8.
|
|
404
|
+
version = "0.8.2"
|
|
405
405
|
source = { editable = "." }
|
|
406
406
|
dependencies = [
|
|
407
407
|
{ name = "devhelm" },
|
|
@@ -419,7 +419,7 @@ dev = [
|
|
|
419
419
|
|
|
420
420
|
[package.metadata]
|
|
421
421
|
requires-dist = [
|
|
422
|
-
{ name = "devhelm", specifier = ">=0.
|
|
422
|
+
{ name = "devhelm", specifier = ">=0.7.2" },
|
|
423
423
|
{ name = "fastmcp", specifier = ">=2.0.0" },
|
|
424
424
|
]
|
|
425
425
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/alert_channels.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/maintenance_windows.py
RENAMED
|
File without changes
|
|
File without changes
|
{devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/notification_policies.py
RENAMED
|
File without changes
|
{devhelm_mcp_server-0.8.0 → devhelm_mcp_server-0.8.2}/src/devhelm_mcp/tools/resource_groups.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|