
DERO MCP Server
Connects Claude to the DERO privacy blockchain via daemon JSON-RPC. Exposes 21 read-only primitives (blocks, transactions, mempool, smart contract state, registered names) plus 7 composite tools that bundle multi-step queries with documentation lookups. Ships with a full DERO docs index covering derod, DVM-BASIC smart contracts, and the Stargate mainnet. Auto-detects local nodes at 127.0.0.1:10102 or falls back to a public endpoint. Runs stdio for Claude Desktop and Cursor, or streamable HTTP for remote integrations. No wallet RPC or transaction submission by design. Useful if you're building on DERO and want Claude to pull live chain data, analyze contracts, or surface docs without leaving the chat.
- GitHub stars
- 2
- tools
- 30
- transport
- STDIO, HTTP
- last updated
- Aug 21, 2026
Install
From registry metadata$ npx add-mcp https://mcp.derod.org/mcp --name deroRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http dero https://mcp.derod.org/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 30 toolsVerified live against the running server on Jun 10, 2026.
dero_daemon_pingDERO daemon connectivity check via DERO.Ping. When to call: as the first step in any chain investigation to confirm the daemon is reachable. Call before dero_get_info if you are unsure whether DERO_DAEMON_URL is correctly configured. Input Requirements: none. Output: a "Pong"...
DERO daemon connectivity check via DERO.Ping. When to call: as the first step in any chain investigation to confirm the daemon is reachable. Call before dero_get_info if you are unsure whether DERO_DAEMON_URL is correctly configured. Input Requirements: none. Output: a "Pong"...
No parameters. Call it with no arguments.
dero_daemon_echoEcho strings through the daemon via DERO.Echo. Useful for round-trip sanity checks. When to call: when you need to confirm that string payloads reach the daemon intact (e.g. before debugging a malformed call to a more complex tool). PREFER dero_daemon_ping for a lighter-weight...1 params
Echo strings through the daemon via DERO.Echo. Useful for round-trip sanity checks. When to call: when you need to confirm that string payloads reach the daemon intact (e.g. before debugging a malformed call to a more complex tool). PREFER dero_daemon_ping for a lighter-weight...
words*arraydero_get_infoGet DERO daemon and chain metadata: height, topoheight, stableheight, difficulty, version, network, mempool size, and total supply (DERO.GetInfo). When to call: first thing in any chain-state investigation or sync-health check. Call this BEFORE dero_get_sc, dero_get_transactio...
Get DERO daemon and chain metadata: height, topoheight, stableheight, difficulty, version, network, mempool size, and total supply (DERO.GetInfo). When to call: first thing in any chain-state investigation or sync-health check. Call this BEFORE dero_get_sc, dero_get_transactio...
No parameters. Call it with no arguments.
dero_get_heightGet the current block heights: tip height, stable height (finalized), and topoheight (canonical ordering) via DERO.GetHeight. When to call: when you need a quick height snapshot without the full chain-info payload. PREFER dero_get_info when you also need network, version, or d...
Get the current block heights: tip height, stable height (finalized), and topoheight (canonical ordering) via DERO.GetHeight. When to call: when you need a quick height snapshot without the full chain-info payload. PREFER dero_get_info when you also need network, version, or d...
No parameters. Call it with no arguments.
dero_get_block_countGet the total block count via DERO.GetBlockCount. This is a tip count, not a topoheight. When to call: when you need just the block count (e.g. for delta math against a reference height). PREFER dero_get_height when you need tip and stable heights together. Input Requirements:...
Get the total block count via DERO.GetBlockCount. This is a tip count, not a topoheight. When to call: when you need just the block count (e.g. for delta math against a reference height). PREFER dero_get_height when you need tip and stable heights together. Input Requirements:...
No parameters. Call it with no arguments.
dero_get_last_block_headerGet the header of the current tip block via DERO.GetLastBlockHeader (no full block body). When to call: when you need tip block metadata (hash, miner, timestamp, difficulty) without the transactions or miner_tx payload. PREFER dero_get_block when you need transactions or the m...
Get the header of the current tip block via DERO.GetLastBlockHeader (no full block body). When to call: when you need tip block metadata (hash, miner, timestamp, difficulty) without the transactions or miner_tx payload. PREFER dero_get_block when you need transactions or the m...
No parameters. Call it with no arguments.
dero_get_blockFetch a full block (header + miner_tx + transactions + topo position) by height OR hash via DERO.GetBlock. When to call: when investigating a specific block or verifying a transaction's inclusion. Call dero_get_height first if you do not have a target height. PREFER citing der...2 params
Fetch a full block (header + miner_tx + transactions + topo position) by height OR hash via DERO.GetBlock. When to call: when investigating a specific block or verifying a transaction's inclusion. Call dero_get_height first if you do not have a target height. PREFER citing der...
hashstringheightintegerdero_get_block_header_by_topo_heightGet a block header by topological height (canonical ordering) via DERO.GetBlockHeaderByTopoHeight. When to call: when you need a header keyed by topo position rather than chain height. Topoheight is the canonical ordering used by DERO indexers; height is the consensus block he...1 params
Get a block header by topological height (canonical ordering) via DERO.GetBlockHeaderByTopoHeight. When to call: when you need a header keyed by topo position rather than chain height. Topoheight is the canonical ordering used by DERO indexers; height is the consensus block he...
topoheight*integerdero_get_block_header_by_hashGet a block header by its 64-char hex hash via DERO.GetBlockHeaderByHash. When to call: when you have a block hash (e.g. from a tx confirmation) and need its header without the full block body. PREFER dero_get_block when you also need the txs or miner_tx. Input Requirements (C...1 params
Get a block header by its 64-char hex hash via DERO.GetBlockHeaderByHash. When to call: when you have a block hash (e.g. from a tx confirmation) and need its header without the full block body. PREFER dero_get_block when you also need the txs or miner_tx. Input Requirements (C...
hash*stringdero_get_tx_poolList pending mempool transaction hashes via DERO.GetTxPool. When to call: when checking unconfirmed activity, watching for a specific tx to land, or estimating mempool pressure. NOTE: `tx_hashes` may be `null` or an empty array when the mempool is empty — treat both as "no pen...
List pending mempool transaction hashes via DERO.GetTxPool. When to call: when checking unconfirmed activity, watching for a specific tx to land, or estimating mempool pressure. NOTE: `tx_hashes` may be `null` or an empty array when the mempool is empty — treat both as "no pen...
No parameters. Call it with no arguments.
dero_get_random_addressGet random registered addresses from the chain (used for ring construction in private transfers) via DERO.GetRandomAddress. When to call: when building a transfer ring in external wallet tooling, or sampling chain participants. Optional asset SCID limits sampling to holders of...1 params
Get random registered addresses from the chain (used for ring construction in private transfers) via DERO.GetRandomAddress. When to call: when building a transfer ring in external wallet tooling, or sampling chain participants. Optional asset SCID limits sampling to holders of...
scidstringdero_get_transactionFetch one or more transactions by hash via DERO.GetTransaction. Each tx is returned with confirmation status, block hash, and (optionally) decoded JSON fields. When to call: when tracing a tx by hash. Pair with dero_get_sc when the tx invokes a contract. PREFER citing dero_doc...2 params
Fetch one or more transactions by hash via DERO.GetTransaction. Each tx is returned with confirmation status, block hash, and (optionally) decoded JSON fields. When to call: when tracing a tx by hash. Pair with dero_get_sc when the tx invokes a contract. PREFER citing dero_doc...
decode_as_jsonintegertxs_hashes*arraydero_get_encrypted_balanceGet the ENCRYPTED balance blob for a DERO address at a topo height via DERO.GetEncryptedBalance. CRITICAL: this returns an opaque encrypted blob, NOT a cleartext balance. Only the wallet holding the spend key can decrypt it. Do NOT present the encrypted bytes as a balance to t...3 params
Get the ENCRYPTED balance blob for a DERO address at a topo height via DERO.GetEncryptedBalance. CRITICAL: this returns an opaque encrypted blob, NOT a cleartext balance. Only the wallet holding the spend key can decrypt it. Do NOT present the encrypted bytes as a balance to t...
address*stringscidstringtopoheight*integerdero_get_scRead smart contract state (code and/or stored variables) by SCID via DERO.GetSC. This is the primary entry point for any contract inspection on DERO. When to call: as the first step in any DVM contract investigation. Pair with dero_docs_search("DVM-BASIC") to interpret the ret...4 params
Read smart contract state (code and/or stored variables) by SCID via DERO.GetSC. This is the primary entry point for any contract inspection on DERO. When to call: as the first step in any DVM contract investigation. Pair with dero_docs_search("DVM-BASIC") to interpret the ret...
codebooleanscid*stringtopoheightintegervariablesbooleandero_get_gas_estimateEstimate gas (compute + storage) for transfers, SC deploys, or SC invokes via DERO.GetGasEstimate. This is a PRE-FLIGHT check; nothing is submitted. When to call: BEFORE any wallet-side transfer/scinvoke (using external wallet tooling) to size fees, OR when explaining deploy c...4 params
Estimate gas (compute + storage) for transfers, SC deploys, or SC invokes via DERO.GetGasEstimate. This is a PRE-FLIGHT check; nothing is submitted. When to call: BEFORE any wallet-side transfer/scinvoke (using external wallet tooling) to size fees, OR when explaining deploy c...
scstringsc_rpcarraysignerstringtransfersarraydero_name_to_addressResolve a DERO on-chain registered name to its address via DERO.NameToAddress. When to call: when a user supplies a human-readable name (e.g. "myname") instead of a `dero1.../deto1...` address. Input Requirements (CRITICAL): - `name` MUST be a non-empty string. Resolution is c...2 params
Resolve a DERO on-chain registered name to its address via DERO.NameToAddress. When to call: when a user supplies a human-readable name (e.g. "myname") instead of a `dero1.../deto1...` address. Input Requirements (CRITICAL): - `name` MUST be a non-empty string. Resolution is c...
name*stringtopoheight*integerdero_get_block_templateGet a mining block template for a miner payout address via DERO.GetBlockTemplate. When to call: ONLY when you are actually mining. PREFER dero_get_last_block_header for general chain-tip inspection. Input Requirements (CRITICAL): - `wallet_address` MUST be a valid DERO address...3 params
Get a mining block template for a miner payout address via DERO.GetBlockTemplate. When to call: ONLY when you are actually mining. PREFER dero_get_last_block_header for general chain-tip inspection. Input Requirements (CRITICAL): - `wallet_address` MUST be a valid DERO address...
blockbooleanminerstringwallet_address*stringdero_decode_proof_stringDecode any DERO bech32 string (`dero…`, `deto…`, `deroi…`, `detoi…`, or `deroproof…`) into its constituent parts: HRP, network, compressed public key, and any embedded RPC arguments (CBOR-encoded). For `deroproof…` strings the "public key" is a derived blinder point used in th...1 params
Decode any DERO bech32 string (`dero…`, `deto…`, `deroi…`, `detoi…`, or `deroproof…`) into its constituent parts: HRP, network, compressed public key, and any embedded RPC arguments (CBOR-encoded). For `deroproof…` strings the "public key" is a derived blinder point used in th...
proof_string*stringdero_docs_searchSearch the bundled DERO documentation index across derod, tela, hologram, and deropay (145+ pages). In-process — no network round trip. When to call: when you need authoritative docs to answer a DERO question, OR before constructing a citation in your response. Call this BEFOR...4 params
Search the bundled DERO documentation index across derod, tela, hologram, and deropay (145+ pages). In-process — no network round trip. When to call: when you need authoritative docs to answer a DERO question, OR before constructing a citation in your response. Call this BEFOR...
limitintegerproductstringderod · tela · hologram · deropayquery*stringsectionstringdero_docs_get_pageGet a single bundled docs page by slug, with plain-text content and headings. When to call: AFTER dero_docs_search has returned a candidate slug, OR when you have a known slug from a prior citation. PREFER dero_docs_search first when you only have a topic in mind. Input Requir...3 params
Get a single bundled docs page by slug, with plain-text content and headings. When to call: AFTER dero_docs_search has returned a candidate slug, OR when you have a known slug from a prior citation. PREFER dero_docs_search first when you only have a topic in mind. Input Requir...
offsetintegerproductstringderod · tela · hologram · deropayslug*stringdero_docs_listList indexed bundled docs pages across all four products with slugs, titles, and canonical URLs. When to call: when surveying available docs (e.g. "what TELA tutorials exist?"), OR when you need a slug catalog before invoking dero_docs_get_page. PREFER dero_docs_search when yo...2 params
List indexed bundled docs pages across all four products with slugs, titles, and canonical URLs. When to call: when surveying available docs (e.g. "what TELA tutorials exist?"), OR when you need a slug catalog before invoking dero_docs_get_page. PREFER dero_docs_search when yo...
limitintegerproductstringderod · tela · hologram · deropaydiagnose_chain_healthComposite: run a four-step chain (DERO.Ping → DERO.GetInfo → DERO.GetHeight → DERO.GetTxPool) and return a single narrative health report with chain metadata, mempool snapshot, machine-readable signals, and curated docs citations. When to call: as the first step in any chain-s...1 params
Composite: run a four-step chain (DERO.Ping → DERO.GetInfo → DERO.GetHeight → DERO.GetTxPool) and return a single narrative health report with chain metadata, mempool snapshot, machine-readable signals, and curated docs citations. When to call: as the first step in any chain-s...
include_tx_poolbooleanexplain_smart_contractComposite: fetch a DERO smart contract (code + variables + balances) and return its function surface, a classification of the contract pattern (tela_index | tela_doc | token | registry | minimal | generic), a plain-language narrative, and curated DVM docs citations re-ordered...2 params
Composite: fetch a DERO smart contract (code + variables + balances) and return its function surface, a classification of the contract pattern (tela_index | tela_doc | token | registry | minimal | generic), a plain-language narrative, and curated DVM docs citations re-ordered...
scid*stringtopoheightintegertela_inspectComposite: fetch a TELA contract by SCID (DERO.GetSC code + variables) and parse it as either a TELA-INDEX-1 app manifest or a TELA-DOC-1 file contract, auto-detecting which standard it is from the stored keys. TELA is DERO's on-chain web-app platform: an INDEX is the app mani...2 params
Composite: fetch a TELA contract by SCID (DERO.GetSC code + variables) and parse it as either a TELA-INDEX-1 app manifest or a TELA-DOC-1 file contract, auto-detecting which standard it is from the stored keys. TELA is DERO's on-chain web-app platform: an INDEX is the app mani...
scid*stringtopoheightintegertela_get_doc_contentComposite: fetch the actual file content stored in a TELA-DOC-1 contract. A DOC's file (HTML/CSS/JS/...) lives inside a DVM-BASIC comment block in the contract code — NOT in a stored variable — so this tool fetches DERO.GetSC, confirms the SCID is a DOC, and extracts the file...3 params
Composite: fetch the actual file content stored in a TELA-DOC-1 contract. A DOC's file (HTML/CSS/JS/...) lives inside a DVM-BASIC comment block in the contract code — NOT in a stored variable — so this tool fetches DERO.GetSC, confirms the SCID is a DOC, and extracts the file...
offsetintegerscid*stringtopoheightintegerrecommend_docs_pathComposite: take a natural-language intent, fan out parallel scoped searches across the bundled docs for all four DERO products (derod, tela, hologram, deropay), boost any product_hint matches by 1.5×, and return a ranked recommendation list with per-result rationale plus ready...3 params
Composite: take a natural-language intent, fan out parallel scoped searches across the bundled docs for all four DERO products (derod, tela, hologram, deropay), boost any product_hint matches by 1.5×, and return a ranked recommendation list with per-result rationale plus ready...
intent*stringlimit_per_productintegerproduct_hintstringderod · tela · hologram · deropayestimate_deploy_costComposite: send a DVM-BASIC contract source to the daemon's gas estimator, then return the raw estimate alongside a plain-text breakdown (what each gas number means), the parsed contract surface, and curated DVM deploy docs as citations. When to call: BEFORE asking a wallet to...3 params
Composite: send a DVM-BASIC contract source to the daemon's gas estimator, then return the raw estimate alongside a plain-text breakdown (what each gas number means), the parsed contract surface, and curated DVM deploy docs as citations. When to call: BEFORE asking a wallet to...
include_breakdownbooleansc*stringsignerstringtrace_transaction_with_contextComposite: look up a DERO transaction by hash, classify its confirmation status (confirmed | mempool | unknown) and kind (sc_install | transfer_or_invocation | coinbase | unknown), extract the SC surface inline when the tx is a contract install, and stitch the right DERO tx +...3 params
Composite: look up a DERO transaction by hash, classify its confirmation status (confirmed | mempool | unknown) and kind (sc_install | transfer_or_invocation | coinbase | unknown), extract the SC surface inline when the tx is a contract install, and stitch the right DERO tx +...
decodebooleaninclude_sc_contextbooleantx_hash*stringaudit_chain_artifact_claimComposite: audit a chain artifact (block topoheight, block hash, TX hash, and/or proof string) end-to-end. Returns a verdict (`cited_in_false_claim` | `clean`), the actual on-chain facts (block reward, TX acceptance status), an optional proof-string decode, a relayable narrati...5 params
Composite: audit a chain artifact (block topoheight, block hash, TX hash, and/or proof string) end-to-end. Returns a verdict (`cited_in_false_claim` | `clean`), the actual on-chain facts (block reward, TX acceptance status), an optional proof-string decode, a relayable narrati...
block_hashstringinclude_forge_demobooleanproof_stringstringtopoheightintegertx_hashstringdero_forge_demo_proofComposite: build a fresh `deroproof…` display object for ANY chosen transaction, ring slot, and amount — including negative amounts that uint64-wrap into the trillions. The forged string is constructed locally from public chain data (no wallet, no keys, no broadcast). On an un...4 params
Composite: build a fresh `deroproof…` display object for ANY chosen transaction, ring slot, and amount — including negative amounts that uint64-wrap into the trillions. The forged string is constructed locally from public chain data (no wallet, no keys, no broadcast). On an un...
amount_derostringring_slotintegertx_hashstringtx_hexstringSponsors
Readme
DERO MCP server
A read-only Model Context Protocol server for the DERO privacy blockchain — a private-by-default Layer 1 with encrypted balances, private smart contracts (DVM-BASIC), and no public transaction graph. 21 daemon primitives + 12 composite tools (including TELA on-chain app inspection and dURL→SCID discovery), with a bundled documentation index spanning derod, tela, hologram, and deropay.
Registry listing: io.github.DHEBP/dero-mcp-server · Version: 0.6.0 · Transports: stdio (default, npm package) · streamable-http (--http, for self-hosting)
What is an MCP server
Details
- Repository
- github.com/dhebp/dero-mcp-server
- Website
- derod.org
- Package
dero-mcp-server- Transport
- STDIO, HTTP
- Registry
- MCP registry, active
- Resources
- 4
- Prompts
- 5
- Tools verified
- Jun 10, 2026