JUHE API Marketplace
r3e-network avatar
MCP Server

Neo N3 MCP Server

An MCP server that provides seamless integration with the Neo N3 blockchain, allowing Claude to interact with blockchain data, manage wallets, transfer assets, and invoke smart contracts.

4
GitHub Stars
3/10/2026
Last Updated
MCP Server Configuration
1{
2 "name": "neo-n3",
3 "command": "npx",
4 "args": [
5 "-y",
6 "@r3e/neo-n3-mcp"
7 ],
8 "disabled": false,
9 "env": {
10 "NEO_NETWORK": "testnet",
11 "NEO_TESTNET_RPC": "http://seed1t5.neo.org: 20332",
12 "LOG_LEVEL": "info"
13 }
14}
JSON14 lines
  1. Home
  2. MCP Servers
  3. neo-n3-mcp

README Documentation

MseeP.ai Security Assessment Badge

Neo N3 MCP Server

MCP Server for Neo N3 Blockchain Integration | Version 1.6.4

A production-ready MCP server providing Neo N3 blockchain integration with 26 tools, 3 fixed resources, and a parameterized block resource for wallet management, transaction lifecycle tracking, asset transfers, contract deployment, contract interactions, and blockchain queries.

🚀 Quick Start

Install from NPM

# Install globally
npm install -g @r3e/neo-n3-mcp

# Or install locally
npm install @r3e/neo-n3-mcp

Basic Usage

# Run with default configuration
npx @r3e/neo-n3-mcp

# Or if installed globally
neo-n3-mcp

⚙️ Configuration

1. Environment Variables

The MCP stdio server reads configuration from environment variables.

NEO_NETWORK=both \
NEO_MAINNET_RPC=https://mainnet1.neo.coz.io:443 \
NEO_TESTNET_RPC=http://seed1t5.neo.org:20332 \
LOG_LEVEL=info \
LOG_FILE=./logs/neo-n3-mcp.log \
npx @r3e/neo-n3-mcp

Backward-compatible aliases are also accepted:

  • NEO_MAINNET_RPC_URL
  • NEO_TESTNET_RPC_URL
  • NEO_NETWORK_MODE

When NEO_NETWORK=both, stdio tool calls without an explicit network default to mainnet. The HTTP entrypoint requires NEO_NETWORK=mainnet or NEO_NETWORK=testnet.

2. MCP Client Configuration

Example Claude/Cursor configuration:

{
  "mcpServers": {
    "neo-n3": {
      "command": "npx",
      "args": ["-y", "@r3e/neo-n3-mcp"],
      "disabled": false,
      "env": {
        "NEO_NETWORK": "testnet",
        "NEO_TESTNET_RPC": "http://seed1t5.neo.org:20332",
        "LOG_LEVEL": "info"
      }
    }
  }
}

3. Docker Configuration

Using Docker Hub Image
# Basic run
docker run -p 3000:3000 \
  -e NEO_NETWORK=mainnet \
  -e LOG_CONSOLE=false \
  -e LOG_FILE=/app/logs/neo-n3-mcp.log \
  r3enetwork/neo-n3-mcp:1.6.4

# With environment variables
docker run -p 3000:3000 \
  -e NEO_NETWORK=mainnet \
  -e NEO_MAINNET_RPC=https://mainnet1.neo.coz.io:443 \
  -e NEO_TESTNET_RPC=http://seed1t5.neo.org:20332 \
  -e LOG_LEVEL=info \
  r3enetwork/neo-n3-mcp:1.6.4

# With volume for persistent data
docker run -p 3000:3000 \
  -v $(pwd)/wallets:/app/wallets \
  -v $(pwd)/logs:/app/logs \
  -e NEO_NETWORK=testnet \
  r3enetwork/neo-n3-mcp:1.6.4
Docker Compose

Create a docker-compose.yml:

