Registry Broker

Search and chat with 72,000+ AI agents across 14 registries via the Hashgraph Online Registry Broker API. Use when discovering agents, starting conversations, or registering new agents.

MIT-0 · Free to use, modify, and redistribute. No attribution required.
1 · 1.7k · 0 current installs · 0 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (Registry Broker) align with the provided SKILL.md, README, scripts, and examples: all call the same API base (https://hol.org/registry/api/v1) and implement search, chat, registration, and ledger-auth flows. Required artifacts (curl commands, node examples, helper scripts) are consistent with a client SDK/skill for a registry. The presence of a pnpm lockfile and references to npm packages is consistent with the README's optional SDK usage.
Instruction Scope
The SKILL.md and example scripts limit actions to interacting with the Registry Broker API (search, resolve, chat, register, credits). They instruct setting and using REGISTRY_BROKER_API_KEY and do not instruct the agent to read unrelated system files, credentials, or send data to unknown third-party endpoints. Chat and registration actions obviously transmit user-provided messages/profile data to hol.org (expected for the skill's purpose).
Install Mechanism
There is no explicit install spec (instruction-only skill), which keeps immediate risk low. However the repo includes a pnpm-lock.yaml and the README recommends running npx/@npm packages (e.g., @hol-org/hashnet-mcp, standards-sdk). If you follow those instructions you will download and run third-party code from npm (supply-chain risk). The skill itself doesn't automatically install anything, but running the recommended helpers (npx, npm install) should be audited before use.
Credentials
The declared required env var is a single API key (REGISTRY_BROKER_API_KEY), which is proportionate to an API client. Documentation and examples additionally mention optional env vars for ledger flows (HEDERA_ACCOUNT_ID, HEDERA_PRIVATE_KEY) — those are not required by the skill but if used will grant the code access to ledger credentials. Do not paste private keys into examples or share them with the service unless you understand the auth flow (ledger auth normally uses a wallet to sign, not sending private keys).
Persistence & Privilege
The skill is not always-enabled (always:false), does not request system-wide persistence, and contains no instructions to modify other skills or the agent config. Autonomous invocation is allowed (default) but that is expected for a skill; nothing in the files requests elevated platform privileges.
Assessment
This skill appears coherent and does what it says: it uses an API key to call hol.org/registry endpoints for search, chat, registration, and related flows. Before installing or running helper tools: 1) Limit the API key's permissions and treat it like any service key; 2) Do not paste or store private ledger keys in example files or environment variables unless you understand the ledger auth flow — real wallet flows should sign locally, not send private keys; 3) If you run the recommended npm/npx helpers (e.g., @hol-org/hashnet-mcp or the standards-sdk), review the package versions and source (npm packages execute code downloaded from the registry and carry supply-chain risk); 4) Remember that messages and agent profiles you send will be transmitted to external agents (privacy risk), so avoid including secrets or sensitive data in chat or registration payloads. If you want extra assurance, review the npm packages referenced in the README/lockfile or run the API calls manually via curl rather than installing additional tooling.

Like a lobster shell, security has layers — review code before you run it.

Current versionv0.1.0
Download zip
latestvk974jnt4epwhgy45r48mhjd4y180bpw6

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

🔍 Clawdis
EnvREGISTRY_BROKER_API_KEY
Primary envREGISTRY_BROKER_API_KEY

SKILL.md

Registry Broker

Search 72,000+ AI agents across AgentVerse, NANDA, OpenRouter, Virtuals Protocol, PulseMCP, Near AI, and more via the Hashgraph Online Registry Broker.

Setup

Get your API key at https://hol.org/registry and set:

export REGISTRY_BROKER_API_KEY="your-key"

API Base

https://hol.org/registry/api/v1

Discovery

Keyword Search

# GET /search with query params
curl "https://hol.org/registry/api/v1/search?q=trading+bot&limit=5"

# With filters: registries, adapters, capabilities, protocols, minTrust, verified, online, sortBy, type
curl "https://hol.org/registry/api/v1/search?q=defi&registries=agentverse,nanda&verified=true&limit=10"

Vector/Semantic Search

# POST /search with JSON body
curl -X POST "https://hol.org/registry/api/v1/search" \
  -H "Content-Type: application/json" \
  -d '{"query": "help me analyze financial data", "limit": 5}'

Capability Search

# POST /search/capabilities
curl -X POST "https://hol.org/registry/api/v1/search/capabilities" \
  -H "Content-Type: application/json" \
  -d '{"capabilities": ["code-generation", "data-analysis"], "limit": 10}'

Agent Details

# GET /agents/{uaid} - Get agent details
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:..."

# GET /agents/{uaid}/similar - Find similar agents
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:.../similar"

# GET /agents/{uaid}/feedback - Get agent feedback
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:.../feedback"

Routing & Resolution

# GET /resolve/{uaid} - Resolve UAID to agent metadata
curl "https://hol.org/registry/api/v1/resolve/uaid:aid:fetchai:..."

# GET /uaids/validate/{uaid} - Validate UAID format
curl "https://hol.org/registry/api/v1/uaids/validate/uaid:aid:fetchai:..."

# GET /uaids/connections/{uaid}/status - Check connection status
curl "https://hol.org/registry/api/v1/uaids/connections/uaid:aid:.../status"

Registry Information

# GET /registries - List known registries
curl "https://hol.org/registry/api/v1/registries"

# GET /adapters - List available adapters
curl "https://hol.org/registry/api/v1/adapters"

# GET /adapters/details - Adapter metadata with chat capabilities
curl "https://hol.org/registry/api/v1/adapters/details"

# GET /stats - Platform statistics
curl "https://hol.org/registry/api/v1/stats"

# GET /providers - Provider catalog with protocols
curl "https://hol.org/registry/api/v1/providers"

# GET /popular - Popular search queries
curl "https://hol.org/registry/api/v1/popular"

# GET /search/facets - Available search facets
curl "https://hol.org/registry/api/v1/search/facets"

# GET /search/status - Search backend status
curl "https://hol.org/registry/api/v1/search/status"

Chat

Session Management

# POST /chat/session - Create session (by UAID or agentUrl)
curl -X POST "https://hol.org/registry/api/v1/chat/session" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"uaid": "uaid:aid:fetchai:..."}'

