Hosted MCP Compatibility Policy
This policy defines what is stable, what can change, and how breaking evolution is handled for hosted MCP.Canonical endpoints
- Primary:
https://api.omnibrief.app/mcp - SSE compatibility:
https://api.omnibrief.app/sse
Protocol negotiation and supported versions
OMNI negotiates protocol oninitialize.
- Requested supported version: echoed in
result.protocolVersion - Requested unsupported version: server falls back to default supported version
2025-11-05(default)2025-06-182025-03-26
Stability classes
| Surface | Stability class | Notes |
|---|---|---|
/mcp JSON-RPC transport | Stable | Canonical endpoint for MCP integrations |
/sse transport | Compatibility | Maintained for client compatibility; /mcp is preferred |
initialize, notifications/initialized, ping, tools/list, tools/call | Stable | Method semantics are contract-protected |
tool identifiers (fred.search, fred.series) | Stable | Breaking changes require new identifier |
Tool evolution rules
Non-breaking:- add optional fields to
inputSchema - expand result payload with additive fields
- remove required field
- change meaning of existing field
- repurpose tool behavior
- new tool identifier (for example
fred.search.v2) - migration guide + changelog entry
- sunset window for prior identifier
Idempotency and billing parity
tools/call requires:
- same auth + scope model
- same rate limits + request IDs
- same error semantics (
omni_codemapping) - same billable semantics: first successful write-like operation only
SDK compatibility matrix (internal beta)
| SDK line | Distribution | Supported MCP protocol versions |
|---|---|---|
omni-mcp-js 0.1.x | GitHub Release .tgz artifact | 2025-11-05, 2025-06-18, 2025-03-26 |
omni-mcp-py 0.1.x | GitHub Release .whl/.tar.gz artifacts | 2025-11-05, 2025-06-18, 2025-03-26 |
SHA256SUMSMCP_COMPATIBILITY_POLICY.md
Compatibility lifecycle policy
- additive protocol/tool changes: allowed without breaking notice
- behavioral non-breaking changes: changelog + rationale
- deprecations: minimum 180-day target sunset window
- breaking changes: minimum 90-day migration window after replacement is live
Conformance gating
Every SDK release tag (mcp-sdks-v*) is gated by live conformance checks against https://api.omnibrief.app/mcp:
- JS:
sdk/omni-mcp-js/scripts/conformance.mjs - Python:
sdk/omni-mcp-py/scripts/conformance.py
initializetools/listincludesfred.searchtools/callreturns structured content
Related docs
/sources/client-api-mcp-hosted/sources/client-api-sdks/getting-started/client-api-sdk-quickstart/sources/client-api-migrations