Labsco
MCP SERVER

Neo N3 MCP Server

by r3e-network

Read Neo N3 and Neo X chain state, and build transactions that come back unsigned for a wallet to approve.

Wallets, Signing & Transaction Execution
Summary
The unsigned-proposal boundary is the design decision.

Everything on the default surface stops short of authority: the `build_*` tools simulate the transaction and hand back something a wallet still has to sign, which means an agent can prepare a transfer without being able to move funds. If you turn writes on, the fee ceiling in NEO_MAX_TRANSACTION_FEE_GAS and the durable idempotency journal are the two settings to read before the first run.

What it is

A blockchain server for the Neo ecosystem covering both Neo N3 and Neo X. The default surface is non-custodial: it reads chain and contract state, runs read-only invocations, and constructs transaction proposals — but it holds no key, signs nothing and broadcasts nothing unless you deliberately enable writes.

What you get
  • 56 non-custodial tools by default; every tool both chains implement takes an explicit `chain` of "n3" or "neox", with no silent default
  • Chain reads on both chains: `get_chain_info`, `get_block_height`, `get_block`, `get_transaction`, `get_transaction_status`, `get_balance`
  • Contracts: `call_contract` is strictly read-only, plus `get_contract_info` and `simulate_call`
  • Construction: `build_transfer` and `build_contract_call` run the real read-only simulation and return an unsigned proposal for a wallet to review; `build_vote` and `build_nns_operation` pin the correct native contracts
  • Investigation tools including `analyze_transaction`, which returns stable evidence IDs and grouped fund flows, and `investigate_transactions`, which composes up to twelve confirmed transactions into one block-ordered evidence set
  • Explorer reads such as `explorer_get_address`, `explorer_list_address_transactions`, `explorer_list_token_holders` and `explorer_search`
  • Neo N3 specifics: `get_application_log`, `wait_for_transaction`, `get_unclaimed_gas`, `get_nep17_transfers`, `get_nep11_balances`, `estimate_transfer_fees`, `estimate_invoke_fees`
  • Neo ecosystem reads: `decode_neo_script`, `query_nns`, `query_neofs`, `get_oracle_info`
Requirements

The npm package @r3e/neo-mcp, version 4.0.2, installed globally or run through npx. Node.js >=22. Version 4 speaks only MCP 2026-07-28 and rejects clients using the removed session protocol rather than downgrading. NEO_NETWORK picks mainnet, testnet or both, with RPC endpoints defaulted to public nodes and overridable. Writes stay unregistered unless NEO_ENABLE_WRITES is set, which additionally requires an owner-only signer file at NEO_SIGNER_WIF_FILE.

Setup effort

One command — npx -y @r3e/neo-mcp