Skip to main content
Glama

cardano-node-mcp-server

An MCP (Model Context Protocol) server that enables LLMs to interact with a Cardano node by wrapping the cardano-cli / torsten-cli command-line interface. Compatible with both the Haskell cardano-node and Torsten implementations.

Features

  • 64 tools covering the full cardano-cli surface area

  • Query — chain tip, UTxOs, protocol parameters, stake distribution, governance state, mempool, treasury, constitution, and more

  • Transaction — build, sign, submit, view, witness, assemble, calculate fees, compute policy IDs

  • Address & Key — generate key pairs, build addresses, compute key hashes

  • Stake — registration, delegation, vote delegation certificates

  • Stake Pool — key generation, registration/retirement certificates, operational certificates

  • Governance — DRep management, voting, governance actions (info, no-confidence, constitution, hard fork, protocol parameter updates, committee updates, treasury withdrawals)

  • Node — cold/KES/VRF key generation, operational certificates

Related MCP server: IndigoProtocol/indigo-mcp

Prerequisites

Installation

git clone https://github.com/michaeljfazio/cardano-node-mcp.git
cd cardano-node-mcp
npm install
npm run build

Configuration

The server is configured via environment variables:

Variable

Default

Description

CARDANO_CLI_PATH

cardano-cli

Path to the CLI binary. Set to torsten-cli for Torsten nodes.

CARDANO_NODE_SOCKET_PATH

node.sock

Path to the cardano-node Unix domain socket.

CARDANO_TESTNET_MAGIC

(unset = mainnet)

Testnet magic number (e.g., 1 for preprod, 2 for preview).

Usage

Claude Code

Add to your Claude Code MCP configuration (~/.claude/mcp.json):

{
  "mcpServers": {
    "cardano-node": {
      "command": "node",
      "args": ["/path/to/cardano-node-mcp/dist/index.js"],
      "env": {
        "CARDANO_CLI_PATH": "cardano-cli",
        "CARDANO_NODE_SOCKET_PATH": "/path/to/node.sock"
      }
    }
  }
}

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "cardano-node": {
      "command": "node",
      "args": ["/path/to/cardano-node-mcp/dist/index.js"],
      "env": {
        "CARDANO_CLI_PATH": "cardano-cli",
        "CARDANO_NODE_SOCKET_PATH": "/path/to/node.sock"
      }
    }
  }
}

Development

npm run dev    # Run with auto-reload via tsx
npm run build  # Compile TypeScript
npm start      # Run compiled server

Tools Reference

See docs/tools.md for a complete reference of all 64 tools with their parameters.

Architecture

The server uses a simple architecture:

LLM ↔ MCP (stdio) ↔ cardano-node-mcp-server ↔ cardano-cli/torsten-cli ↔ cardano-node (Unix socket)

Each MCP tool maps to a CLI subcommand. The server:

  1. Validates input parameters via Zod schemas

  2. Constructs CLI arguments

  3. Executes the CLI binary with CARDANO_NODE_SOCKET_PATH set

  4. Returns stdout as the tool result (or a structured error)

Network and socket configuration are applied globally from environment variables, so individual tool calls don't need to specify them.

License

MIT

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/michaeljfazio/cardano-node-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server