
baltsar/monero-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
MCP server for Monero. Give any AI agent a private wallet.
Обзор
This is a bridge between AI agents and the Monero network. It lets any AI agent – OpenClaw, Agent Zero, Claude, or any MCP-compatible framework – check balances, receive payments, and send XMR through a simple tool interface. Think of it as: your AI agent gets its own Monero wallet. MCP (Model Context Protocol) is a standard created by Anthropic that lets AI assistants use external tools. Instead of the AI just generating text, it can call real functions – read files, query databases, or in this case, interact with a Monero wallet. If you've ever wanted your AI agent to autonomously receive and send XMR – whether it's an OpenClaw agent running a service, an Agent Zero instance managing its own budget, or just Claude checking your balance – that's what this does. Because AI agents need privacy more than humans do. When a human makes transactions, there's natural noise – you buy coffee at random times, pay rent irregularly, your patterns are chaotic. An AI agent is different.
README
Показан фрагмент оригинального README. Открыть оригинал.
🔒 Monero MCP Server
The world’s first MCP server for Monero. Give any AI agent a private wallet.
What is this?
This is a bridge between AI agents and the Monero network. It lets any AI agent – OpenClaw, Agent Zero, Claude, or any MCP-compatible framework – check balances, receive payments, and send XMR through a simple tool interface.
Think of it as: your AI agent gets its own Monero wallet.
Wait, what’s MCP?
MCP (Model Context Protocol) is a standard created by Anthropic that lets AI assistants use external tools. Instead of the AI just generating text, it can call real functions – read files, query databases, or in this case, interact with a Monero wallet.
If you’ve ever wanted your AI agent to autonomously receive and send XMR – whether it’s an OpenClaw agent running a service, an Agent Zero instance managing its own budget, or just Claude checking your balance – that’s what this does.
Why Monero? Why not Ethereum or Bitcoin?
Because AI agents need privacy more than humans do.
When a human makes transactions, there’s natural noise – you buy coffee at random times, pay rent irregularly, your patterns are chaotic. An AI agent is different. Every transaction follows logic. On a transparent blockchain, anyone can watch an agent’s on-chain behavior and reverse-engineer its strategy, its triggers, and how to exploit it.
Monero’s privacy-by-default design means an agent’s transaction history, balance, and counterparties are hidden. That’s not a nice-to-have – it’s a security requirement for any autonomous agent handling real value.
Privacy is not a feature for AI agents. It’s infrastructure.
Features
12 tools covering everything an AI agent needs:
| Category | Tools |
|---|---|
| Balance & Info | get_balance, get_address, get_height, get_version |
| Transactions | get_transfers, get_transfer_by_txid |
| Receiving | create_address, make_integrated_address |
| Sending | transfer, sweep_all, confirm_transfer |
| Validation | validate_address |
| Optional (opt-in) | get_exchange_rate (XMR/USD, XMR/EUR; set MONERO_ENABLE_PRICE_FEED=true) |
Read-only by default. Sending XMR requires explicit opt-in via environment variable.
Security: Built for a hostile world
This server assumes the AI agent will encounter prompt injection attacks – malicious text designed to trick the AI into sending funds to an attacker. The AI is not our security boundary. The MCP server is.
Five defense layers, all configurable:
🛡️ Address Allowlist – Lock transfers to known addresses only. Prompt injection can’t send to unknown wallets.
🛡️ Two-Step Confirmation – Transfers return a preview + one-time token. Must call confirm_transfer to execute. Attackers can’t predict the token.
🛡️ Rate Limiting – Cooldown between transfers + daily XMR limit. Limits damage even if everything else fails.
Установка
npx -y monero-mcp@latestКонфигурация
{
"mcpServers": {
"monero": {
"command": "npx",
"args": ["-y", "monero-mcp@latest"],
"env": {
"MONERO_RPC_HOST": "127.0.0.1",
"MONERO_RPC_PORT": "18082",
"MONERO_NETWORK": "mainnet",
"MONERO_ALLOW_TRANSFERS": "false"
}
}
}
}