MCPpedia last refreshed this data
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"rust-ethereum-mcp-server": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
This repository provides a minimal Model Context Protocol (MCP)-style server written in Rust. It exposes three tools via JSON-RPC POST:
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in finance
Let AI agents create, discover, and track tokens across chains via Printr.
Real-time financial market data: stocks, forex, crypto, commodities, and economic indicators
MaverickMCP - Personal Stock Analysis MCP Server
Brazilian public procurement (PNCP) and Federal Revenue CNPJ data — 16 tools, 4 prompts.
MCP Security Weekly
Get CVE alerts and security updates for Rust Ethereum Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
This repository provides a minimal Model Context Protocol (MCP)-style server written in Rust. It exposes three tools via JSON-RPC POST:
get_balance: Query ETH or ERC20 balances.get_token_price: Query a token price (via Uniswap V2 simulation; see notes).swap_tokens: Construct and simulate a Uniswap V2 swap using getAmountsOut + estimateGas (does not send transaction).The server uses:
ethers-rs for Ethereum RPC interaction.warp to accept JSON-RPC HTTP POSTs.tokio runtime for async operations.tracing for structured logging.Clone the repository and cd into it.
Copy .env.example to .env and set values:
cp .env.example .env
# Edit .env:
# - ETH_RPC_URL (Infura/Alchemy or other Ethereum RPC endpoint)
# - Optionally set WALLET_PRIVATE_KEY for swap simulations
cargo build
cargo test
# To see debug logs during tests:
cargo test -- --nocapture
cargo run
The server will start on 127.0.0.1:3030 by default.
Request:
{
"jsonrpc": "2.0",
"method": "get_balance",
"params": {
"address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"token": "0x618e75ac90b12c6049ba3b27f5d5f8651b0037f6"
},
"id": 1
}
Response:
{
"jsonrpc": "2.0",
"result": {
"address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"balance": "32258568.67038",
"decimals": 6,
"raw": "32258568670380",
"token": "0x618e75ac90b12c6049ba3b27f5d5f8651b0037f6"
},
"id": 1
}
Request:
{
"jsonrpc": "2.0",
"method": "swap_tokens",
"params": {
"from_token": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"to_token": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
"amount": "1.0",
"slippage": 0.01
},
"id": 1
}
Response:
{
"jsonrpc": "2.0",
"result": {
"from_token": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"to_token": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
"amount_in": "1.0",
"estimated_amount_out": "1875.123456",
"estimated_gas": 120000,
"gas_price_gwei": "33.000000",
"note": "This is a simulation using getAmountsOut + estimate_gas; transaction not sent on-chain"
},
"id": 1
}
Request:
{
"jsonrpc": "2.0",
"method": "get_token_price",
"params": {
"token": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", // WETH
// or "symbol": "WETH"
"in": "USD" // or "ETH"
},
"id": 2
}
Response:
{
"jsonrpc": "2.0",
"id": 2,
"result": "3056.51248"
}
from addresses.rust_decimal to avoid floating point rounding errors converting between wei and token units.get_token_price supports USD-stablecoins (USDT/USDC) or ETH (WETH) as denominators.getAmountsOut + estimateGas to reduce risk before sending on-chain.UniswapService can be reused for price queries, swap simulations, or real on-chain swaps.symbol → token address). It does not query on-chain token lists.