Neo N3 MCP Server
@r3e-network
An MCP server for interacting with the Neo N3 blockchain.
Overview
What is Neo N3 MCP Server?
A production-ready MCP server for Neo N3 blockchain integration, providing 27 tools, 3 fixed resources, and a parameterized block resource for wallet management, transaction lifecycle, asset transfers, contract deployment and interaction, and blockchain queries.
How to use Neo N3 MCP Server?
Install globally via npm install -g @r3e/neo-n3-mcp or locally via npm install @r3e/neo-n3-mcp. Run with npx @r3e/neo-n3-mcp or neo-n3-mcp (if installed globally). Configure using environment variables (NEO_NETWORK, NEO_MAINNET_RPC, NEO_TESTNET_RPC, etc.) or via Docker. MCP client configuration (e.g., Claude/Cursor) uses the neo-n3 server entry with npx -y @r3e/neo-n3-mcp and the desired environment.
Key features of Neo N3 MCP Server?
- 27 tools for blockchain interaction
- 3 fixed resources + parameterized block resource
- Supports mainnet, testnet, or both networks
- Wallet creation, import, and balance queries
- Asset transfers and gas claiming
- Contract deployment, invocation, and lookup
- HTTP endpoints for health, metrics, and API access
- Built-in rate limiting and secure logging
- Docker support with compose configuration
- N3Index-backed name resolution for contracts
Use cases of Neo N3 MCP Server?
- Automate wallet management and asset transfers on Neo N3
- Query blockchain data (blocks, transactions, application logs)
- Deploy and invoke smart contracts via MCP tools or HTTP API
- Monitor and manage NeoFS containers
- Integrate Neo N3 capabilities into AI assistants (Claude, Cursor)
FAQ from Neo N3 MCP Server
What runtime or dependencies are required?
Node.js 18.x, 20.x, or 22.x is required. The server is published on npm and can also run via Docker.
How are private keys handled?
Private keys are encrypted and stored securely. Input validation is enforced, and sensitive operations require explicit confirmation.
Which Neo N3 networks are supported?
Mainnet, testnet, or both simultaneously. When set to both, stdio tool calls default to mainnet; HTTP mode requires a single network.
Where does contract name resolution happen?
The server includes a local famous-contract registry; unrecognized names can be resolved via the N3Index API (https://api.n3index.dev) before on-chain validation.
Is there rate limiting?
Yes, rate limiting is enabled by default (60 requests per minute, 1000 per hour) and can be configured via environment variables.