version: '3.8'
services:
  neo-mcp:
    image: r3enetwork/neo-n3-mcp:1.6.4
    ports:
      - "3000:3000"
    environment:
      - NEO_NETWORK=mainnet
      - NEO_MAINNET_RPC=https://mainnet1.neo.coz.io:443
      - NEO_TESTNET_RPC=http://seed1t5.neo.org:20332
      - LOG_LEVEL=info
      - LOG_FILE=/app/logs/neo-n3-mcp.log
    volumes:
      - ./wallets:/app/wallets
      - ./logs:/app/logs
      - ./config:/app/config
    restart: unless-stopped

Run with:

docker-compose up -d

🐳 Docker Quick Start

# Quick start with Docker Compose
git clone https://github.com/r3e-network/neo-n3-mcp.git
cd neo-n3-mcp
docker-compose -f docker/docker-compose.yml up -d

# Or build and run manually
npm run docker:build
npm run docker:run

# Development mode
npm run docker:up:dev
Production Docker Setup
# Build production image
./scripts/docker-build.sh --tag v1.6.4

# Run with custom configuration
docker run -d \
  --name neo-mcp-prod \
  -p 3000:3000 \
  -e NEO_NETWORK=mainnet \
  -v neo-mcp-logs:/app/logs \
  neo-n3-mcp:v1.6.4
Development Docker Setup
# Build development image
./scripts/docker-build.sh --dev

# Run with hot reload and debugging
docker-compose -f docker/docker-compose.dev.yml up -d

🔧 Configuration Options

Environment Variables

VariableDescriptionDefault
NEO_NETWORKNetwork mode: mainnet, testnet, or bothboth
NEO_MAINNET_RPCMainnet RPC endpointhttps://mainnet1.neo.coz.io:443
NEO_TESTNET_RPCTestnet RPC endpointhttp://seed1t5.neo.org:20332
LOG_LEVELLogging levelinfo
LOG_FILELog file path./logs/neo-n3-mcp.log
RATE_LIMITING_ENABLEDEnable HTTP rate limitingtrue
MAX_REQUESTS_PER_MINUTEPer-minute limit60
MAX_REQUESTS_PER_HOURPer-hour limit1000

Legacy aliases accepted:

  • NEO_MAINNET_RPC_URL
  • NEO_TESTNET_RPC_URL
  • NEO_NETWORK_MODE

🛠️ MCP Client Integration

Claude Desktop / Cursor

{
  "mcpServers": {
    "neo-n3": {
      "command": "npx",
      "args": ["-y", "@r3e/neo-n3-mcp"],
      "disabled": false,
      "env": {
        "NEO_NETWORK": "mainnet",
        "NEO_MAINNET_RPC": "https://mainnet1.neo.coz.io:443",
        "NEO_TESTNET_RPC": "http://seed1t5.neo.org:20332",
        "LOG_LEVEL": "info"
      }
    }
  }
}

Custom MCP Client

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';

const transport = new StdioClientTransport({
  command: 'npx',
  args: ['-y', '@r3e/neo-n3-mcp'],
  env: {
    NEO_NETWORK: 'mainnet',
    NEO_MAINNET_RPC: 'https://mainnet1.neo.coz.io:443',
    NEO_TESTNET_RPC: 'http://seed1t5.neo.org:20332',
  },
});

const client = new Client(
  { name: 'my-neo-client', version: '1.0.0' },
  { capabilities: {} }
);

await client.connect(transport);

📊 Available Tools & Resources

🛠️ Tools (26 available)

  • Network: get_network_mode, set_network_mode
  • Blockchain: get_blockchain_info, get_block_count, get_block, get_transaction, get_application_log, wait_for_transaction
  • Wallets: create_wallet, import_wallet, get_wallet
  • Assets: get_balance, get_unclaimed_gas, get_nep17_transfers, get_nep11_balances, get_nep11_transfers, transfer_assets, estimate_transfer_fees
  • Contracts: invoke_contract, deploy_contract, list_famous_contracts, get_contract_info
  • NeoFS: neofs_create_container, neofs_get_containers
  • Advanced: claim_gas, estimate_invoke_fees

