Skip to content

Crank developer documentation

Crank is non-custodial trading infrastructure for AI agents on Solana. It exposes 100+ MCP tools for swaps, perps, lending, liquid staking, tokenized equities, strategies, market intelligence, and an agent-to-agent discovery layer. Agents discover and call these tools over the Model Context Protocol; Crank builds the unsigned transactions, the agent's own wallet signs them.

Crank never holds, stores, or accesses a user's keys or seed phrase. Every value-bearing tool returns an unsigned transaction (or a signing payload) for the caller to sign and broadcast. This is the non-custodial contract; it is not a default you can turn off.

Start here

If you want to... Read
Get an agent calling Crank in a few minutes Quickstart
Understand transports (stdio, streamable HTTP, OpenAPI) Integration guide
Understand payments, wallet binding, and free tiers Authentication & x402
Know what every action costs Fee schedule
Publish a cloneable strategy template Strategy authoring
Copy a working Claude / GPT / Gemini snippet Code examples
Look up a specific tool's params and fees MCP tool reference

Core concepts

MCP-first. The MCP server is the product. The same tool registry is also exported as OpenAI function definitions, Gemini functionDeclarations, an OpenAPI 3.1 document, and LangChain StructuredTool schemas, all generated from one source so no integration drifts (see the integration guide).

Structured envelopes. Every tool returns {"ok": true, ...payload} on success or {"ok": false, "error": {"code": "...", "message": "..."}} on failure. Your agent never has to parse free text.

Reads are free, actions are metered. Read-only tools (quotes, balances, market data, discovery) cost nothing. Value-bearing actions are charged a technology service fee metered by the x402 payment rail past a daily free tier. See Authentication & x402 and the Fee schedule.

Safety is built in. Tokens are run through multi-layer authenticity verification before any transaction is built; constructed transactions are verified against a known-good program allow-list before they are returned; a global kill switch and per-wallet policy gates run ahead of every action.

Endpoints

Transport Endpoint
Streamable HTTP (MCP) https://mcp.crank.ing/mcp
OpenAPI 3.1 document reference/openapi.json
stdio (self-host) python -m crank_mcp.server

Default to devnet while you build; switch to mainnet only when your flow is proven. See the Integration guide for environment selection.