@honua/mcp-server 0.1.14 → 0.1.15

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.
Files changed (79) hide show
  1. package/README.md +12 -3
  2. package/certification/geospatial-mcp-schemas/PROVENANCE.md +14 -8
  3. package/certification/geospatial-mcp-schemas/common/controls.schema.json +81 -0
  4. package/certification/geospatial-mcp-schemas/common/exploration.schema.json +165 -0
  5. package/certification/geospatial-mcp-schemas/common/interactions.schema.json +263 -0
  6. package/certification/geospatial-mcp-schemas/index.json +155 -4
  7. package/certification/geospatial-mcp-schemas/resources/app-package.schema.json +17 -1
  8. package/certification/geospatial-mcp-schemas/resources/map-package.schema.json +17 -1
  9. package/certification/geospatial-mcp-schemas/resources/ops-findings.schema.json +61 -0
  10. package/certification/geospatial-mcp-schemas/resources/ops-health.schema.json +138 -0
  11. package/certification/geospatial-mcp-schemas/tools/add_control.schema.json +107 -0
  12. package/certification/geospatial-mcp-schemas/tools/alert_events.result.schema.json +49 -0
  13. package/certification/geospatial-mcp-schemas/tools/alert_events.schema.json +49 -0
  14. package/certification/geospatial-mcp-schemas/tools/bind_component_context.schema.json +60 -0
  15. package/certification/geospatial-mcp-schemas/tools/bind_interaction.schema.json +97 -0
  16. package/certification/geospatial-mcp-schemas/tools/create_exploration_context.schema.json +35 -0
  17. package/certification/geospatial-mcp-schemas/tools/deploy_operations.result.schema.json +109 -0
  18. package/certification/geospatial-mcp-schemas/tools/deploy_operations.schema.json +49 -0
  19. package/certification/geospatial-mcp-schemas/tools/operate_events.result.schema.json +67 -0
  20. package/certification/geospatial-mcp-schemas/tools/operate_events.schema.json +46 -0
  21. package/certification/geospatial-mcp-schemas/tools/ops_findings.schema.json +25 -0
  22. package/certification/geospatial-mcp-schemas/tools/ops_health.schema.json +10 -0
  23. package/certification/geospatial-mcp-schemas/tools/platform_release_status.result.schema.json +53 -0
  24. package/certification/geospatial-mcp-schemas/tools/platform_release_status.schema.json +10 -0
  25. package/certification/geospatial-mcp-schemas/tools/propose_operation.schema.json +7 -2
  26. package/certification/geospatial-mcp-schemas/tools/propose_rollback.schema.json +29 -0
  27. package/certification/geospatial-mcp-schemas/tools/remove_control.schema.json +114 -0
  28. package/certification/geospatial-mcp-schemas/tools/remove_exploration_context.schema.json +42 -0
  29. package/certification/geospatial-mcp-schemas/tools/remove_interaction.schema.json +99 -0
  30. package/dist/src/certification/certifier.d.ts +17 -2
  31. package/dist/src/certification/certifier.d.ts.map +1 -1
  32. package/dist/src/certification/certifier.js +69 -11
  33. package/dist/src/certification/cli.js +4 -1
  34. package/dist/src/certification/lifecycle.d.ts +2 -0
  35. package/dist/src/certification/lifecycle.d.ts.map +1 -1
  36. package/dist/src/certification/lifecycle.js +3 -0
  37. package/dist/src/certification/operator-catalog.d.ts.map +1 -1
  38. package/dist/src/certification/operator-catalog.js +0 -12
  39. package/dist/src/certification/report.d.ts.map +1 -1
  40. package/dist/src/certification/report.js +2 -1
  41. package/dist/src/certification/roster.d.ts +99 -0
  42. package/dist/src/certification/roster.d.ts.map +1 -0
  43. package/dist/src/certification/roster.js +233 -0
  44. package/dist/src/certification/round-trip-target.d.ts +45 -0
  45. package/dist/src/certification/round-trip-target.d.ts.map +1 -0
  46. package/dist/src/certification/round-trip-target.js +122 -0
  47. package/dist/src/certification/run.d.ts.map +1 -1
  48. package/dist/src/certification/run.js +7 -0
  49. package/dist/src/eval/northstar-corpus.d.ts.map +1 -1
  50. package/dist/src/eval/northstar-corpus.js +12 -10
  51. package/dist/src/eval/operator-corpus.d.ts.map +1 -1
  52. package/dist/src/eval/operator-corpus.js +11 -6
  53. package/dist/src/eval/proposal-tools.d.ts +14 -0
  54. package/dist/src/eval/proposal-tools.d.ts.map +1 -0
  55. package/dist/src/eval/proposal-tools.js +20 -0
  56. package/dist/src/index.d.ts.map +1 -1
  57. package/dist/src/index.js +12 -3
  58. package/dist/src/neutral/query.js +1 -1
  59. package/dist/src/release/zero-to-map-cli.d.ts.map +1 -1
  60. package/dist/src/release/zero-to-map-cli.js +8 -2
  61. package/dist/src/release/zero-to-map-provision.d.ts +6 -0
  62. package/dist/src/release/zero-to-map-provision.d.ts.map +1 -1
  63. package/dist/src/release/zero-to-map-provision.js +6 -0
  64. package/dist/src/tools/apply-style-preset.d.ts +1 -1
  65. package/dist/src/tools/apply-style-preset.d.ts.map +1 -1
  66. package/dist/src/tools/apply-style-preset.js +4 -2
  67. package/dist/src/tools/control-plane-command.d.ts +1 -1
  68. package/dist/src/tools/control-plane-command.d.ts.map +1 -1
  69. package/dist/src/tools/control-plane-command.js +3 -2
  70. package/dist/src/tools/docs-search.d.ts +2 -2
  71. package/dist/src/tools/docs-search.d.ts.map +1 -1
  72. package/dist/src/tools/docs-search.js +15 -4
  73. package/dist/src/tools/query-features.d.ts +10 -1
  74. package/dist/src/tools/query-features.d.ts.map +1 -1
  75. package/dist/src/tools/query-features.js +16 -4
  76. package/package.json +2 -2
  77. package/release/zero-to-map/configs/claude-code.mcp.json +1 -1
  78. package/release/zero-to-map/configs/claude-desktop.json +1 -1
  79. package/release/zero-to-map/configs/cursor.json +1 -1
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/alert_events.schema.json",
4
+ "title": "alert_events inputSchema",
5
+ "description": "Argument shape for the platform-operations alert-events query tool (advertised name honua_alert_events). Read-only, paged (cursor-based): queries the alert-event history surfaced through the honua-server Console Operate alert API. Alert events come from two sources — spatial/threshold GIS alert rules (gis) and operations notifications not linked to an alert rule (ops). Filter by source, severity, rule, operator lifecycle state, and time range. The response is a page of alert events; see alert_events.result.schema.json. x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {
9
+ "source": {
10
+ "type": "string",
11
+ "description": "Filter by alert source: 'gis' for spatial/threshold alert-rule events, 'ops' for operations notifications not linked to an alert rule.",
12
+ "enum": ["gis", "ops"]
13
+ },
14
+ "severity": {
15
+ "type": "string",
16
+ "description": "Filter by normalized alert severity (lower-case).",
17
+ "enum": ["info", "warning", "critical"]
18
+ },
19
+ "rule": {
20
+ "type": "string",
21
+ "description": "Filter by source alert-rule identifier or name."
22
+ },
23
+ "lifecycleState": {
24
+ "type": "string",
25
+ "description": "Filter by operator lifecycle status.",
26
+ "enum": ["open", "acknowledged", "suppressed", "resolved"]
27
+ },
28
+ "from": {
29
+ "type": "string",
30
+ "format": "date-time",
31
+ "description": "Inclusive lower bound (ISO-8601) on the event observation time."
32
+ },
33
+ "to": {
34
+ "type": "string",
35
+ "format": "date-time",
36
+ "description": "Exclusive upper bound (ISO-8601) on the event observation time."
37
+ },
38
+ "pageSize": {
39
+ "type": "integer",
40
+ "minimum": 1,
41
+ "description": "Maximum number of events to return in one page. The surface applies a server-defined default and maximum; an over-maximum request is clamped, not rejected."
42
+ },
43
+ "cursor": {
44
+ "type": "string",
45
+ "description": "Opaque continuation token from a prior page's nextCursor; absent on the first page."
46
+ }
47
+ },
48
+ "additionalProperties": false
49
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/bind_component_context.schema.json",
4
+ "title": "bind_component_context inputSchema",
5
+ "description": "Argument shape for bind_component_context (composition profile, ADR-0032). Sets or clears one component's exploration-context membership, addressed by the ADR-0030 `ref` grammar (map, layer:{id}, widget:{id}, control:{id}). Because cross-filtering is identity of explorationContextId rather than an event→action edge, linking N components into one shared-state workspace is N calls to this tool, not one call per component pair. Omitting explorationContextId clears the binding and leaves the component independent. Target addressing matches the other composition tools: a composition document (mapPackageId or appPackageId) at the standard level, with the reference implementation's draft-lifecycle spelling (draftId + generation) admitted as x-honua-reference-shape. Validation gate: ref must resolve within the document, explorationContextId must resolve against the document's explorationContexts block, and role must be a member of the closed role vocabulary. See docs/adr/0032-shared-exploration-contexts.md and common/exploration.schema.json. Supplying explorationContextId requires role; omitting both clears the binding.",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": [
9
+ "ref"
10
+ ],
11
+ "properties": {
12
+ "mapPackageId": {
13
+ "type": "string",
14
+ "minLength": 1,
15
+ "description": "Target MapPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
16
+ },
17
+ "appPackageId": {
18
+ "type": "string",
19
+ "minLength": 1,
20
+ "description": "Target AppPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
21
+ },
22
+ "draftId": {
23
+ "type": "string",
24
+ "minLength": 1,
25
+ "description": "x-honua-reference-shape: reference-implementation draft-lifecycle target. Requires generation."
26
+ },
27
+ "generation": {
28
+ "type": "integer",
29
+ "minimum": 0,
30
+ "description": "x-honua-reference-shape: optimistic-concurrency generation of the draft being mutated; the call fails on generation conflict."
31
+ },
32
+ "ref": {
33
+ "$ref": "../common/interactions.schema.json#/$defs/componentRef",
34
+ "description": "The component whose binding is being set or cleared, in the ADR-0030 reference grammar."
35
+ },
36
+ "explorationContextId": {
37
+ "$ref": "../common/exploration.schema.json#/$defs/componentBinding/properties/explorationContextId",
38
+ "description": "Context to bind the component to. Omit to clear the component's binding; a component belongs to at most one context, so binding replaces any previous membership."
39
+ },
40
+ "role": {
41
+ "$ref": "../common/exploration.schema.json#/$defs/componentBinding/properties/role",
42
+ "description": "Role the component plays in the context, which the preset's propagation policy is keyed on. Meaningful only when explorationContextId is present; implementations SHOULD reject a role given without a context rather than storing an inert value."
43
+ }
44
+ },
45
+ "allOf": [
46
+ {
47
+ "if": {
48
+ "required": [
49
+ "explorationContextId"
50
+ ]
51
+ },
52
+ "then": {
53
+ "required": [
54
+ "role"
55
+ ]
56
+ },
57
+ "description": "A component that joins a context must declare its role. The mapDriven, gridDriven, and chartDriven presets key propagation on role, and no inference or default is specified — without it two conforming runtimes could disagree on whether the component contributes state."
58
+ }
59
+ ]
60
+ }
@@ -0,0 +1,97 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/bind_interaction.schema.json",
4
+ "title": "bind_interaction inputSchema",
5
+ "description": "Argument shape for bind_interaction (composition profile, ADR-0030). Adds or replaces (by interaction id) one declarative event→action binding in a composition document. The standard-level target is a composition document (mapPackageId or appPackageId). The reference implementation authors compositions through a draft lifecycle; its optimistic-concurrency draft spelling (draftId + generation) is admitted as x-honua-reference-shape, consistent with ADR-0029's admission of reference spellings. Validation gate: the interaction's on.ref and do.ref must resolve to components declared in the target document, and the per-(on.ref, on.event) fan-out cap applies (recommended 8). See docs/adr/0030-declarative-interactions-and-layout.md and common/interactions.schema.json. Exactly one target must be supplied: mapPackageId, appPackageId, or the x-honua-reference-shape draftId (which requires generation). The oneOf below enforces that; without it a call with no target, with both package ids, or with draftId and no generation validated against a contract no server can route.",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": [
9
+ "interaction"
10
+ ],
11
+ "properties": {
12
+ "mapPackageId": {
13
+ "type": "string",
14
+ "minLength": 1,
15
+ "description": "Target MapPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
16
+ },
17
+ "appPackageId": {
18
+ "type": "string",
19
+ "minLength": 1,
20
+ "description": "Target AppPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
21
+ },
22
+ "draftId": {
23
+ "type": "string",
24
+ "minLength": 1,
25
+ "description": "x-honua-reference-shape: reference-implementation draft-lifecycle target. Requires generation."
26
+ },
27
+ "generation": {
28
+ "type": "integer",
29
+ "minimum": 0,
30
+ "description": "x-honua-reference-shape: optimistic-concurrency generation of the draft being mutated; the call fails on generation conflict."
31
+ },
32
+ "interaction": {
33
+ "$ref": "../common/interactions.schema.json#/$defs/interaction",
34
+ "description": "The binding to add or replace. Replacement matches on interaction.id."
35
+ }
36
+ },
37
+ "oneOf": [
38
+ {
39
+ "required": [
40
+ "mapPackageId"
41
+ ],
42
+ "not": {
43
+ "anyOf": [
44
+ {
45
+ "required": [
46
+ "appPackageId"
47
+ ]
48
+ },
49
+ {
50
+ "required": [
51
+ "draftId"
52
+ ]
53
+ }
54
+ ]
55
+ }
56
+ },
57
+ {
58
+ "required": [
59
+ "appPackageId"
60
+ ],
61
+ "not": {
62
+ "anyOf": [
63
+ {
64
+ "required": [
65
+ "mapPackageId"
66
+ ]
67
+ },
68
+ {
69
+ "required": [
70
+ "draftId"
71
+ ]
72
+ }
73
+ ]
74
+ }
75
+ },
76
+ {
77
+ "required": [
78
+ "draftId",
79
+ "generation"
80
+ ],
81
+ "not": {
82
+ "anyOf": [
83
+ {
84
+ "required": [
85
+ "mapPackageId"
86
+ ]
87
+ },
88
+ {
89
+ "required": [
90
+ "appPackageId"
91
+ ]
92
+ }
93
+ ]
94
+ }
95
+ }
96
+ ]
97
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/create_exploration_context.schema.json",
4
+ "title": "create_exploration_context inputSchema",
5
+ "description": "Argument shape for create_exploration_context (composition profile, ADR-0032). Adds or replaces (by context id) one exploration context in a composition document's `explorationContexts` collection. An exploration context is a named unit of shared interaction state that components join by id; changing a context's preset is expressed as replacing it by id, so there is no separate preset tool. The standard-level target is a composition document (mapPackageId or appPackageId); the reference implementation's optimistic-concurrency draft spelling (draftId + generation) is admitted as x-honua-reference-shape, consistent with ADR-0030's bind_interaction and ADR-0031's add_control. Validation gate: context.id must be unique within the document, every context.sourceIds entry must resolve to a source declared in the target document, and context.preset must be a member of the closed preset vocabulary. See docs/adr/0032-shared-exploration-contexts.md and common/exploration.schema.json.",
6
+ "type": "object",
7
+ "additionalProperties": true,
8
+ "required": ["explorationContext"],
9
+ "properties": {
10
+ "mapPackageId": {
11
+ "type": "string",
12
+ "minLength": 1,
13
+ "description": "Target MapPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
14
+ },
15
+ "appPackageId": {
16
+ "type": "string",
17
+ "minLength": 1,
18
+ "description": "Target AppPackage composition document. Exactly one of mapPackageId / appPackageId / draftId identifies the target."
19
+ },
20
+ "draftId": {
21
+ "type": "string",
22
+ "minLength": 1,
23
+ "description": "x-honua-reference-shape: reference-implementation draft-lifecycle target. Requires generation."
24
+ },
25
+ "generation": {
26
+ "type": "integer",
27
+ "minimum": 0,
28
+ "description": "x-honua-reference-shape: optimistic-concurrency generation of the draft being mutated; the call fails on generation conflict."
29
+ },
30
+ "explorationContext": {
31
+ "$ref": "../common/exploration.schema.json#/$defs/explorationContext",
32
+ "description": "The exploration context to add or replace. Replacement matches on explorationContext.id and preserves existing component bindings to that id, so re-authoring a context's preset does not unbind its components."
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,109 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/deploy_operations.result.schema.json",
4
+ "title": "deploy_operations result payload",
5
+ "description": "Response payload for the deploy_operations tool: the paged deploy-operations envelope copied VERBATIM from the wire contract pinned in honua-server#2562 / PR #2577 (GET /api/v1/admin/deploy/operations). camelCase; null-valued properties are OMITTED (DefaultIgnoreCondition = WhenWritingNull), so a missing key means null. items is DeployOperationResponse[], newest-first by createdAt. warnings / blockingReasons / target.parameters / metadataRelease.jobIds|evidenceRefs|blockers|warnings are always present (possibly empty). x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "required": ["items", "page", "pageSize", "totalCount", "hasMore"],
10
+ "properties": {
11
+ "items": {
12
+ "type": "array",
13
+ "description": "DeployOperationResponse[], newest-first by createdAt.",
14
+ "items": { "$ref": "#/$defs/deployOperation" }
15
+ },
16
+ "page": { "type": "integer", "description": "Effective 1-based page." },
17
+ "pageSize": { "type": "integer", "description": "Effective (clamped) page size." },
18
+ "totalCount": { "type": "integer", "description": "Match count within the materialized window." },
19
+ "hasMore": { "type": "boolean", "description": "At least one more page exists." }
20
+ },
21
+ "$defs": {
22
+ "deployOperation": {
23
+ "type": "object",
24
+ "additionalProperties": false,
25
+ "required": ["operationId", "kind", "status", "priority", "warnings", "blockingReasons", "createdAt", "updatedAt"],
26
+ "properties": {
27
+ "operationId": { "type": "string" },
28
+ "kind": { "type": "string", "description": "WorkflowOperationKind enum name, e.g. \"Deploy\"." },
29
+ "status": { "type": "string", "description": "WorkflowOperationStatus enum name, e.g. \"Submitted\"." },
30
+ "priority": { "type": "string", "description": "Priority enum name, e.g. \"Normal\"." },
31
+ "target": { "$ref": "#/$defs/target" },
32
+ "metadataRelease": { "$ref": "#/$defs/metadataRelease" },
33
+ "providerOperationId": { "type": "string" },
34
+ "currentPhase": { "type": "string" },
35
+ "observedState": { "type": "string" },
36
+ "errorMessage": { "type": "string" },
37
+ "warnings": { "type": "array", "items": { "type": "string" } },
38
+ "blockingReasons": { "type": "array", "items": { "type": "string" } },
39
+ "requestedBy": { "type": "string" },
40
+ "reason": { "type": "string" },
41
+ "correlationId": { "type": "string" },
42
+ "createdAt": { "type": "string", "format": "date-time" },
43
+ "updatedAt": { "type": "string", "format": "date-time" },
44
+ "completedAt": { "type": "string", "format": "date-time" }
45
+ }
46
+ },
47
+ "target": {
48
+ "type": "object",
49
+ "additionalProperties": false,
50
+ "required": ["targetId", "targetKind", "backend", "environment", "targetName", "desiredRevision", "parameters"],
51
+ "properties": {
52
+ "targetId": { "type": "string" },
53
+ "targetKind": { "type": "string", "description": "Enum name." },
54
+ "backend": { "type": "string" },
55
+ "environment": { "type": "string" },
56
+ "targetName": { "type": "string" },
57
+ "artifactReference": { "type": "string" },
58
+ "runtimeProfile": { "type": "string" },
59
+ "currentRevision": { "type": "string" },
60
+ "desiredRevision": { "type": "string" },
61
+ "parameters": { "type": "object", "additionalProperties": { "type": "string" } }
62
+ }
63
+ },
64
+ "metadataRelease": {
65
+ "type": "object",
66
+ "additionalProperties": false,
67
+ "required": ["packageId", "desiredRevision", "targetEnvironment", "jobIds", "evidenceRefs", "currentStage", "blockers", "warnings"],
68
+ "properties": {
69
+ "packageId": { "type": "string" },
70
+ "gitOperationId": { "type": "string" },
71
+ "prUrl": { "type": "string" },
72
+ "commitSha": { "type": "string" },
73
+ "desiredRevision": { "type": "string" },
74
+ "targetEnvironment": { "type": "string" },
75
+ "deployOperationId": { "type": "string" },
76
+ "jobIds": { "type": "array", "items": { "type": "string" } },
77
+ "evidenceRefs": { "type": "array", "items": { "$ref": "#/$defs/evidenceRef" } },
78
+ "currentStage": { "type": "string", "description": "Enum name." },
79
+ "rollbackPlan": { "$ref": "#/$defs/rollbackPlan" },
80
+ "blockers": { "type": "array", "items": { "type": "string" } },
81
+ "warnings": { "type": "array", "items": { "type": "string" } }
82
+ }
83
+ },
84
+ "evidenceRef": {
85
+ "type": "object",
86
+ "additionalProperties": false,
87
+ "required": ["kind", "refId", "at"],
88
+ "properties": {
89
+ "kind": { "type": "string" },
90
+ "refId": { "type": "string" },
91
+ "uri": { "type": "string" },
92
+ "at": { "type": "string", "format": "date-time" }
93
+ }
94
+ },
95
+ "rollbackPlan": {
96
+ "type": "object",
97
+ "additionalProperties": false,
98
+ "required": ["class", "isDataAffecting", "requiresExplicitApproval", "steps", "evidenceRequired"],
99
+ "properties": {
100
+ "class": { "type": "string", "description": "Enum name." },
101
+ "isDataAffecting": { "type": "boolean" },
102
+ "requiresExplicitApproval": { "type": "boolean" },
103
+ "steps": { "type": "array", "items": { "type": "string" } },
104
+ "evidenceRequired": { "type": "array", "items": { "type": "string" } },
105
+ "approvalPolicyRef": { "type": "string" }
106
+ }
107
+ }
108
+ }
109
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/deploy_operations.schema.json",
4
+ "title": "deploy_operations inputSchema",
5
+ "description": "Argument shape for the deploy-operations tool (advertised name honua_deploy_operations). Read-only over the platform_release / server_upgrade operation workflow (mirror of GET /api/v1/admin/deploy/operations, whose wire contract is pinned by honua-server#2562 / PR #2577). Two modes: omit operationId to LIST deploy operations (newest-first by createdAt, paged) filtered by status and kind; provide operationId to GET a single operation. Uses platform_release / server_upgrade vocabulary — this is the platform-upgrade operation surface, distinct from the hosted-content honua://deployments/{deployment_id} resource. The response is a paged envelope of DeployOperationResponse items copied verbatim from the pinned contract; see deploy_operations.result.schema.json. x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {
9
+ "operationId": {
10
+ "type": "string",
11
+ "minLength": 1,
12
+ "description": "Deploy-operation identifier to fetch a single operation (get mode). When omitted, the tool lists deploy operations (list mode)."
13
+ },
14
+ "status": {
15
+ "type": "string",
16
+ "description": "List-mode filter: WorkflowOperationStatus name (case-insensitive).",
17
+ "enum": [
18
+ "Planned",
19
+ "AwaitingApproval",
20
+ "Submitted",
21
+ "Reconciling",
22
+ "Succeeded",
23
+ "Failed",
24
+ "RollbackRequested",
25
+ "RolledBack",
26
+ "ManualInterventionRequired"
27
+ ]
28
+ },
29
+ "kind": {
30
+ "type": "string",
31
+ "description": "List-mode filter: WorkflowOperationKind name (case-insensitive).",
32
+ "enum": ["Deploy", "Rollback", "Migration", "MetadataRelease", "CoordinatedRelease"]
33
+ },
34
+ "page": {
35
+ "type": "integer",
36
+ "minimum": 1,
37
+ "default": 1,
38
+ "description": "List-mode 1-based page number (default 1, must be >= 1)."
39
+ },
40
+ "pageSize": {
41
+ "type": "integer",
42
+ "minimum": 1,
43
+ "maximum": 200,
44
+ "default": 50,
45
+ "description": "List-mode page size (default 50, clamped server-side to 1..200)."
46
+ }
47
+ },
48
+ "additionalProperties": false
49
+ }
@@ -0,0 +1,67 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/operate_events.result.schema.json",
4
+ "title": "operate_events result payload",
5
+ "description": "Response payload for the operate_events tool: a page of normalized events off the unified Operate timeline, mirroring the honua-server wire shape (OperateEventPageResponse / OperateEventResponse). items are newest-first; partialResult is true when at least one source produced a partial result, with per-source diagnostics in sourceErrors (keyed by lower-case kind). x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "additionalProperties": true,
9
+ "required": ["items"],
10
+ "properties": {
11
+ "items": {
12
+ "type": "array",
13
+ "description": "Normalized events in this page (newest first).",
14
+ "items": { "$ref": "#/$defs/operateEvent" }
15
+ },
16
+ "partialResult": {
17
+ "type": "boolean",
18
+ "description": "True when at least one source produced a partial result."
19
+ },
20
+ "sourceErrors": {
21
+ "type": "object",
22
+ "description": "Per-source diagnostic messages keyed by lower-case kind.",
23
+ "additionalProperties": { "type": "string" }
24
+ }
25
+ },
26
+ "$defs": {
27
+ "operateEvent": {
28
+ "type": "object",
29
+ "additionalProperties": true,
30
+ "required": ["eventId", "kind", "severity", "occurredAt", "title"],
31
+ "properties": {
32
+ "eventId": { "type": "string", "description": "Source-prefixed event id, e.g. \"alert:42\"." },
33
+ "kind": { "type": "string", "enum": ["alert", "audit", "job", "release", "syncConflict", "temporalOp", "log"] },
34
+ "severity": { "type": "string", "enum": ["info", "notice", "warning", "error", "critical"] },
35
+ "occurredAt": { "type": "string", "format": "date-time" },
36
+ "title": { "type": "string" },
37
+ "summary": { "type": "string" },
38
+ "serviceId": { "type": "string" },
39
+ "layerId": { "type": "integer" },
40
+ "objectId": { "type": "integer" },
41
+ "actor": { "type": "string" },
42
+ "correlationId": { "type": "string" },
43
+ "traceId": { "type": "string" },
44
+ "requestId": { "type": "string" },
45
+ "operationId": { "type": "string" },
46
+ "releaseId": { "type": "string", "description": "Release id when tied to a platform_release / deploy release." },
47
+ "replicaId": { "type": "string" },
48
+ "changeSetId": { "type": "string" },
49
+ "resourceRef": { "type": "string" },
50
+ "providerLinks": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object",
54
+ "additionalProperties": true,
55
+ "required": ["provider", "label", "url"],
56
+ "properties": {
57
+ "provider": { "type": "string" },
58
+ "label": { "type": "string" },
59
+ "url": { "type": "string" }
60
+ }
61
+ }
62
+ },
63
+ "detailsJson": { "type": "string", "description": "Source-specific structured payload as JSON text." }
64
+ }
65
+ }
66
+ }
67
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/operate_events.schema.json",
4
+ "title": "operate_events inputSchema",
5
+ "description": "Argument shape for the platform-operations fused-timeline tool (advertised name honua_operate_events). Read-only, paged: queries the unified Operate event timeline (mirror of GET /api/v1/admin/observability/events), which fuses alert, audit, job, release, sync-conflict, temporal, and log events into one normalized stream. Filter by event kind, correlation id, operation id, release id, and time range to trace a platform_release / server_upgrade or a long-running operation across sources. The response is a page of normalized events; see operate_events.result.schema.json. x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {
9
+ "kind": {
10
+ "type": "array",
11
+ "description": "Filter to one or more event categories (camelCase wire names).",
12
+ "items": {
13
+ "type": "string",
14
+ "enum": ["alert", "audit", "job", "release", "syncConflict", "temporalOp", "log"]
15
+ }
16
+ },
17
+ "correlationId": {
18
+ "type": "string",
19
+ "description": "Filter to events carrying this cross-cutting correlation id (typically the request X-Correlation-ID)."
20
+ },
21
+ "operationId": {
22
+ "type": "string",
23
+ "description": "Filter to events tied to this operation/job id."
24
+ },
25
+ "releaseId": {
26
+ "type": "string",
27
+ "description": "Filter to events tied to this platform_release / deploy release id (a Deploy operation's desiredRevision, or a metadata release's packageId)."
28
+ },
29
+ "from": {
30
+ "type": "string",
31
+ "format": "date-time",
32
+ "description": "Inclusive lower bound (ISO-8601) on the event occurrence time."
33
+ },
34
+ "to": {
35
+ "type": "string",
36
+ "format": "date-time",
37
+ "description": "Exclusive upper bound (ISO-8601) on the event occurrence time."
38
+ },
39
+ "pageSize": {
40
+ "type": "integer",
41
+ "minimum": 1,
42
+ "description": "Maximum number of events to return in one page. The surface applies a server-defined default and maximum; an over-maximum request is clamped, not rejected."
43
+ }
44
+ },
45
+ "additionalProperties": false
46
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/ops_findings.schema.json",
4
+ "title": "ops_findings inputSchema",
5
+ "description": "Argument shape for the platform-operations findings tool (advertised name honua_ops_findings). Read-only over the deterministic ops findings surface (mirror of GET /api/v1/admin/observability/findings). Two modes: omit findingId to LIST the active findings (server-ordered by descending severity), optionally narrowed by severity and rule; provide findingId to GET a single finding by its deterministic identifier. Each finding carries a recommendedAction {kind, summary, reason} and evidence references; the action is proposed (never executed) by finding id through the operation gateway, consistent with the honua-server ADR-0028 no-direct-AI-mutation posture. The response payload is the honua://ops/findings resource projection (see resources/ops-findings.schema.json). x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {
9
+ "findingId": {
10
+ "type": "string",
11
+ "minLength": 1,
12
+ "description": "Deterministic finding identifier to fetch a single finding (get mode). When omitted, the tool lists active findings (list mode)."
13
+ },
14
+ "severity": {
15
+ "type": "string",
16
+ "description": "Optional list-mode filter: return only findings at this severity.",
17
+ "enum": ["Info", "Warning", "Critical"]
18
+ },
19
+ "rule": {
20
+ "type": "string",
21
+ "description": "Optional list-mode filter: return only findings produced by this kebab-case rule identifier."
22
+ }
23
+ },
24
+ "additionalProperties": false
25
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/ops_health.schema.json",
4
+ "title": "ops_health inputSchema",
5
+ "description": "Argument shape for the platform-operations health tool (advertised name honua_ops_health). Read-only: returns a single consolidated operational-health snapshot mirroring the honua-server admin endpoint GET /api/v1/admin/observability/ops-health (health-check roll-up, serving latency, geoprocessing queue depth, alert-dispatch backlog, coordinated-deploy readiness + platform-release skew, database/cache utilization). Takes no arguments. The response payload is the honua://ops/health resource projection (see resources/ops-health.schema.json). x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {},
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,53 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/platform_release_status.result.schema.json",
4
+ "title": "platform_release_status result payload",
5
+ "description": "Response payload for the platform_release_status tool: the declared platform_release / server_upgrade co-versioning + skew snapshot, mirroring the honua-server platformRelease projection (DeployPreflightPlatformRelease). Reports the declared release version, whether all planes are co-versioned, the per-plane serving/execution projections, and the identifiers of planes skewed from the declared release. x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "additionalProperties": true,
9
+ "required": ["releaseDeclared", "isCoVersioned", "serving", "execution", "skewedIds"],
10
+ "properties": {
11
+ "releaseVersion": {
12
+ "type": "string",
13
+ "description": "Declared platform release version, or absent/null when no release is configured."
14
+ },
15
+ "releaseDeclared": {
16
+ "type": "boolean",
17
+ "description": "Whether a platform release is declared."
18
+ },
19
+ "isCoVersioned": {
20
+ "type": "boolean",
21
+ "description": "Whether all planes are co-versioned with the declared release."
22
+ },
23
+ "serving": {
24
+ "type": "array",
25
+ "description": "Per-plane serving projections.",
26
+ "items": { "$ref": "#/$defs/plane" }
27
+ },
28
+ "execution": {
29
+ "type": "array",
30
+ "description": "Per-plane execution projections.",
31
+ "items": { "$ref": "#/$defs/plane" }
32
+ },
33
+ "skewedIds": {
34
+ "type": "array",
35
+ "description": "Identifiers of planes skewed from the declared release.",
36
+ "items": { "type": "string" }
37
+ }
38
+ },
39
+ "$defs": {
40
+ "plane": {
41
+ "type": "object",
42
+ "additionalProperties": true,
43
+ "required": ["id", "projectedFromRelease", "skewed"],
44
+ "properties": {
45
+ "id": { "type": "string" },
46
+ "runtimeProfile": { "type": "string" },
47
+ "effectiveArtifactReference": { "type": "string" },
48
+ "projectedFromRelease": { "type": "boolean" },
49
+ "skewed": { "type": "boolean" }
50
+ }
51
+ }
52
+ }
53
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://geospatial-mcp.honua.io/spec/schemas/tools/platform_release_status.schema.json",
4
+ "title": "platform_release_status inputSchema",
5
+ "description": "Argument shape for the platform-release status tool (advertised name honua_platform_release_status). Read-only: returns the declared platform_release / server_upgrade co-versioning snapshot (mirror of the platformRelease projection on the honua-server coordinated-deploy preflight) — the declared release version, whether all planes are co-versioned with it, the per-plane serving/execution projections, and the identifiers of any planes skewed from the declared release. Takes no arguments. Uses platform_release / server_upgrade vocabulary; this is distinct from the hosted-content honua://deployments/{deployment_id} resource. The response is the release-status snapshot; see platform_release_status.result.schema.json. x-honua-reference-shape: this shape tracks the reference implementation.",
6
+ "x-honua-reference-shape": true,
7
+ "type": "object",
8
+ "properties": {},
9
+ "additionalProperties": false
10
+ }