Skip to main content
Endpoint: https://app.ravn.exchange/api/mcp (Streamable HTTP). No key needed; pass yours as the optional apiKey argument on any tool for a higher rate limit and your fee.

Add to Claude.ai

One click: opens Claude’s connector dialog, pre-filled.

Add to Cursor

One click, on a machine with Cursor installed.
A plain GET answers 405: that’s expected, MCP speaks POST. RAVN is also listed on MCP.so, Glama and Smithery.

The loop

Ask your client something like “Swap 0.01 ETH on Ethereum to USDC on Base for 0x1234…5678.” It runs:
  1. ravn_quote → a priced route and a quoteToken.
  2. ravn_execute → a TRANSACTION, SIGNATURE or DEPOSIT, plus a new quoteToken.
  3. Your wallet acts on it (who signs?):
    • TRANSACTION: send it, and any fee as Collecting your fee says.
    • SIGNATURE: sign typedData, then ravn_submit_signature → a statusRef.
    • DEPOSIT: send the input to the address. From Bitcoin, ravn_btc_prepare_send builds it.
  4. ravn_status with step 2’s quoteToken and the statusRef (or the transaction hash), until success, refunded or failed.

Tools

The arguments match the REST endpoints. Every tool also takes an optional apiKey.

ravn_btc_prepare_send

Turns a Bitcoin DEPOSIT into an unsigned PSBT (psbtBase64) for your wallet to sign and broadcast. UTXOs and fee rates come from mempool.space. RAVN never sees a private key.