Hashnet
FreeNot checkedUniversal MCP server for discovery, chat, registration, credits, and workflow automation across the HOL Registry Broker ecosystem.
About
Universal MCP server for discovery, chat, registration, credits, and workflow automation across the HOL Registry Broker ecosystem.
README
npm version npm downloads Node version Bundle size Publish Canary License CodeSandbox
Universal MCP server for discovery, chat, registration, credits, and workflow automation across the HOL Registry Broker ecosystem.
Ecosystem
| Surface | Link |
|---|---|
| npm package | @hol-org/hashnet-mcp |
| GitHub repo | hashgraph-online/hashnet-mcp-js |
| GitHub releases | Releases |
| Documentation | hol.org/mcp |
| CodeSandbox | Open examples in browser |
Quickstart
pnpm install
cp .env.example .env
pnpm dev:http
Common launch modes:
pnpm dev:stdiopnpm dev:httppnpm dev:http:compatnpx @hol-org/hashnet-mcp --helpnpx @hol-org/hashnet-mcp --stdionpx @hol-org/hashnet-mcp --http --host 127.0.0.1 --port 3333
When installed globally or linked locally, the binary is hashnet-mcp.
Supported Transports
| Transport | Endpoint(s) | Notes |
|---|---|---|
| stdio | process stdin/stdout | best for local agent runtimes |
| Streamable HTTP | /mcp, /mcp/stream |
recommended HTTP transport |
| legacy HTTP + SSE | /mcp/sse, /mcp/messages |
enabled with FEATURE_LEGACY_SSE=1 |
Runtime utility endpoints:
/healthz/readyz/metrics
Tool Surface
- Discovery:
hol.stats,hol.capabilities,hol.search,hol.vectorSearch,hol.resolveUaid - Chat:
hol.chat.readiness,hol.chat.createSession,hol.chat.sendMessage,hol.chat.retry,hol.chat.history,hol.chat.resume,hol.chat.end - Registration:
hol.getRegistrationQuote,hol.registerAgent,hol.waitForRegistrationCompletion - Workflows:
workflow.discovery,workflow.delegate,workflow.registration
Tool success responses use structured envelopes in structuredContent:
okdatameta
Tool failures return isError: true with structured machine-readable error fields (code, category, retryable).
Configuration
| Variable | Required | Notes |
|---|---|---|
REGISTRY_BROKER_API_URL |
no | defaults to https://hol.org/registry/api/v1 |
REGISTRY_BROKER_API_KEY |
no | enables paid tools with a static broker API key |
BROKER_REQUEST_TIMEOUT_MS |
no | default upstream request timeout is 60000 |
MCP_TRANSPORT |
no | http (default) or stdio |
MCP_HOST |
no | defaults to 127.0.0.1 |
MCP_PORT |
no | defaults to 3333 |
MCP_ALLOWED_ORIGINS |
no | comma-separated allow list |
MCP_SERVER_BEARER_TOKEN |
no | required when binding to a non-local host (for example 0.0.0.0) |
MCP_SESSION_IDLE_TTL_MS |
no | defaults to 900000 |
MCP_SESSION_MAX_COUNT |
no | defaults to 250 |
MCP_SESSION_REAP_INTERVAL_MS |
no | defaults to 60000 |
LEDGER_ACCOUNT_ID |
no | generic ledger identity fallback |
HEDERA_ACCOUNT_ID |
no | Hedera account id |
HEDERA_NETWORK |
no | e.g. hedera:testnet |
HEDERA_PRIVATE_KEY |
no | Hedera private key |
EVM_LEDGER_NETWORK |
no | e.g. eip155:1 |
ETH_PK |
no | EVM private key |
Security Defaults
- Binds to
127.0.0.1by default. - Validates
Originfor HTTP requests when present. - Enforces bearer-token auth when binding to non-local hosts.
- Reaps idle HTTP sessions and enforces max active sessions.
- Redacts sensitive values in logs.
Development
| Command | Purpose |
|---|---|
pnpm build |
compile distributable artifacts |
pnpm start |
run compiled server |
pnpm lint |
run ESLint |
pnpm typecheck |
run TypeScript checks |
pnpm test:run |
run Vitest once |
pnpm test:coverage |
run Vitest with coverage |
pnpm check:no-stubs |
enforce no-stubs contract |
pnpm smoke:http |
streamable HTTP smoke test |
pnpm smoke:stdio |
stdio smoke test |
Release Notes Automation
GitHub releases are generated automatically from merged pull requests:
- release tags are created during publish (
vX.Y.Z) - GitHub release notes are generated with GitHub's release-note engine
- changelog categories are controlled via
.github/release.yml - canonical docs links are appended to each release
Install Hashnet in Claude Desktop, Claude Code & Cursor
unyly install hashnet-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add hashnet-mcp -- npx -y @hol-org/hashnet-mcpFAQ
Is Hashnet MCP free?
Yes, Hashnet MCP is free — one-click install via Unyly at no cost.
Does Hashnet need an API key?
No, Hashnet runs without API keys or environment variables.
Is Hashnet hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Hashnet in Claude Desktop, Claude Code or Cursor?
Open Hashnet on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Gmail
Read, send and search emails from Claude
by GoogleSlack
Send, search and summarize Slack messages
by SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Compare Hashnet with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All communication MCPs
