sf.
Prefer the CLI when a local agent wants tool discovery, local config, command policy tags, or sf describe --all --json as its control plane. Use MCP only as the final adapter when the host requires Model Context Protocol.
Base URLs
Do not use
wss://data.simplefunctions.dev/v1/ws as the public WebSocket URL unless the real-time data page says it has moved.
Auth matrix
First curl calls
Public reads:TypeScript
Python
Responses and errors
Public endpoints generally return endpoint-specific JSON directly. Account, portfolio, and workflow endpoints often use{ ok, ... } envelopes where documented. Always branch on HTTP status first. Do not scrape prose from rendered docs or terminal output. Prefer format=json where a route supports it.
Endpoint chooser
SDK and Agent contract note
If you are building against the TypeScript SDK or Agent SDK packages, use/api/contracts/tools for canonical tools. /api/tools remains a broad hosted
inventory for compatibility and remote HTTP discovery.
Safety notes
API keys are secrets. Do not paste them into prompts, public logs, or client-side bundles. Execution endpoints can mutate real account state. Prediction markets are probabilities, not guarantees. User-owned endpoints are scoped to the authenticated user; do not passuserId for normal reads.