ABI → MCP · 8 EVM chains · security scanner

Any contract.
Your agent speaks it.

UCAI Cloud is a hosted demo of UCAI, the ABI-to-MCP server generator. Enter a verified contract address on Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Chain, Avalanche or Sepolia. You get every function as a typed MCP tool, a rug-pull risk scan, a plain-English explanation, live reads, write simulation from your wallet, recent events and a ready-to-run Python FastMCP server. Save a contract and it gets its own MCP endpoint.

Live risk scans of well-known contracts

The worker fetches each verified ABI and source from Sourcify, Blockscout or Routescan, reads owner and proxy state on-chain, and scores admin powers such as minting, pausing, blacklisting and upgrades. Results are cached for 30 minutes. Select a card to open it in the console.

Everything an agent needs to use a contract

Sign in with MetaMask, Rabby, Coinbase Wallet, Phantom or any EIP-6963 or Solana wallet. All reads hit the chain through public RPCs. Writes are simulated with eth_call, and you sign them in your own wallet only if you choose to.

⌬

ABI to MCP tools

Every function becomes a tool with a JSON Schema built from its Solidity types, including tuples and arrays. Proxies are followed to their implementation automatically.

⛨

Security scan

A 0–100 score with findings for mint, pause, blacklist, fee changes, upgradeability, selfdestruct and tx.origin. Owner state is read live, so renounced ownership counts in your favour.

❝

Contract whisperer

A plain-English summary of what the contract is, which standards it implements, its live state and what each read, write and admin function does.

⇆

Read, simulate, send

Call any view function. Simulate any write from your address to see the result, revert reason and gas, then send it from your wallet if you want to.

≋

Event explorer

Decode recent logs for any event over up to 2,000 blocks, with links to each transaction.

⌁

Per-contract MCP

Save up to 25 contracts. Each one gets its own /mcp/:id endpoint, so Claude or Cursor sees only that contract's functions. You can also generate a standalone FastMCP server.

From address to agent tool in four steps

Nothing is signed or sent unless you press Send and confirm in your wallet.

Sign in

Connect a wallet and sign one message (SIWE or SIWS). There is no gas and no account to create, and your session lasts 30 days.

Paste an address

Pick a chain and a verified contract, or start from a preset such as USDC or the Uniswap V2 router.

Scan and explore

Check the risk score, read state, simulate writes and browse recent events.

Hand it to your agent

Save the contract and paste its MCP URL into your client, or copy the generated FastMCP server.

Built for agents first

The console calls the same routes your agents do. Create a key under API keys and call these routes:

  • GET /api/contract/:chain/:address returns the ABI as MCP-ready tools
  • GET …/scan, …/explain, …/events and …/codegen
  • POST …/read and POST …/simulate take {"function","args"}
  • POST /mcp is the global MCP server, and POST /mcp/:id serves one saved contract (both stateless Streamable HTTP)
# Security-scan USDC on Ethereum
curl -s https://ucai.ninabrekkerese.workers.dev/api/contract/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/scan \
  -H "authorization: Bearer $UCAI_KEY"

# mcp.json
{
  "mcpServers": {
    "ucai": {
      "type": "http",
      "url": "https://ucai.ninabrekkerese.workers.dev/mcp",
      "headers": { "Authorization": "Bearer sk_ucai_…" }
    }
  }
}

Pricing

UCAI Cloud is a public demo of the open-source UCAI project.

Custody

Yours
  • Writes are simulated, not sent
  • Sending always goes through your own wallet's confirmation
  • No private key is ever requested
Scan a contract

Self-host

Source
  • pip install abi-to-mcp
  • abi-to-mcp generate <address> -o ./server
  • This demo runs on Cloudflare Workers + D1
  • See the repository for license terms
View on GitHub