Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.ExpertVagabond/hedera-mcp

NPM · @PURPLESQUIRREL/HEDERA-MCP · SCANNED SEP 22

Build-only Hedera (Hashgraph) MCP — 73 tools across all core services plus analytics reads.

0 this week 0 Trust /100

Recent critical change

CVE-2026-41242 affects this package (2 Aug 2026). See the changelog before you install this server.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security73
Provenance & Transparency45
Schema Quality & AI Usability78
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 4522 tokens (~60/item across 75 items; 73 tools + 2 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management90
  • Stability observed for 27 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage80
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 40% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 13 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "hedera_transfer_hbar" implies "transfer" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 74 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.ExpertVagabond/hedera-mcp server?

io.github.ExpertVagabond/hedera-mcp runs locally as an npm package, launched with npx -y @purplesquirrel/hedera-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @purplesquirrel/hedera-mcp

# add to Claude Code
claude mcp add expertvagabond-hedera-mcp -- npx -y @purplesquirrel/hedera-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "expertvagabond-hedera-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@purplesquirrel/hedera-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "expertvagabond-hedera-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@purplesquirrel/hedera-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add expertvagabond-hedera-mcp -- npx -y @purplesquirrel/hedera-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "expertvagabond-hedera-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@purplesquirrel/hedera-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add expertvagabond-hedera-mcp --command npx --arg -y --arg @purplesquirrel/hedera-mcp
# ~/.hermes/config.yaml
mcp_servers:
  expertvagabond-hedera-mcp:
    command: "npx"
    args: ["-y", "@purplesquirrel/hedera-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "expertvagabond-hedera-mcp": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@purplesquirrel/hedera-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add expertvagabond-hedera-mcp -t stdio -c npx -a -y @purplesquirrel/hedera-mcp
// mcp.json
{
  "mcpServers": {
    "expertvagabond-hedera-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@purplesquirrel/hedera-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 0
    • Stability: pass → 0.80 functional
  • 18 Sept 26 0
    • Stability: 0.97 → pass security
  • 16 Sept 26 0
    • Security disclosure: unverified → fail functional
  • 14 Sept 26 0
    • Security disclosure: fail → unverified functional
  • 12 Sept 26 0
    • Stability: pass → 0.80 functional
  • 11 Sept 26 0
    • Stability: 0.97 → pass security
  • 5 Sept 26 0
    • Stability: pass → 0.80 functional
  • 4 Sept 26 0
    • Stability: 0.97 → pass security
    • Security disclosure: unverified → fail functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 22 Sept 2026 · Analysed npm/@purplesquirrel/hedera-mcp@0.5.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 15 findings
ID CVE Severity Vector Fix available
GHSA-5375-pq7m-f5r2 CVE-2026-48068 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-99f4-grh7-6pcq CVE-2026-48069 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-848j-6mx2-7j84 CVE-2025-14505 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L no
GHSA-2pr8-phx7-x9h3 CVE-2026-44294 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
GHSA-66ff-xgx4-vchm CVE-2026-44293 high yes
GHSA-685m-2w69-288q CVE-2026-44289 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-75px-5xx7-5xc7 CVE-2026-44291 high CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H yes
GHSA-f38q-mgvj-vph7 CVE-2026-54269 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
GHSA-fx83-v9x8-x52w CVE-2026-44292 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N yes
GHSA-j3f2-48v5-ccww CVE-2026-59877 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
GHSA-jggg-4jg4-v7c6 CVE-2026-45740 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
GHSA-jvwf-75h9-cwgg CVE-2026-44290 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-q6x5-8v7m-xcrf CVE-2026-44288 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N yes
GHSA-wcpc-wj8m-hjx6 CVE-2026-48712 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-xq3m-2v4x-88gg CVE-2026-41242 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 228 packages
Packages resolved 228
Deprecated 1
Stale 67
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 73 exposed · ~4,495 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
hedera_append_file ~53

Build (unsigned) an append to an existing file (for bytecode larger than one transaction).

NameTypeReqDescription
contentsstringyes
fileIdstringyes
payerAccountIdstring

No output schema declared.

No examples provided.

hedera_approve_hbar_allowance ~86

Build (unsigned) an HBAR allowance granting a spender the right to spend from an owner account.

NameTypeReqDescription
amountHbarnumberyesAllowance amount in HBAR
ownerAccountIdstringOwner (defaults to payer)
payerAccountIdstring
spenderAccountIdstringyesSpender granted the allowance

No output schema declared.

No examples provided.

hedera_approve_nft_allowance ~73

Build (unsigned) an NFT allowance for all serials of a collection (approve-for-all).

NameTypeReqDescription
ownerAccountIdstringOwner (defaults to payer)
payerAccountIdstring
spenderAccountIdstringyes
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_approve_token_allowance ~80

Build (unsigned) a fungible-token spending allowance for a spender.

NameTypeReqDescription
amountintegeryesAllowance amount in base units
ownerAccountIdstringOwner (defaults to payer)
payerAccountIdstring
spenderAccountIdstringyes
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_associate_token ~53

Build (unsigned) a token association so an account can hold the given token(s).

NameTypeReqDescription
accountIdstringyes
payerAccountIdstring
tokenIdsarrayyes

No output schema declared.

No examples provided.

hedera_burn_token ~69

Build (unsigned) a burn of fungible amount or specific NFT serials.

NameTypeReqDescription
amountintegerFungible amount to burn
payerAccountIdstring
serialsarrayNFT serials to burn
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_create_account ~120

Build (unsigned) a new Hedera account with a given public key and optional initial HBAR balance.

NameTypeReqDescription
initialBalanceHbarnumberInitial balance in HBAR (default 0)
maxAutomaticTokenAssociationsintegerAuto token-association slots
memostringAccount memo
payerAccountIdstringPayer (defaults to HEDERA_OPERATOR_ID)
publicKeystringyesED25519 or ECDSA public key (DER or hex) controlling the new account

No output schema declared.

No examples provided.

hedera_create_file ~80

Build (unsigned) a new file. Useful for storing compiled contract bytecode before deployment.

NameTypeReqDescription
contentsstringyesFile contents (UTF-8 text or hex bytecode)
keystringPublic key controlling the file (enables append/update/delete)
memostring
payerAccountIdstring

No output schema declared.

No examples provided.

hedera_create_fungible_token ~277

Build (unsigned) a new fungible token (HTS). Treasury defaults to the payer.

NameTypeReqDescription
adminKeystringAdmin public key (enables future updates)
customFeeHbarnumberOptional fixed HBAR fee charged on each transfer
decimalsintegerDecimals (default 0)
feeCollectorAccountIdstringAccount that collects the custom fee (defaults to treasury)
freezeKeystringFreeze public key (enables freeze/unfreeze)
initialSupplyintegerInitial supply in base units (default 0)
kycKeystringKYC public key (enables grant/revoke KYC)
maxSupplyintegerRequired if supplyType=finite
memostring
namestringyesToken name
pauseKeystringPause public key (enables pause/unpause)
payerAccountIdstring
supplyKeystringSupply public key (enables mint/burn)
supplyTypestringDefault infinite
symbolstringyesToken symbol
treasuryAccountIdstringTreasury (defaults to payer)
wipeKeystringWipe public key (enables wipe)

No output schema declared.

No examples provided.

hedera_create_nft_collection ~176

Build (unsigned) a new non-fungible token collection (HTS). A supply key is required to mint.

NameTypeReqDescription
adminKeystring
maxSupplyinteger
memostring
namestringyes
payerAccountIdstring
royaltyCollectorAccountIdstringRoyalty collector (defaults to treasury)
royaltyDenominatorintegerRoyalty fee denominator
royaltyFallbackHbarnumberFallback HBAR fee when no fungible value is exchanged
royaltyNumeratorintegerRoyalty fee numerator (use with denominator)
supplyKeystringyesSupply public key — required to mint NFTs
symbolstringyes
treasuryAccountIdstring

No output schema declared.

No examples provided.

hedera_create_schedule ~124

Build (unsigned) a scheduled HBAR transfer — wraps an inner transfer so multiple parties can sign before it executes.

NameTypeReqDescription
adminKeystringAdmin public key (enables schedule deletion)
amountHbarnumberyesAmount in HBAR
fromAccountIdstringSender (defaults to payer)
memostring
payerAccountIdstring
schedulePayerAccountIdstringAccount that pays when the schedule executes
toAccountIdstringyesRecipient of the scheduled transfer

No output schema declared.

No examples provided.

hedera_create_topic ~77

Build (unsigned) a new HCS topic for ordered, timestamped messages.

NameTypeReqDescription
adminKeystringAdmin public key (enables update/delete)
memostringTopic memo
payerAccountIdstring
submitKeystringSubmit public key (restricts who can post)

No output schema declared.

No examples provided.

hedera_decode_transaction ~50

Decode a base64 transaction (e.g. one built by this server) into a human-readable summary — useful for review before signing.

NameTypeReqDescription
transactionBase64stringyesBase64 transaction bytes

No output schema declared.

No examples provided.

hedera_delete_account ~61

Build (unsigned) an account deletion, transferring the remaining balance to another account.

NameTypeReqDescription
accountIdstringyesAccount to delete
payerAccountIdstring
transferAccountIdstringyesAccount that receives the remaining balance

No output schema declared.

No examples provided.

hedera_delete_contract ~59

Build (unsigned) a contract deletion, transferring any balance to an account.

NameTypeReqDescription
contractIdstringyes
payerAccountIdstring
transferAccountIdstringyesAccount that receives the contract's remaining balance

No output schema declared.

No examples provided.

hedera_delete_file ~35

Build (unsigned) a file deletion.

NameTypeReqDescription
fileIdstringyes
payerAccountIdstring

No output schema declared.

No examples provided.

hedera_delete_schedule ~42

Build (unsigned) a deletion of a scheduled transaction (requires admin key).

NameTypeReqDescription
payerAccountIdstring
scheduleIdstringyes

No output schema declared.

No examples provided.

hedera_delete_token ~42

Build (unsigned) a token deletion (requires the admin key to sign).

NameTypeReqDescription
payerAccountIdstring
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_delete_topic ~43

Build (unsigned) a deletion of an HCS topic (requires admin key).

NameTypeReqDescription
payerAccountIdstring
topicIdstringyes

No output schema declared.

No examples provided.

hedera_deploy_contract ~131

Build (unsigned) a contract deployment from bytecode already stored in a Hedera File (see hedera_create_file).

NameTypeReqDescription
adminKeystringAdmin public key for the contract
bytecodeFileIdstringyesFile id holding the compiled bytecode (hex)
constructorParamsBase64stringABI-encoded constructor params as base64 (omit if none)
gasintegeryesGas limit, e.g. 100000
initialBalanceHbarnumberInitial contract balance in HBAR
payerAccountIdstring

No output schema declared.

No examples provided.

hedera_dissociate_token ~46

Build (unsigned) a token dissociation.

NameTypeReqDescription
accountIdstringyes
payerAccountIdstring
tokenIdsarrayyes

No output schema declared.

No examples provided.

hedera_execute_contract ~166

Build (unsigned) a state-changing contract call. Pass { abi, functionName, args } for automatic encoding, or raw functionParametersBase64.

NameTypeReqDescription
abiarrayContract ABI (JSON array) — enables auto encode/decode
argsarrayFunction arguments (used with abi)
contractIdstringyesContract id (0.0.x) or EVM address
functionNamestringFunction name to call (used with abi)
functionParametersBase64stringFallback: ABI-encoded calldata (selector + args) as base64
gasintegeryes
payableAmountHbarnumberHBAR to send with the call
payerAccountIdstring

No output schema declared.

No examples provided.

hedera_freeze_token_account ~51

Build (unsigned): Freeze an account for a token (blocks transfers).

NameTypeReqDescription
accountIdstringyes
payerAccountIdstring
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_account_allowances ~36

Read an account's active HBAR (crypto) allowances from the Mirror Node.

NameTypeReqDescription
accountIdstringyes

No output schema declared.

No examples provided.

hedera_get_account_balance ~39

Read an account's HBAR and token balances from the Mirror Node.

NameTypeReqDescription
accountIdstringyesAccount id or EVM address

No output schema declared.

No examples provided.

hedera_get_account_by_evm ~48

Resolve a Hedera account from a 0x EVM address via the Mirror Node.

NameTypeReqDescription
evmAddressstringyes0x-prefixed EVM address

No output schema declared.

No examples provided.

hedera_get_account_info ~47

Read full account info (key, balance, memo, auto-renew, associations) from the Mirror Node.

NameTypeReqDescription
accountIdstringyesAccount id or EVM address

No output schema declared.

No examples provided.

hedera_get_account_nft_allowances ~39

Read an account's active NFT (approve-for-all) allowances from the Mirror Node.

NameTypeReqDescription
accountIdstringyes

No output schema declared.

No examples provided.

hedera_get_account_nfts ~46

List NFTs owned by an account from the Mirror Node.

NameTypeReqDescription
accountIdstringyesAccount id
limitintegerMax NFTs (default 25)

No output schema declared.

No examples provided.

hedera_get_account_token_allowances ~35

Read an account's active fungible-token allowances from the Mirror Node.

NameTypeReqDescription
accountIdstringyes

No output schema declared.

No examples provided.

hedera_get_account_transactions ~37

List recent transactions for an account from the Mirror Node.

NameTypeReqDescription
accountIdstringyes
limitinteger

No output schema declared.

No examples provided.

hedera_get_block ~35

Read a block by number or hash from the Mirror Node.

NameTypeReqDescription
numberOrHashstringyesBlock number or hash

No output schema declared.

No examples provided.

hedera_get_blocks ~25

List recent blocks from the Mirror Node.

NameTypeReqDescription
limitinteger

No output schema declared.

No examples provided.

hedera_get_contract_info ~39

Read contract info (admin key, bytecode metadata, EVM address) from the Mirror Node.

NameTypeReqDescription
contractIdstringyes

No output schema declared.

No examples provided.

hedera_get_contract_results ~38

List recent execution results for a contract from the Mirror Node.

NameTypeReqDescription
contractIdstringyes
limitinteger

No output schema declared.

No examples provided.

hedera_get_contract_state ~38

Read a contract's current storage slots from the Mirror Node.

NameTypeReqDescription
contractIdstringyes
limitinteger

No output schema declared.

No examples provided.

hedera_get_exchange_rate ~26

Read the current HBAR↔USD exchange rate from the Mirror Node.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hedera_get_network_fees ~23

Read the current network fee schedule from the Mirror Node.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hedera_get_network_nodes ~24

List the network's consensus nodes and stake from the Mirror Node.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hedera_get_network_stake ~30

Read network-wide staking info (total staked, reward rate) from the Mirror Node.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hedera_get_network_supply ~25

Read total/circulating HBAR supply from the Mirror Node.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

hedera_get_nft_history ~43

Read the transfer/mint history of a specific NFT serial from the Mirror Node.

NameTypeReqDescription
serialintegeryes
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_nft_info ~45

Read a specific NFT's info (owner, metadata, serial) from the Mirror Node.

NameTypeReqDescription
serialintegeryes
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_schedule_info ~36

Read scheduled-transaction info (signatures, executed status) from the Mirror Node.

NameTypeReqDescription
scheduleIdstringyes

No output schema declared.

No examples provided.

hedera_get_token_balances ~42

List the accounts holding a token and their balances, from the Mirror Node.

NameTypeReqDescription
limitinteger
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_token_info ~37

Read token info (type, supply, keys, custom fees) from the Mirror Node.

NameTypeReqDescription
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_token_nfts ~44

List the minted NFTs (serials) of an NFT collection from the Mirror Node.

NameTypeReqDescription
limitinteger
tokenIdstringyes

No output schema declared.

No examples provided.

hedera_get_topic_info ~29

Read HCS topic info from the Mirror Node.

NameTypeReqDescription
topicIdstringyes

No output schema declared.

No examples provided.

hedera_get_topic_messages ~52

Read recent messages from an HCS topic via the Mirror Node (decodes base64 payloads).

NameTypeReqDescription
limitintegerMax messages (default 25)
topicIdstringyes

No output schema declared.

No examples provided.

hedera_get_transaction ~66

Read a transaction's records/results from the Mirror Node by transaction id.

NameTypeReqDescription
transactionIdstringyese.g. 0.0.1234-1700000000-000000000 or 0.0.1234@1700000000.0

No output schema declared.

No examples provided.

Common questions

What is the io.github.ExpertVagabond/hedera-mcp server?

io.github.ExpertVagabond/hedera-mcp is listed in the public MCP registry as io.github.ExpertVagabond/hedera-mcp. Build-only Hedera (Hashgraph) MCP, 73 tools across all core services plus analytics reads. This page covers its npm package (@purplesquirrel/hedera-mcp).

What tools does the io.github.ExpertVagabond/hedera-mcp server expose?

io.github.ExpertVagabond/hedera-mcp exposes 73 tools: hedera_create_account, hedera_transfer_hbar, hedera_update_account, hedera_delete_account, hedera_approve_hbar_allowance, and 68 more. Their descriptions and schemas cost roughly 4,495 tokens of context every time the server is loaded.

Is the io.github.ExpertVagabond/hedera-mcp server still maintained?

io.github.ExpertVagabond/hedera-mcp is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.ExpertVagabond/hedera-mcp server under?

io.github.ExpertVagabond/hedera-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.