Client API SDKs
During internal beta, OMNI ships official SDK adapters as GitHub Release artifacts (not npm / PyPI yet). These SDKs are intentionally thin wrappers over the hosted MCP endpoint (/mcp) so:
- auth, rate limits, usage metering, and error semantics match the raw HTTP contract
- you can always drop down to raw HTTP without changing your integration model
SDK-first posture (how to build with OMNI like you would with Stripe)
Recommendations:- Treat the SDK as a convenience layer, not a separate product.
- Model your integration around: key scopes, request IDs (
X-Request-Id), idempotency for side-effecting operations (tools/call), and explicit timeouts + retries.
/sources/client-api-retries.
If you want a runnable, end-to-end “first call” flow, start with:
/getting-started/client-api-sdk-quickstart
Where to get builds
SDK artifacts are published as assets on tagged GitHub Releases inautonomous-computer/omni-system.
Look for tags with the prefix:
- JS package artifact (
*.tgz) - Python artifacts (
*.whl,*.tar.gz) SHA256SUMSMCP_COMPATIBILITY_POLICY.md
Versioning and compatibility (internal beta)
- Adapter versions follow semver.
- A given adapter version may support multiple MCP protocol versions; see
/sources/client-api-mcp-compatibility. - During internal beta, we may publish quickly; you should pin the adapter version in production-like integrations.
Hosted MCP SDKs
JavaScript: @omni/omni-mcp-js (internal beta)
Install from a GitHub Release .tgz asset:
tools/callrequiresIdempotency-Keyfor safe retries; pass it as the third argument tocallTool.- Errors throw
OmniMcpErrorwith structured metadata (kind,status,requestId,rpcCode,data).
Quickstart: robust invocation wrapper (TypeScript)
Python: omni-mcp-py (internal beta)
Install from a GitHub Release wheel (.whl) or source distribution (.tar.gz):
call_toolauto-generates an idempotency key if you do not provide one.- Errors raise
OmniMCPErrorwith structured metadata (kind,status_code,request_id,rpc_code,data).
Roadmap (public-beta-ready)
- publish packages to npm / PyPI with stable versioning guarantees
- typed error classes with
status,requestId, andomni_code - first-party integration templates (Next.js, FastAPI, Rails)