sable network
Buy on Index
Documentation · all sections

MCP server

POST /v1/mcp is a remote Model Context Protocol server, so Sable's capabilities become tools inside an agent: run a completion, execute code in a metered sandbox, verify a receipt, read the confidential attestation, check credit.

Connect

claude mcp add --transport http sable \
https://api.buildsable.com/v1/mcp \
--header "authorization: Bearer $SABLE_API_KEY"

Tools

ToolWhat it does
sable_chatWhat it doesRun a completion. Takes prompt, optional model, system, privacy_tier, max_tokens.
sable_run_codeWhat it doesExecute code in a metered sandbox. language, timeout_secs, network optional.
sable_verify_receiptWhat it doesVerify a receipt + signature pair and recover the signer.
sable_attestationWhat it doesCurrent confidential-tier attestation status and measurement.
sable_balanceWhat it doesRemaining credit on the account behind this key.
sable_modelsWhat it doesCatalog with pricing, tier, and open-weight status.
sable_generate_imageWhat it doesGenerate an image (model, prompt, optional n, size); returns the signed provenance manifest.
sable_generate_videoWhat it doesStart an asynchronous video render; returns a job id.
sable_video_statusWhat it doesPoll a video job by id.
sable_backing_statusWhat it doesProof of Backing verdict for a backed token (slug).
sable_coin_lockWhat it doesLock a launchpad coin and get the exact unsigned factory create(...) transaction for your own wallet.
sable_coin_report_deployedWhat it doesReport the create transaction's hash; Sable reads the chain and lists the coin.
sable_coin_statusWhat it doesA coin's public record: raise progress, market readings, graduation, verification.
sable_coin_quoteWhat it doesPreview a buy or sell on a coin's curve and get the unsigned buy/sell (and approve) transactions with a slippage floor.
sable_coin_directoryWhat it doesA page of the coin directory.

The sable_coin_* tools are non-custodial: they return unsigned transactions for your own wallet to sign and send. Sable holds no key, signs nothing for you and holds no funds. The launchpad guide's "Agents (MCP)" section walks through a launch and a trade end to end.

Tool calls are metered and billed exactly like direct API calls, and both sable_chat and sable_run_code return their signed receipt in structuredContent so an agent can keep proof of what it ran.

Authentication

Two ways in, both ending at the same place: a sk-sable_… key.

Paste a key

Clients that let you set a header (Claude Code, custom agents, anything driving an MCP SDK directly) send an API key you minted in the portal:

authorization: Bearer sk-sable_...

One-click connect (OAuth 2.1)

Connector UIs that expect to run an OAuth flow can, as of the OAuth authorization server the gateway now ships: discovery (RFC 8414 / RFC 9728), dynamic client registration (RFC 7591), PKCE S256 — mandatory, plain is refused — and rotating refresh tokens.

Point the client at the MCP URL and let it do the dance:

{
"type": "url",
"url": "https://api.buildsable.com/v1/mcp",
"name": "Sable"
}

What happens: the client registers itself, sends you to Sable's consent page, you sign in with your wallet and choose a spend cap and an expiry, and the client receives a token.

The token it receives is an ordinary Sable API key, minted under your account with exactly the cap and lifetime you picked. That is the whole design: there is no second, parallel credential system to reason about — the connector's access is a key you can see on the API keys page, whose spend rolls into your usage, and revoking that key ends the connection. The client refreshes it periodically while your consent lasts; when the consent expires, it has to ask again.

An unauthenticated call to /v1/mcp answers 401 with a WWW-Authenticate header naming the resource metadata document, which is how a connector finds the authorization server without being told.

EndpointPurpose
GET /.well-known/oauth-authorization-serverPurposeAuthorization-server metadata (RFC 8414).
GET /.well-known/oauth-protected-resourcePurposeProtected-resource metadata (RFC 9728).
POST /v1/oauth/registerPurposeDynamic client registration. Public clients only.
GET /v1/oauth/authorizePurposeValidates the request, then sends the browser to the consent page.
POST /v1/oauth/tokenPurposeauthorization_code (PKCE) and refresh_token grants.
POST /v1/oauth/revokePurposeRevoke a refresh or access token (RFC 7009).

Deliberate limits, stated plainly: only public clients are issued (a secret baked into a desktop app protects nothing), redirect URIs must be https or http to loopback and are matched exactly, authorization codes are single-use and live 10 minutes, and refresh tokens rotate on every use — replaying an old one is treated as a leak and revokes the whole grant, keys included.

Shipped
Sable Launchpad — launch a coin with a character, on Robinhood ChainProof of Backing — continuous reserve verification, published wholeSupport Program register opened to SABL holdersEight models added, including the Claude 5 and Gemini 3.8 familiesKnow Your Agent — a machine-checkable credential at a passport handleAutopilot — receipted evidence for a cheaper configurationThe Verifiable Arena — every score backed by a real receipted runTime Machine — record a request, replay it, diff the resultSable Notary — sign and anchor work Sable did not runIntelligence Engine — compile a configuration into an immutable buildSealed Calls — commit a prediction now, reveal it laterAgent Post — cross-account mail between agents, with postageSable Legacy — a dead man's switch for sealed contentThe Judge — a panel of models, one signed verdictSable Memory, Agent Runtime and the non-custodial payment railPersistent sandbox sessions with exec, files and snapshotsMCP Gateway — every tool call allowlisted, metered and receiptedOAuth 2.1 + dynamic client registration for one-click MCP connectSable Vault — a private registry with public settlement