🌐 HTTP Endpoints

  • Health & metrics: /health, /metrics
  • Transactions: /api/transactions/:txid, /api/transactions/:txid/application-log, /api/transactions/:txid/wait
  • Accounts: /api/accounts/:address/balance, /api/accounts/:address/unclaimed-gas, /api/accounts/:address/nep17-transfers, /api/accounts/:address/nep11-balances, /api/accounts/:address/nep11-transfers, POST /api/accounts/claim-gas
  • Blocks: GET /api/blocks/:hashOrHeight
  • Transfers: POST /api/transfers, POST /api/transfers/estimate-fees
  • Contracts: POST /api/contracts/invoke, POST /api/contracts/invoke/estimate-fees, POST /api/contracts/:name/invoke, POST /api/contracts/deploy (requires confirm=true)
  • Wallets: POST /api/wallets, POST /api/wallets/import, GET /api/wallets/:address

📁 Resources (3 fixed + 1 template)

  • Status: neo://network/status, neo://mainnet/status, neo://testnet/status
  • Parameterized Block: neo://block/{height}

🔐 Security

  • Input Validation: All inputs validated and sanitized
  • Confirmation Required: Sensitive operations require explicit confirmation
  • Private Key Security: Keys encrypted and stored securely
  • Network Isolation: Separate configurations for mainnet/testnet
  • Rate Limiting: Configurable rate limiting for production deployments
  • Secure Logging: No sensitive data exposed in logs

⚡ Performance & Reliability

  • Rate Limiting: Built-in rate limiting with configurable thresholds
  • Error Handling: Comprehensive error handling with proper MCP error codes
  • Network Resilience: Automatic fallback mechanisms for RPC calls
  • Production Ready: Systemd service configuration and monitoring support

🔄 Version Management & Release Process

Current Version: 1.6.4

This project follows Semantic Versioning with automated CI/CD pipeline for releases. See our Version Management Guide for detailed information.

🚀 How to Trigger Next Version Release

Method 1: Automated Release Script (Recommended)
# 1. First, do a dry run to see what will happen
./scripts/prepare-release.sh --type minor --dry-run

# 2. If everything looks good, run the actual release preparation
./scripts/prepare-release.sh --type minor

# 3. Push the changes (script will guide you)
git push

# 4. Create GitHub release (triggers full CI/CD pipeline)
gh release create v1.7.0 --generate-notes
Method 2: Manual NPM Version Commands
# Check current version
npm run version:check

# Bump version manually
npm run version:patch   # 1.6.4 → 1.6.5 (bug fixes)
npm run version:minor   # 1.6.4 → 1.7.0 (new features)
npm run version:major   # 1.6.4 → 2.0.0 (breaking changes)

# Then commit and push
git add . && git commit -m "chore: bump version to 1.7.0"
git push
Method 3: GitHub Release (Direct)
# Using GitHub CLI
gh release create v1.7.0 --generate-notes

# Or manually through GitHub web interface:
# 1. Go to https://github.com/r3e-network/neo-n3-mcp/releases
# 2. Click "Create a new release"
# 3. Tag: v1.7.0, Title: "Release v1.7.0"
# 4. Auto-generate release notes
# 5. Publish release

🔄 What Happens When You Create a Release

The automated CI/CD pipeline triggers the following workflow:

Phase 1: Testing & Validation ⚡
  • ✅ Multi-version testing: Node.js 18.x, 20.x, 22.x on ubuntu-latest
  • ✅ Code quality: Linting and type checking
  • ✅ Unit tests: Core functionality validation
  • ✅ Coverage reporting: Automatic upload to Codecov
Phase 2: Build & Docker 🔨
  • ✅ TypeScript compilation: Build validation
  • ✅ Docker builds: Both development and production images
  • ✅ Container testing: Docker functionality validation
  • ✅ Compose validation: Configuration testing
Phase 3: Security & Audit 🔒
  • ✅ Security audit: npm audit for vulnerabilities
  • ✅ Dependency check: audit-ci for security issues
  • ✅ Package updates: Check for outdated dependencies
Phase 4: Publishing 📦 (Only on release)
  • 🚀 NPM Publishing: Automatic package publishing to npm registry
  • 🐳 Docker Publishing: Multi-tag image publishing to Docker Hub
  • 📋 Versioned tags: Semantic versioning with proper tagging
