MCP Server

Treasury tools for Claude, GPT, and any agent

Connect Stackit.ai through MCP, run public treasury reads, simulate actions, inspect fees, and prepare wallet-sovereign transaction envelopes without handing Stackit.ai private keys.

Last updated June 25, 2026

Claude Code

claude mcp add stackit https://www.stackit.ai/api/mcp

Claude Desktop

{
  "mcpServers": {
    "stackit": {
      "url": "https://www.stackit.ai/api/mcp"
    }
  }
}

Generic MCP client

{
  "name": "stackit",
  "transport": "http",
  "endpoint": "https://www.stackit.ai/api/mcp"
}

First public REST check

Use this before MCP setup if you want to verify the gateway from any shell. The browser sandbox runs the same public demo contract.

curl -s https://www.stackit.ai/api/v1/public/gateway-status | jq

Tool reference

Every tool states its permission level and whether it can move funds. Real-money execution always requires a wallet signature or user-approved automation permissions.

Read tool risk model
get_market_rates

Read-only

Read-only

Fetch live native-USDC variable borrow APYs from Aave V3 on Base, Arbitrum, and Polygon.

Input
{ "chain": "base", "asset": "USDC" }
Output
{ "object": "market_rates", "environment": "live", "asset": "USDC", "rates": [{ "chain": "base", "borrow_apy_pct": "live" }] }
Can move funds?
No
Requires human approval?
No
get_liquidation_distance

Read-only

Read-only

Calculate price-drop distance to liquidation from a supplied LTV.

Input
{ "ltv": 40 }
Output
{ "price_drop_to_liquidation_pct": 49.04, "stackit_recommended_ceiling_ltv": 60 }
Can move funds?
No
Requires human approval?
No
get_portfolio_state

Read-only

Read-only

Return demo or wallet-specific treasury collateral, debt, LTV, and health score.

Input
{ "address": "demo" }
Output
{ "collateral_value_usd": 123900, "debt_value_usd": 48500, "current_ltv": 39.14 }
Can move funds?
No
Requires human approval?
No for demo; auth for live wallet state
get_policy_state

Read-only

Read-only

Read policy bands, permission state, protection status, gas caps, and fee references.

Input
{ "address": "demo" }
Output
{ "protection_status": "active", "fee_schedule_ref": "https://www.stackit.ai/fees.json" }
Can move funds?
No
Requires human approval?
No for demo; auth for live wallet state
preview_action

Simulation / prepare

Simulation

Simulate a treasury action and return fee, LTV impact, safety result, and unsigned envelope hints.

Input
{ "action": "borrow", "amount": 5000, "asset": "USDC", "current_ltv": 39.14 }
Output
{ "approved": true, "stackit_fee_usdc": 100, "requires_signature": true }
Can move funds?
No
Requires human approval?
No for preview; yes before real execution
create_treasury

Prepare

Transaction-prep

Register a simulated treasury bound to a wallet for sandbox contract testing.

Input
{ "wallet_address": "0x1111111111111111111111111111111111111111", "execution_mode": "wallet" }
Output
{ "sandbox": true, "treasury_id": "trs_...", "api_key": "sk_test_..." }
Can move funds?
No
Requires human approval?
No real funds; sandbox only
relay_signed_transaction

Execute

Live-action

Relay a wallet-signed transaction for a pending unsigned envelope.

Input
{ "tx_id": "tx_...", "signed_transaction": "0x..." }
Output
{ "object": "relay_receipt", "status": "confirmed", "simulated": true }
Can move funds?
Only if the wallet already signed a real transaction
Requires human approval?
Yes: wallet signature or scoped permission required
request_live_access

Prepare

Simulation

Submit an agent live-access request for human review without leaving the protocol.

Input
{ "operator_name": "Ada Operator", "operator_email": "ada@example.com", "use_case": "Treasury monitoring and borrow previews" }
Output
{ "object": "agent_access_request", "status": "received", "status_url": "https://www.stackit.ai/api/v1/agents/apply/agr_..." }
Can move funds?
No
Requires human approval?
Human review required before credentials
get_gateway_status

Read-only

Read-only

Check gateway health, supported chains, public API base, x402 readiness, and status.

Input
{}
Output
{ "object": "gateway_status", "status": "online", "supported_assets": ["BTC", "ETH", "USDC"] }
Can move funds?
No
Requires human approval?
No

Example MCP call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "preview_action",
    "arguments": {
      "action": "borrow",
      "amount": 5000,
      "asset": "USDC",
      "current_ltv": 39.14
    }
  }
}

Safety rail error

{
  "error": "ltv_limit_exceeded",
  "approved": false,
  "message": "Borrow would exceed the 60% recommended ceiling.",
  "safe_amount": 4200,
  "current_ltv": 55,
  "resulting_ltv": 67.3
}

Agent test prompts

Use Stackit.ai to analyze a sample BTC/ETH treasury and explain risk.

Simulate borrowing USDC against ETH at conservative LTV.

Create a DCA policy for a founder treasury with 12-month runway.

Explain Stackit.ai fees using the machine-readable fee file.

Show what actions require human approval.

Prepare but do not execute a treasury action.

Run it in the browser

The sandbox playground can run public reads, action previews, fee inspection, and safety-rail rejections without an account.