Riv is in Early Access — help shape the financial control plane for AI agents. Send feedback
Riv.
MCP server

Connect any agent through MCP

The universal entry point to Riv. Instead of writing the authorization HTTP call into your agent's code, connect riv-mcp as an MCP server in your client — the agent gets the spend tools (authorize, get_activity) and the Trading Guard tools ready to use.

A thin shell over the Riv API

riv-mcp doesn't reimplement auth, the decision engine or the ledger. It takes the tool call, hits the HTTP API with your riv_ key and returns the result. Framework-agnostic: it covers Cowork, Codex, OpenClaw, Hermes, CrewAI and any MCP-compatible client, with no dedicated adapter.

Framework-agnostic — MCP is the universal entry point

CrewAILangChainMCPOpenClawHermesCodexAutoGPTCoworkCrewAILangChainMCPOpenClawHermesCodexAutoGPTCowork

Nine tools, ready to use — two for spend, seven for Trading Guard

authorize({ amount, currency, description?, category? })

Asks Riv whether a transaction is allowed before it runs. Takes the amount and currency (description and category optional) and returns the governance decision plus the ledger activityId.

get_activity({ activityId?, limit? })

Reads the ledger, always scoped to the agent's own key. With an activityId it returns one record; without it, the recent statement — so the agent can watch a pending item turn into approved or rejected.

Trading Guard tools (7)
place_orderget_positionsget_account_stateget_market_datacancel_orderclose_positionlist_trading_policies

Governed perp trading: every order is evaluated against your trading policies before it reaches the venue, and executed orders carry Riv's builder code. BLOCK and REQUIRE_APPROVAL come back as normal outcomes, not errors.

Trading quickstart →

Set it up in your MCP client

Transport is stdio (local): the client spawns the server and talks over stdin/stdout. Run it with npx — no install step — and pass the credential through env.

  • RIV_API_KEYrequired — the riv_ key issued when you connect the agent
  • RIV_API_URLoptional — API base; defaults to localhost, use the production URL for live agents
mcp.json
{
"mcpServers": {
"riv": {
"command": "npx",
"args": ["-y", "@riv-io/mcp"],
"env": {
"RIV_API_KEY": "riv_...",
"RIV_API_URL": "https://riventa.dev"
}
}
}
}

Ready to govern your agents' money?