Geth Proxy
БесплатноНе проверенProvides a proxy bridge to Ethereum JSON-RPC endpoints for querying blockchain data and executing Ethereum operations with built-in safety features, friendly al
Описание
Provides a proxy bridge to Ethereum JSON-RPC endpoints for querying blockchain data and executing Ethereum operations with built-in safety features, friendly aliases, and support for both standard and Geth-specific APIs.
README
Node.js Express.js License: MIT
Introduction
This project provides a Node.js-based proxy server designed to expose an Ethereum JSON-RPC endpoint as a suite of MCP tools. The primary objective is to offer an accessible MCP interface, featuring robust schema validation, clear and concise responses, and a passthrough utility (eth_callRaw) for methods not explicitly defined.
Features
- MCP tool registration, incorporating Zod validation and user-friendly aliases.
- Support for prevalent Ethereum RPC methods, augmented by a selection of administrative, debugging, and transaction pool utilities.
- Automatic conversion of hexadecimal values to decimal for block numbers, balances, and gas prices.
- Secure-by-default transaction broadcasting, with an option to enable raw transaction submission via
ALLOW_SEND_RAW_TX=1. - Dedicated endpoints for health monitoring and service discovery (
/,/health,/mcp). - JSON-RPC passthrough functionality through
eth_callRaw, adhering to established raw transaction submission safety protocols..
Quickstart
Clone and install:
git clone https://github.com/John0n1/ethereum-mcp.git cd ethereum-mcp npm installCopy the env template and edit
GETH_URL:# PowerShell Copy-Item example.env .env # macOS/Linux cp example.env .envStart the server:
npm startVerify connectivity:
curl http://localhost:3000/health?upstream=1List tools:
curl -s http://localhost:3000/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Call a tool:
curl -s http://localhost:3000/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"getBlockNumber","arguments":{}}}'
Configuration
Create a .env file in the root directory:
GETH_URL=http://localhost:8545 # URL to your Geth/Nethermind node's JSON-RPC endpoint
PORT=3000 # Optional: Server port (default: 3000)
ALLOW_SEND_RAW_TX=0 # Optional: Set to 1/true to enable transaction broadcasting
- GETH_URL is required.
- Some admin/debug methods may require Geth flags such as
--http.apior--ws.api.
Usage
- Root:
GET /returns basic metadata and endpoints. - Health:
GET /health(add?upstream=1to verify Geth). - MCP:
POST /mcpsupportsinitialize,tools/list, andtools/call. - Simple REST:
GET /blockNumberreturns the current block number in hex and decimal.
MCP Client Config
If your MCP client uses a config file, point it to the server:
{
"ethereum-mcp": {
"url": "http://localhost:3000/mcp/",
"type": "http",
"headers": {
"Content-Type": "application/json"
}
}
}
Available Tools
Call tools/list for the live list. Highlights include:
Core Ethereum Tools
eth_blockNumber(aliases:getBlockNumber,eth_getBlockNumber)eth_getBalance(alias:getBalance)eth_chainId(alias:getChainId)eth_gasPrice(alias:getGasPrice)eth_syncing(aliases:isSyncing,eth_isSyncing)eth_getBlockByNumber(alias:getBlock)eth_getTransactionByHasheth_call(alias:call)eth_estimateGas(alias:estimateGas)eth_getTransactionReceipt(alias:getTransactionReceipt)eth_getLogs(alias:getLogs)eth_getProof(alias:getProof)eth_sendRawTransaction(alias:sendRawTransaction, gated byALLOW_SEND_RAW_TX)eth_callRaw(alias:ethCallRaw)
Block parameters accept tags like latest/pending or decimal/hex block numbers.
Admin Tools
admin_peers(alias:getPeers)admin_nodeInfo
Debug Tools
debug_metricsdebug_traceTransaction(alias:traceTransaction)debug_blockProfile(alias:blockProfile)debug_getBlockRlp(alias:getBlockRlp)
Txpool Tools
txpool_status
Contributing
Contributions are welcome! Please open an issue or submit a pull request for bug fixes, new tools, or improvements.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Установка Geth Proxy
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/john0n1/ethereum-mcpFAQ
Geth Proxy MCP бесплатный?
Да, Geth Proxy MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Geth Proxy?
Нет, Geth Proxy работает без API-ключей и переменных окружения.
Geth Proxy — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Geth Proxy в Claude Desktop, Claude Code или Cursor?
Открой Geth Proxy на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Geth Proxy with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