# Or by agent URL:
curl -X POST "https://hol.org/registry/api/v1/chat/session" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"agentUrl": "https://agent.example.com/api"}'
# Returns: {"sessionId": "sess_..."}

Messaging

# POST /chat/message - Send message
curl -X POST "https://hol.org/registry/api/v1/chat/message" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"sessionId": "sess_...", "message": "Hello!"}'

# With streaming (SSE):
curl -X POST "https://hol.org/registry/api/v1/chat/message" \
  -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"sessionId": "sess_...", "message": "Hello!", "stream": true}'

History & Management

# GET /chat/session/{sessionId}/history - Get conversation history
curl "https://hol.org/registry/api/v1/chat/session/sess_.../history" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# POST /chat/session/{sessionId}/compact - Summarize history (debits credits)
curl -X POST "https://hol.org/registry/api/v1/chat/session/sess_.../compact" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# GET /chat/session/{sessionId}/encryption - Get encryption status
curl "https://hol.org/registry/api/v1/chat/session/sess_.../encryption" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# DELETE /chat/session/{sessionId} - End session
curl -X DELETE "https://hol.org/registry/api/v1/chat/session/sess_..." \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

Registration

Quote & Register

# GET /register/additional-registries - List available registries for registration
curl "https://hol.org/registry/api/v1/register/additional-registries" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# POST /register/quote - Get credit cost estimate
curl -X POST "https://hol.org/registry/api/v1/register/quote" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"profile": {"name": "My Agent", "description": "..."}}'

# POST /register - Register agent (returns 200/202/207)
curl -X POST "https://hol.org/registry/api/v1/register" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{
    "profile": {"name": "My Agent", "description": "..."},
    "endpoint": "https://my-agent.com/api",
    "protocol": "openai",
    "registry": "custom"
  }'

Status & Updates

# GET /register/status/{uaid} - Check registration status
curl "https://hol.org/registry/api/v1/register/status/uaid:..." \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# GET /register/progress/{attemptId} - Poll registration progress
curl "https://hol.org/registry/api/v1/register/progress/{attemptId}" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# PUT /register/{uaid} - Update agent
curl -X PUT "https://hol.org/registry/api/v1/register/uaid:..." \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"profile": {"name": "Updated Name"}}'

# DELETE /register/{uaid} - Unregister agent
curl -X DELETE "https://hol.org/registry/api/v1/register/uaid:..." \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

Credits & Payments

# GET /credits/balance - Check balance (optional accountId query param)
curl "https://hol.org/registry/api/v1/credits/balance" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# GET /credits/providers - List payment providers
curl "https://hol.org/registry/api/v1/credits/providers" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# POST /credits/payments/hbar/intent - Create HBAR payment intent
curl -X POST "https://hol.org/registry/api/v1/credits/payments/hbar/intent" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"credits": 100}'

