Skip to main content
Glama
dgb-tools

dgb-chain-mcp

by dgb-tools
README.md
# dgb-chain-mcp

**Let any AI agent query DigiByte directly.** An [MCP](https://modelcontextprotocol.io)
server that exposes live DigiByte blockchain data as tools an agent can call:
network health, DigiDollar stats, oracle status, prices, address balances,
transactions, blocks.

Ask Claude *"what's DigiByte's DigiDollar supply?"* or *"is oracle 29 reporting?"*
or *"what's the DGB/USD price?"* — and it answers from the live chain, not from
stale training data.

> **Read-only.** No wallet, no keys, nothing is ever sent. Because it only reads
> public blockchain data, it is safe to point at a **mainnet** node — and that's
> where it's most useful, since the data is real.

## Why this exists

The goal is the one an old comparison-content website ("DGB Insights") reached for
and missed: give AI good information about DigiByte. The website was the wrong
shape — content sitting on a page hoping to get crawled. This is the right shape:
a tool an agent *calls* and gets an authoritative, live answer from.

## Tools

| Tool | Returns |
|------|---------|
| `get_network_overview` | Chain, height, sync, the 5 mining algos + difficulties, hashrate, active softforks. |
| `get_supply` | Circulating DGB supply from the live UTXO set (max 21B). |
| `get_digidollar_stats` | DD supply, DGB collateral, system health, oracle price, active positions. |
| `get_oracle_status` | How many oracles are reporting vs. the roster + consensus threshold, per-oracle detail. |
| `get_price` | Current DGB/USD oracle price, contributing oracles, staleness. |
| `get_address_balance` | DGB balance of any address (via `scantxoutset`, no wallet needed). |
| `get_transaction` | Any transaction by id — confirmations, block, inputs/outputs. |
| `get_block` | Any block by height or hash — time, tx count, algo, difficulty. |

## Setup

Point it at any DigiByte node (v8+; DigiDollar tools need v9.26.4+ with DigiDollar
active). The node needs `txindex=1` for `get_transaction` on arbitrary txids.

```bash
npm install
cp .env.example .env    # your node's RPC url / user / password
```

Then add it to your MCP client (Claude Desktop / Claude Code):

```json
{
  "mcpServers": {
    "dgb-chain": {
      "command": "node",
      "args": ["/absolute/path/to/dgb-chain-mcp/src/server.js"],
      "env": {
        "DGB_RPC_URL": "http://127.0.0.1:14022",
        "DGB_RPC_USER": "your-rpc-user",
        "DGB_RPC_PASSWORD": "your-rpc-password"
      }
    }
  }
}
```

(Mainnet RPC is usually `:14022`; testnet `:14023`/`:14026` depending on config.)

## Related

- [dgb-digidollar-mcp](https://github.com/dgb-tools/dgb-digidollar-mcp) — the payment side: an agent *pays* in DigiDollar.
- [dgb-x402](https://github.com/dgb-tools/dgb-x402) — accept DigiDollar payments from agents.
- **Background:** [the write-up](https://medium.com/@sapidseoblog/i-asked-claude-about-digibytes-digidollar-supply-ed064140a29f) · [DigiByte-Core discussion](https://github.com/orgs/DigiByte-Core/discussions/426)

Install: `npm i -g dgb-chain-mcp` (or run via `npx dgb-chain-mcp`).

Independent community project. Not affiliated with the DigiByte Foundation.
MIT licensed.