
Model Context Protocol server for GOAT Network — the BitVM-based Bitcoin L2.
It exposes the chain to any AI agent: JSON-RPC reads, ABI-aware transaction builders, the native BTC L1↔L2 bridge, ERC-8004 agent identity,
and the full @goatnetwork/agentkit action surface (DEX, BitVM2, wgBTC, OFT).
Build-only by design — the server never holds keys; every write returns an unsigned EIP-1559 transaction for external signing.
Zero key custody · multi-network (mainnet / testnet3 / localnet) · ships a postinstall ESM patch for agentkit 0.1.2.
| Network | Chain ID | RPC | Explorer |
|---|---|---|---|
| Alpha Mainnet | 2345 | rpc.goat.network |
explorer |
| Testnet3 | 48816 | rpc.testnet3.goat.network |
explorer |
| Localnet | any | GOAT_RPC_URL=… |
— |
Native token: BTC (18 decimals, wei-style).
npm install -g @purplesquirrel/goat-network-mcp
{
"mcpServers": {
"goat-network": {
"command": "npx",
"args": ["-y", "@purplesquirrel/goat-network-mcp"],
"env": { "GOAT_NETWORK": "mainnet" }
}
}
}
EVM JSON-RPC reads over the L2.
get_chain_info · get_block · get_block_by_hashget_gas_price · get_fee_historyget_balance · get_transaction_countget_code · get_storage_atInspect, call, and broadcast.
get_transaction · get_transaction_receipteth_call · get_logs · estimate_gassend_raw_transaction (pre-signed only)explorer_linkUnsigned EIP-1559 txs for external signing.
build_transaction · build_contract_writebuild_erc20_transfer · build_erc20_approveencode_function_data · decode_function_datadecode_event_log · simulate_transactionL1↔L2 deposit/withdraw, no custody.
system_contracts · bridge_paramsbridge_deposit_op_return · bridge_deposit_statusbridge_withdrawal_statusbuild_bridge_withdraw · build_bridge_rbfbuild_bridge_cancel · build_bridge_refundOn-chain agent registry + reputation.
agent_lookup · agent_identity_addressesagent_get_metadata · agent_get_reputation · agent_get_clientsbuild_agent_register · build_agent_set_uribuild_agent_set_metadatabuild_agent_give_feedback · build_agent_revoke_feedbackFull @goatnetwork/agentkit, build-only.
dex.* — swap, quote, liquidity, positions, feesgoat.bitvm2.* — peg-in/out, stake, pegBTCwgbtc.* · oft.* · goat_token.*wallet.* · erc721.* · bitcoin.*Enabled by env vars — off by default.
faucet.* — set GOAT_FAUCET_URLx402.* — payments & merchant portal, set GOAT_X402_URLv0.4.4 — runnable suites in-repo:
test-126-tools · test-smoke · test-battletest-all-comprehensive · test-mainnet-erc8004 · test-writes
Read-mostly. The only write surface is send_raw_transaction, which broadcasts a transaction you already
signed elsewhere — the server never holds keys. Every build_* and wrapped write returns an unsigned tx;
sign it in your wallet (MetaMask / Phantom / Ledger), then broadcast the signed hex.
github.com/ExpertVagabond/goat-network-mcp · npm · changelog