MCPHub LabRegistryerigontech/erigon
erigontech

erigontech/erigon

Built by erigontech • 3,540 stars

What is erigontech/erigon?

A high-performance MCP server implementation for erigontech/erigon that bridges the gap between the Model Context Protocol and external services. It allows Large Language Models to interact with your data and tools with low latency and native support.

How to use erigontech/erigon?

1. Ensure you have an MCP-compatible client (like Claude Desktop) installed. 2. Configure your server with: npx @modelcontextprotocol/erigontech/erigon 3. Restart your client and verify the new tools are available in the system catalog.
🛡️ Scoped (Restricted)
npx @modelcontextprotocol/erigontech-erigon --scope restricted
🔓 Unrestricted Access
npx @modelcontextprotocol/erigontech-erigon

Key Features

Native MCP Protocol Support
High-performance Data Streaming
Type-safe Tool Definitions
Seamless Environment Integration

Optimized Use Cases

Connecting external databases to AI workflows
Automating workflow tasks via natural language
Augmenting developer productivity with specialized tools

erigontech/erigon FAQ

Q

What is an MCP server?

MCP is an open standard that enables developers to build secure, two-way integrations between AI models and local or remote data sources.

Q

Is this server ready for production?

Yes, this server follows standard MCP security patterns and tool-restricted access.

Official Documentation

View on GitHub

Erigon

Docs Blog Twitter Discord Build status

Erigon is an implementation of Ethereum (execution layer with embeddable consensus layer), on the efficiency frontier.

Download | Documentation | Blog

This README is for people working on the repository. Everything about operating a node — install methods, flags, pruning modes, ports, monitoring, staking — is on the documentation site.

Documentation

The Erigon documentation answers most questions. Useful starting points:

<code>In-depth links are marked by the microscope sign (🔬) </code>

Usage

Erigon3 changes from Erigon2

  • Initial sync doesn't re-exec from 0: downloading 99% LatestState and History
  • Per-Transaction granularity of history (Erigon2 had per-block). Means:
    • Can execute 1 historical transaction - without executing it's block
    • If account X change V1->V2->V1 within 1 block (different transactions): debug_getModifiedAccountsByNumber return it
    • Erigon3 doesn't store Logs (aka Receipts) - it always re-executing historical txn (but it's cheaper)
  • Validator mode: added. --internalcl is enabled by default. to disable use --externalcl.
  • Store most of data in immutable files (segments/snapshots):
    • can symlink/mount latest state to fast drive and history to cheap drive
    • chaindata is tens of gb (22gb on an archive mainnet node). It's ok to rm -rf chaindata. (to prevent grow: recommend --batchSize <= 1G)
  • --prune flags changed: see --prune.mode (default: full, archive: archive, EIP-4444: minimal)
  • Other changes:
    • ExecutionStage included many E2 stages: stage_hash_state, stage_trie, log_index, history_index, trace_index
    • Restart doesn't loose much partial progress: --sync.loop.block.limit=5_000 enabled by default

Logging

Log flags, log levels and log files: Logs and the CLI reference.

Torrent client logging

The torrent client in the Downloader keeps its own file, logs/torrent.log. It is written at whichever is more verbose of --torrent.verbosity and WARN, so warnings and errors always reach it even at the default verbosity. Messages at --torrent.verbosity or above are additionally forwarded to Erigon's own file and console loggers, which emit them only if --log.dir.verbosity and --verbosity are themselves verbose enough.

Block Production (PoS Validator)

Block production is fully supported for Ethereum & Gnosis Chain.

Beacon Chain (Consensus Layer)

Erigon can be used as an Execution Layer for external Consensus Layer clients. See JWT secret and Ethereum with an external CL.

Caplin

Caplin is Erigon's embedded Consensus Layer, enabled by default. Flags, archival modes and Beacon API configuration: Caplin and Caplin for staking.

