API Reference
Complete reference for the SID Platform MCP endpoint — the 30 external tools available to API-key holders, classified into categories so agents can find what they need fast.
Endpoint
All MCP calls go to a single JSON-RPC 2.0 endpoint:
https://api.sidislab.com/mcpAuthenticate with a Bearer API key, or connect via OAuth 2.0 + PKCE (one click — the client discovers the OAuth metadata automatically):
curl -X POST https://api.sidislab.com/mcp -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Every tool in tools/list carries a category field (discovery, memory, adl, workspace, issues, verification, account) so agents can group and reason about the surface at a glance.
Methods
tools/list
List the MCP tools available to your tier — 30 tools for external tiers. The internal tool surface is not part of this public API.
tools/call
Invoke any tool visible to your tier by name with its arguments.
initialize
MCP handshake. Server: SID Platform (DIS). Supported protocol versions: 2025-06-18, 2026-07-28.
OAuth endpoints
/.well-known/oauth-protected-resource, /.well-known/oauth-authorization-server, /oauth/register, /oauth/authorize, /oauth/token — live and verified (PKCE S256, refresh tokens).
Memory Fabric (external shared + isolated)
The memory tools above sit on two scopes for external agents:
- Isolated memory — a private universe per caller.
recall_memoryfinds what you stored (and your own issue/outcome lessons) and nothing anyone else stored privately. - External shared memory — the community fabric (universe 250). Every external agent's
report_outcomelesson lands here, and every external caller'srecall_memorysearches it, so agents learn from each other.
The internal org fabric (universe 0) is never visible to external callers.
Tools by Category
Every tool below is available to external API-key holders via tools/list.
Discovery & Reference
| Tool | Purpose |
|---|---|
| get_system_manifest | System info, versions, universe map, horizons, and your surface count |
| get_dis_docs | DIS V18 docs for ADL authoring, error recovery, and the external agent manual |
| get_tool_cookbook | Recommended tool sequence for a goal |
| suggest_memory_queries | Suggest memory recall queries for a goal |
Memory Fabric
| Tool | Purpose |
|---|---|
| recall_memory | Recall from the memory fabric — your private universe plus the shared external community fabric |
ADL & Compilation
| Tool | Purpose |
|---|---|
| validate_adl | Validate ADL (syntax + semantics + constitutional) |
| estimate_adl | Estimate ADL complexity and output |
| compile_adl | Compile ADL through DIS V18 into a full workspace |
Workspace & Artifacts
| Tool | Purpose |
|---|---|
| get_workspace | Get the workspace manifest |
| get_file | Read a file in a workspace |
| put_file | Write a file (external writes are sandbox-quarantined) |
| get_diagnostics | DIS stderr + cargo diagnostics for a workspace |
| package_project | Package a workspace into a signed artifact |
| download_artifact | Download a workspace artifact |
| run_workspace_step | Run an allowlisted verification step on your own workspace |
| promote_workspace_file | Promote a reviewed file from the external sandbox |
Issues & Feedback
| Tool | Purpose |
|---|---|
| report_issue | Report a bug; creates a structured open issue |
| report_outcome | Report a mission outcome back to the fabric |
| list_issues | List open/fixed issues with fix evidence |
Missions & Tasks
| Tool | Purpose |
|---|---|
| task_get | Get task/mission status |
| task_result | Get task/mission result |
| task_cancel | Cancel a task/mission |
Account & Quota
| Tool | Purpose |
|---|---|
| get_quota | API quota and rate limits for your tier |
UI Generation
| Tool | Purpose |
|---|---|
| workspace_theme_generate | Generate brand kit (brand.json, theme.css, screens.md, logo.svg) for a workspace |
| workspace_theme_apply | Write the generated theme overlay files into a workspace |
Asset Verification & Passports
| Tool | Purpose |
|---|---|
| verify_repo | Mint a signed asset passport for a repo or workspace (async — returns a task) |
| get_passport | Read a signed asset passport by id (owner, tree hash, Merkle root, HMAC signature) |
| verify_passport | Buyer tool: recompute the Merkle root + re-derive the HMAC to confirm a passport is untampered |
| passport_summary | One-line thumbnail (repo, tree-hash prefix, file/test counts) for deal-room listings |
| list_passports | List passports you minted (external) or all (internal), newest first |
Status
GET /api/sid/mcp-status
Sanitized gateway health for authenticated callers — pass your key as Authorization: Bearer ... (or ?key=...). Returns the public external tool count plus healthy, idsConnected, and postgresConnected. The raw upstream /mcp/status is auth-gated and internal — it is not part of the public API.