Phase 5: Deployment 🌐 (Only on release)
  • 🎯 Production deployment: Automated deployment notification
  • 📊 Release tracking: Version monitoring and validation

📋 Release Types

TypeVersion ChangeUse CaseExample
patch1.6.4 → 1.6.5Bug fixes, security patches./scripts/prepare-release.sh --type patch
minor1.6.4 → 1.7.0New features, enhancements./scripts/prepare-release.sh --type minor
major1.6.4 → 2.0.0Breaking changes./scripts/prepare-release.sh --type major

🎯 Quick Release Commands

# For next minor release (recommended for new features)
./scripts/prepare-release.sh --type minor

# For patch release (bug fixes)
./scripts/prepare-release.sh --type patch

# For major release (breaking changes)
./scripts/prepare-release.sh --type major

# Test what would happen (dry run)
./scripts/prepare-release.sh --type minor --dry-run

📊 Latest Changes (v1.6.4)

  • ✅ Release Surface Hardening: npm packaging now publishes only the intended runtime assets and consumer metadata
  • ✅ Built Artifact CI Smoke Test: CI now starts the compiled MCP server and validates core MCP surfaces after build
  • ✅ Resource Handler Extraction: MCP resource registration now lives in a focused handler module without changing public URIs or payloads
  • ✅ Clean Checkout Packaging: prepack now rebuilds dist before npm pack, preventing release tarballs from missing compiled output
  • ✅ Versioning Documentation Refresh: release docs and helper scripts now reflect package-driven versioning via src/version.ts

📚 Release Documentation

  • CHANGELOG.md - Complete version history
  • VERSION_MANAGEMENT.md - Detailed release process
  • WORKFLOW.md - CI/CD pipeline documentation

🔐 Required Secrets (Already Configured)

  • ✅ NPM_TOKEN - For NPM registry publishing
  • ✅ DOCKER_USERNAME - Docker Hub username
  • ✅ DOCKER_PASSWORD - Docker Hub access token

📚 Documentation

  • API Reference - Complete API documentation
  • Architecture - System design and components
  • Examples - Practical usage examples and best practices
  • Docker Guide - Comprehensive Docker deployment guide
  • Production Checklist - Production deployment guide
  • Deployment - Deployment configuration
  • Testing - Testing and validation
  • Networks - Network configuration details
  • Version Management - Release process and versioning
  • Release Guide - Quick reference for triggering releases
  • Workflow Guide - CI/CD pipeline documentation
  • Changelog - Version history and changes

📄 License

MIT License - see LICENSE file for details.

🔗 Links

  • NPM Package: https://www.npmjs.com/package/@r3e/neo-n3-mcp
  • Neo N3 Documentation: https://docs.neo.org/
  • MCP Protocol: https://modelcontextprotocol.io/

Quick Install

Quick Actions

View on GitHubView All Servers

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source

Boost your projects with Wisdom Gate LLM API

Supporting GPT-5, Claude-4, DeepSeek v3, Gemini and more.

Enjoy a free trial and save 20%+ compared to official pricing.

Learn More
JUHE API Marketplace

Accelerate development, innovate faster, and transform your business with our comprehensive API ecosystem.

JUHE API VS

  • vs. RapidAPI
  • vs. API Layer
  • API Platforms 2025
  • API Marketplaces 2025
  • Best Alternatives to RapidAPI

For Developers

  • Console
  • Collections
  • Documentation
  • MCP Servers
  • Free APIs
  • Temp Mail Demo

Product

  • Browse APIs
  • Suggest an API
  • Wisdom Gate LLM
  • Global SMS Messaging
  • Temp Mail API

Company

  • What's New
  • Welcome
  • About Us
  • Contact Support
  • Terms of Service
  • Privacy Policy
Featured on Startup FameFeatured on Twelve ToolsFazier badgeJuheAPI Marketplace - Connect smarter, beyond APIs | Product Huntai tools code.marketDang.aiFeatured on ShowMeBestAI
Copyright © 2026 JUHEDATA HK LIMITED - All rights reserved