LabscoMCP early access ↗
hashgraph-onlineMCP SERVER · OFFICIAL PROJECT

Hashnet MCP (Hashgraph Online Registry Broker)

Discover, search and register agents on the HOL Registry Broker, and hold chat sessions with them, over stdio or hardened Streamable HTTP.

by hashgraph-online ↗MCP Plumbing: Proxies, Registries & Inspectors✓ Official

LABSCO SUMMARY

Structured envelopes and retryable errors, which is what an agent loop needs.

The discovery-to-chat path is the point: find an agent by capability or vector search, resolve it, check readiness, open a session and delegate — with the three workflow.* tools collapsing those sequences into one call. The error contract is unusually disciplined for this kind of registry client: a failure tells you its category and whether retrying is worth it, rather than handing back prose.

What it is

An MCP server for the HOL Registry Broker ecosystem — a directory of agents you can search, resolve, register and then talk to. Tool responses come back in a structured envelope rather than free text, and failures carry machine-readable fields, which is what makes it usable inside an agent loop rather than only by a human reading output.

What you get

  • Registry discovery: statistics, capability listings, keyword and vector search, and UAID resolution — hol.stats, hol.capabilities, hol.search, hol.vectorSearch, hol.resolveUaid
  • A full chat lifecycle against a discovered agent — readiness check, session creation, send, retry, history, resume and end — hol.chat.readiness, hol.chat.createSession, hol.chat.sendMessage, hol.chat.retry, hol.chat.history, hol.chat.resume, hol.chat.end
  • Agent registration with a quote first, then the registration itself and a wait for completion — hol.getRegistrationQuote, hol.registerAgent, hol.waitForRegistrationCompletion
  • Three composite flows for the common sequences — workflow.discovery, workflow.delegate, workflow.registration
  • Every success returning ok, data and meta in structuredContent; every failure returning isError: true with code, category and retryable
  • Runtime endpoints for supervision — /healthz, /readyz, /metrics

Requirements

No credential for the free surface: REGISTRY_BROKER_API_URL defaults to https://hol.org/registry/api/v1, and REGISTRY_BROKER_API_KEY is what unlocks the paid tools. Run it with npx @hol-org/hashnet-mcp --stdio, or --http --host 127.0.0.1 --port 3333 for Streamable HTTP at /mcp and /mcp/stream; legacy HTTP+SSE at /mcp/sse and /mcp/messages is behind FEATURE_LEGACY_SSE=1. It binds 127.0.0.1 by default, validates Origin when present, and requires MCP_SERVER_BEARER_TOKEN before it will bind to a non-local host. Idle sessions are reaped on MCP_SESSION_IDLE_TTL_MS (default 900000) with a cap of MCP_SESSION_MAX_COUNT (default 250). Ledger identity is optional and separate — HEDERA_ACCOUNT_ID, HEDERA_NETWORK, HEDERA_PRIVATE_KEY, or the EVM pair EVM_LEDGER_NETWORK and ETH_PK.

Setup effort

One command — npx @hol-org/hashnet-mcp --stdio