Why a new Consensus Layer rather than the Engine API: the Engine API delivers blocks one at a time, which does not suit Erigon's bulk model — Erigon is built to handle many blocks simultaneously and to sort and process data in batches. Owning the consensus layer lets Erigon drive block handling on its own terms instead of being paced by the Engine API.

Dev Chain

<code> 🔬 Detailed explanation is DEV_CHAIN.</code>

For developers

Building

Toolchain: Go >= 1.26, GCC 11+ or Clang 13+, 64-bit architecture. On Linux, kernel > v4.

On x86-64 the build targets the x86-64-v2 baseline (requires SSE4.2, POPCNT). Intel Nehalem (2008) and AMD Bulldozer (2011) or newer qualify; older hardware is not supported.

git clone https://github.com/erigontech/erigon.git
cd erigon
make erigon

Binaries land in ./build/bin. Use -j<n> to parallelise the build. Packaged binaries, Docker images and the per-platform install steps are on the installation page; to build a specific release rather than main, check out its tag.

On Windows, build natively (Chocolatey, MinGW, and the MinGW anti-virus false-positive workaround) or under WSL2: Native compilation and WSL.

Executables

make erigon builds the node; make all builds the full suite into ./build/bin. make help lists every target.

CommandDescription
erigonThe node: execution layer with the embedded consensus layer (Caplin)
rpcdaemonJSON-RPC server; runs in-process or standalone against a local or remote Erigon
sentryThe p2p layer as an independent process
txpoolThe transaction pool as an independent process
downloaderSnapshot downloader, and verification of webseed metainfos against the preverified set
integrationSync-stage and datadir maintenance tool — see cmd/integration/Readme.md
evmStandalone EVM for running bytecode, disassembling and full trace logs
mcpStandalone MCP server for Erigon

caplin, capcli, snapshots, rpctest and pics are also built by make all.

Testing

make test-short           # fast unit tests
make test-all             # full test suite
make test-fixtures-cl     # consensus-spec fixtures (also: test-fixtures-eest, test-fixtures-zkevm)
make lint                 # run before opening or updating a PR

docs/TESTING.md covers the release-time incremental-sync verification, which is a separate exercise from the test suite above.

Use as library

# please use git branch name (or commit hash). don't use git tags
go get github.com/erigontech/erigon@main
go mod tidy

Repository docs

JSON-RPC daemon

Most of Erigon's components (txpool, rpcdaemon, snapshots downloader, sentry, ...) can run inside Erigon or as independent processes. Deployment modes, flags and remote (Remote DB) setup: RPC Daemon and cmd/rpcdaemon/README.md.

Default Ports and Firewalls

Every default port, the flags that change them, and firewalling guidance: Default ports and Security.

Hetzner expecting strict firewall rules

Ports to open and the reserved IPv4 ranges to block: Hetzner firewall note.

Run as a separate user - systemd example

Running erigon from build/bin as a separate user requires the binaries to be installed using make DIST=<path> install. You could use $HOME/erigon or /opt/erigon as the installation path, for example:

make DIST=/opt/erigon install

Grab diagnostic for bug report

  • Get stack trace: kill -SIGUSR1 <pid>, get trace and stop: kill -6 <pid>
  • Get CPU profiling: add --pprof flag and run
    go tool pprof -png http://127.0.0.1:6060/debug/pprof/profile\?seconds\=20 > cpu.png
  • Get RAM profiling: add --pprof flag and run
    go tool pprof -inuse_space -png http://127.0.0.1:6060/debug/pprof/heap > mem.png

Run local devnet

<code> 🔬 Detailed explanation is here.</code>

How to change db pagesize

post

Getting in touch

Reporting security issues/concerns

Report vulnerabilities privately via Security → Report a vulnerability. Please don't open a public issue for one — see SECURITY.md.

Getting help

License

Erigon is licensed under the GNU Lesser General Public License v3.0.

Global Ranking

7.7
Trust ScoreMCPHub Index

Based on codebase health & activity.

Manual Config

{ "mcpServers": { "erigontech-erigon": { "command": "npx", "args": ["erigontech-erigon"] } } }