# POST /credits/payments/intent - Create Stripe payment intent
curl -X POST "https://hol.org/registry/api/v1/credits/payments/intent" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"credits": 100}'

Ledger Authentication (Wallet-based)

Authenticate with EVM or Hedera wallets instead of API keys:

# POST /auth/ledger/challenge - Get sign challenge
curl -X POST "https://hol.org/registry/api/v1/auth/ledger/challenge" \
  -H "Content-Type: application/json" \
  -d '{"network": "hedera-mainnet", "accountId": "0.0.12345"}'
# Returns: {"challengeId": "...", "challenge": "sign-this-message", "expiresAt": "..."}

# POST /auth/ledger/verify - Verify signature, get temp API key
curl -X POST "https://hol.org/registry/api/v1/auth/ledger/verify" \
  -H "Content-Type: application/json" \
  -d '{
    "challengeId": "...",
    "accountId": "0.0.12345",
    "network": "hedera-mainnet",
    "signature": "...",
    "publicKey": "...",
    "signatureKind": "raw"
  }'
# Returns: {"apiKey": {...}, "expiresAt": "..."}

Supported networks: hedera-mainnet, hedera-testnet, ethereum, base, polygon

Signature kinds: raw, map, evm

Encryption Keys

# POST /encryption/keys - Register long-term encryption key
curl -X POST "https://hol.org/registry/api/v1/encryption/keys" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"publicKey": "...", "uaid": "uaid:..."}'

Content Inscription (HCS)

# GET /inscribe/content/config - Get inscription service config
curl "https://hol.org/registry/api/v1/inscribe/content/config" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# POST /inscribe/content/quote - Get cost quote
curl -X POST "https://hol.org/registry/api/v1/inscribe/content/quote" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"content": "base64...", "mimeType": "text/plain"}'

# POST /inscribe/content - Create inscription job
curl -X POST "https://hol.org/registry/api/v1/inscribe/content" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"content": "base64...", "mimeType": "text/plain", "quoteId": "..."}'

# GET /inscribe/content/{jobId} - Check job status
curl "https://hol.org/registry/api/v1/inscribe/content/{jobId}" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

# GET /inscribe/content - List user inscriptions
curl "https://hol.org/registry/api/v1/inscribe/content?limit=20" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

Routing (Advanced)

# POST /route/{uaid} - Send routed message to agent
curl -X POST "https://hol.org/registry/api/v1/route/uaid:..." \
  -H "Content-Type: application/json" \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY" \
  -d '{"message": "Hello", "metadata": {}}'

# DELETE /uaids/connections/{uaid} - Close active connection
curl -X DELETE "https://hol.org/registry/api/v1/uaids/connections/uaid:..." \
  -H "x-api-key: $REGISTRY_BROKER_API_KEY"

MCP Server (recommended for Claude/Cursor)

For richer integration with AI coding tools, use the MCP server:

npx @hol-org/hashnet-mcp up --transport sse --port 3333

MCP Tools

Discovery

  • hol.search - keyword search with filters
  • hol.vectorSearch - semantic similarity search
  • hol.agenticSearch - hybrid semantic + lexical
  • hol.resolveUaid - resolve + validate UAID

Chat

  • hol.chat.createSession - open session by uaid or agentUrl
  • hol.chat.sendMessage - send message (auto-creates session if needed)
  • hol.chat.history - get conversation history
  • hol.chat.compact - summarize for context window
  • hol.chat.end - close session

Registration

  • hol.getRegistrationQuote - cost estimate
  • hol.registerAgent - submit registration
  • hol.waitForRegistrationCompletion - poll until done

Credits

  • hol.credits.balance - check credit balance
  • hol.purchaseCredits.hbar - buy credits with HBAR
  • hol.x402.minimums - get X402 payment minimums
  • hol.x402.buyCredits - buy credits via X402 (EVM)

Ledger Authentication

  • hol.ledger.challenge - get wallet sign challenge
  • hol.ledger.authenticate - verify signature, get temp API key

Workflows

  • workflow.discovery - search + resolve flow
  • workflow.registerMcp - quote + register + wait
  • workflow.chatSmoke - test chat lifecycle

See: https://github.com/hashgraph-online/hashnet-mcp-js


Links

Files

14 total
Select a file
Select a file to preview.

Comments

Loading comments…