RiskState
Pre-trade risk governance for crypto agents — returns dynamic max-position-size, leverage caps, and direction bias for BTC/ETH from live market state.
RiskState MCP Server
MCP server for RiskState — pre-trade risk permissions for BTC/USD and ETH/USD. Spot, perpetual futures (perps), and DeFi borrowing aware.
Your system asks: **"How much can I risk right now?"**RiskState answers with: policy level, max exposure, leverage limits, blocked actions — computed from 30+ real-time signals.
What it does
Wraps the RiskState /v1/risk-state API as an MCP tool. One tool: get_risk_policy.
| Field | Description |
|---|---|
| policy_level | 5 levels: BLOCK_SURVIVAL, BLOCK_DEFENSIVE, CAUTIOUS, GREEN_SELECTIVE, GREEN_EXPANSION |
| max_size_pct | Maximum position size as % of portfolio (0-100) |
| leverage_max | Maximum allowed leverage multiplier |
| allowed_actions | What the agent CAN do at this policy level |
| blocked_actions | What the agent CANNOT do |
| confidence_score | Signal agreement x data quality (0-1) |
The API aggregates 9+ real-time data sources server-side. See API docs for details.
What this wrapper does (and doesn't)
This is a thin wrapper — it translates MCP tool calls into REST API requests to POST /v1/risk-state and returns the response. All computation (scoring, policy engine, data ingestion) happens server-side.
This wrapper adds:
- MCP protocol compliance (stdio transport for Claude Desktop/Code)
- Input validation via Zod schemas
- Human-readable policy summary prepended to responses
- Specific error messages (auth, rate limit, timeout) for agent recovery
This wrapper does NOT:
- Cache responses (the API has 60s server-side cache)
- Perform any scoring or computation locally
- Guarantee response schema stability (follows API versioning)
Installation
npm install @riskstate/mcp-server
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
| RISKSTATE_API_KEY | Yes | API key from riskstate.ai (free during beta) |
| RISKSTATE_API_URL | No | Custom API base URL (default: https://api.riskstate.ai) |
Claude Desktop
Add to ~/.config/Claude/claude_desktop_config.json:
{ "mcpServers": { "riskstate": { "command": "npx", "args": ["-p", "@riskstate/mcp-server", "riskstate-mcp"], "env": { "RISKSTATE_API_KEY": "your-api-key" } } } }
Claude Code
claude mcp add riskstate -- npx -p @riskstate/mcp-server riskstate-mcp
Set the API key in your environment:
export RISKSTATE_API_KEY=your-api-key
Global install (alternative)
npm install -g @riskstate/mcp-server riskstate-mcp # starts MCP server on stdio
Usage
The server exposes one tool: get_risk_policy
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| asset | "BTC" | "ETH" | Yes | Asset to analyze |
| wallet_address | string | No | DeFi wallet for on-chain position data |
| protocol | "spark" | "aave" | No | Lending protocol (default: spark) |
| include_details | boolean | No | Include full breakdown (subscores, macro, risk flags) |
Example Response
{ "exposure_policy": { "policy_level": "CAUTIOUS", "max_size_pct": 35, "leverage_max": 1.5, "allowed_actions": ["DCA", "WAIT", "SPOT_LONG_CONFIRMED"], "blocked_actions": ["LEVERAGE_GT_2X", "NEW_POSITIONS_UNCONFIRMED"] }, "classification": { "cycle_phase": "MID", "market_regime": "RANGE", "macro_regime": "NEUTRAL", "direction": "SIDEWAYS" }, "auditability": { "composite_score": 52, "confidence_score": 0.72, "policy_hash": "a3f8c2...", "ttl_seconds": 60 } }
How Agents Should Use This
Call get_risk_policy before every trade:
- If
policy_levelstarts withBLOCK→ do not open new positions - Use
max_size_pctto cap position sizing - Check
blocked_actionsbefore executing - Re-query after
ttl_seconds(60s cache)
Limitations
- v1 scope: BTC/USD and ETH/USD only (USD-denominated assessment). More assets planned.
- Markets: Spot, perpetual futures, and DeFi borrowing. Same response — interpretation differs by market (see API docs).
- Protocols: Spark and Aave V3 only for DeFi position data.
- Rate limit: 60 requests/minute per API key.
- Latency: ~1-3s per request (9+ upstream data source aggregation).
- Tested with: Claude Desktop, Claude Code. Should work with any MCP-compatible client.
Links
- Landing page: riskstate.ai
- API docs: riskstate.ai/docs/api
- SKILL.md: agentskills.io
License
MIT
Serveurs connexes
ifrCoworker
international financial reporting engine for Agents and REST api users journal entries, statement generation, audit trail with workings, financial reporting automation
Headless Tracker
Stop building portfolio dashboards — describe the view you want and let Claude render it. Read-only MCP server for Bybit, Binance, EVM wallets, Solana, and Polymarket.
STRvest
Underwrite STR deals, check regulations, and estimate tax savings from any AI chat client.
ForInvest MCP
Access BIST and global market data directly
Floe Working Capital
Gives AI agents (Claude, Cursor, custom) full access to working capital to pay x402 receipts.
mcp-kraken
MCP server wrapping the Kraken cryptocurrency exchange Spot REST API over HTTP.
Papierkram
An MCP (Model Context Protocol) server for the Papierkram.de accounting API. Enables AI assistants to manage invoices, expenses, contacts, projects, time tracking and more directly in your Papierkram account.
MCP Scanner
12 AI-powered tools for institutional-grade Indian stock research. Covers 3,300+ NSE/BSE stocks with 10-year financials, CRISIL-grade ratings, peer comparisons, and shareholding analysis.
Jawz
Financial intelligence for AI agents: an agent-readable investment loop for market regime, portfolio context, decision framing, and thesis review.
American Default Research
Read-only MCP for U.S. household financial distress data: 96 indicators, the American Distress Index (ADI), and county-level distress scores for all 3,144 U.S. counties.