1.5 KiB
1.5 KiB
API + MCP Contract Policy
This document defines compatibility expectations for Schemeta API and MCP tools.
Version Fields
All successful API/MCP structured responses include:
api_versionschema_version
HTTP API responses also include:
request_id(response field +x-request-idheader)
Compatibility Policy
- Additive changes are allowed within the same
api_versionminor release. - Breaking shape changes require a new API major version.
schema_versionincrements when SJM schema semantics or required fields change.
HTTP API Contracts
Stable endpoints:
POST /compilePOST /analyzePOST /layout/autoPOST /layout/tidyGET /healthGET /mcp/ui-bundle
Error envelope shape:
{
"ok": false,
"request_id": "uuid-or-forwarded-id",
"error": {
"code": "stable_machine_code",
"message": "human-readable description"
}
}
MCP Tool Contracts
Stable tool names:
schemeta_compileschemeta_analyzeschemeta_ui_bundle
Contract rules:
- Tool names are stable across minor versions.
- Input schemas may gain optional fields additively.
- Structured response fields are additive-only within a minor.
Persistence and Restore
UI workspace persistence is expected to support:
- deterministic JSON export/import roundtrip
- local snapshot restore path (
schemeta:snapshots:v2) - reset-to-sample baseline recovery for QA loops
These are validated in release checklist + browser regression flow.