MCP server for interacting with the Cardano blockchain from AI agents
Cardano MCP Server
MCP server for interacting with the Cardano blockchain from AI agents and automation systems via the Model Context Protocol.
Part of the Indigo AI Stack — use alongside Indigo MCP for full Cardano DeFi capabilities.
⚡ 2 Commands to Get Started
# Install
npm install -g @indigoprotocol/cardano-mcp
# Setup (interactive)
npx @indigoprotocol/cardano-mcp setup
╔═══════════════════════════════════════════════════════════════╗
║ ║
║ ██████╗ █████╗ ██████╗ ██████╗ █████╗ ███╗ ██╗ ██████╗ ║
║ ██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗████╗ ██║██╔═══██╗ ║
║ ██║ ███████║██████╔╝██║ ██║███████║██╔██╗ ██║██║ ██║ ║
║ ██║ ██╔══██║██╔══██╗██║ ██║██╔══██║██║╚██╗██║██║ ██║ ║
║ ╚██████╗██║ ██║██║ ██║██████╔╝██║ ██║██║ ╚████║╚██████╔╝ ║
║ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ║
║ ║
║ ███╗ ███╗ ██████╗██████╗ ║
║ ████╗ ████║██╔════╝██╔══██╗ ║
║ ██╔████╔██║██║ ██████╔╝ ║
║ ██║╚██╔╝██║██║ ██╔═══╝ ║
║ ██║ ╚═╝ ██║╚██████╗██║ ║
║ ╚═╝ ╚═╝ ╚═════╝╚═╝ ║
║ ║
║ 6 wallet tools for Cardano ║
║ ║
╚═══════════════════════════════════════════════════════════════╝
That's it — 6 wallet tools configured for Claude Desktop, Claude Code, Cursor, or Windsurf.
Features
- Submit signed transactions to the Cardano network
- Retrieve wallet addresses and UTxOs
- Fetch token balances (ADA + native tokens)
- Resolve ADAHandles (handle.me)
- Check stake delegation and claimable rewards
- Wallet-aware tools powered by Lucid Evolution
Quick Start
Automatic Setup (Recommended)
Run the interactive setup to automatically configure your MCP client:
npx @indigoprotocol/cardano-mcp setup
This will:
- Ask which client you're using (Claude Desktop, Claude Code, Cursor, Windsurf)
- Prompt for your Blockfrost Project ID
- Prompt for your wallet seed phrase (stored locally, never exposed to LLMs)
- Automatically update your config file
Manual Installation
Install globally:
npm install -g @indigoprotocol/cardano-mcp
Or run directly with npx:
npx @indigoprotocol/cardano-mcp
Docker
docker build -t cardano-mcp .
docker run -p 8000:8000 \
-e PORT=8000 \
-e SEED_PHRASE="your seed phrase here" \
-e BLOCKFROST_PROJECT_ID="your_blockfrost_key" \
cardano-mcp
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
SEED_PHRASE |
Yes | Your wallet seed phrase (comma-separated). Never exposed to LLMs. |
BLOCKFROST_PROJECT_ID |
Yes* | Blockfrost API key from blockfrost.io |
KUPO_URL |
Alt | Kupo endpoint URL (alternative to Blockfrost) |
OGMIOS_URL |
Alt | Ogmios endpoint URL (alternative to Blockfrost) |
PORT |
No | HTTP server port (default: 8000) |
*Either BLOCKFROST_PROJECT_ID or both KUPO_URL + OGMIOS_URL are required.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"cardano": {
"command": "npx",
"args": ["-y", "@indigoprotocol/cardano-mcp"],
"env": {
"SEED_PHRASE": "word1,word2,word3,...",
"BLOCKFROST_PROJECT_ID": "mainnetXXXXXXXXXXXXXXX"
}
}
}
}
Claude Code (CLI)
Add to ~/.claude/settings.json or .claude/settings.json in your project:
{
"mcpServers": {
"cardano": {
"command": "npx",
"args": ["-y", "@indigoprotocol/cardano-mcp"],
"env": {
"SEED_PHRASE": "word1,word2,word3,...",
"BLOCKFROST_PROJECT_ID": "mainnetXXXXXXXXXXXXXXX"
}
}
}
}
Cursor
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level):
{
"mcpServers": {
"cardano": {
"command": "npx",
"args": ["-y", "@indigoprotocol/cardano-mcp"],
"env": {
"SEED_PHRASE": "word1,word2,word3,...",
"BLOCKF
Tools (1)
wallet_toolsA suite of 6 tools for interacting with Cardano wallets, including address lookups, balance checks, and transaction submission.Environment Variables
SEED_PHRASErequiredYour wallet seed phrase (comma-separated)BLOCKFROST_PROJECT_IDrequiredBlockfrost API keyKUPO_URLKupo endpoint URL (alternative to Blockfrost)OGMIOS_URLOgmios endpoint URL (alternative to Blockfrost)PORTHTTP server portConfiguration
{"mcpServers": {"cardano": {"command": "npx", "args": ["-y", "@indigoprotocol/cardano-mcp"], "env": {"SEED_PHRASE": "word1,word2,word3,...", "BLOCKFROST_PROJECT_ID": "mainnetXXXXXXXXXXXXXXX"}}}}