# Hugging Bay for agents

Canonical discovery: https://huggingbay.xyz/.well-known/mcp/server-card.json
MCP: https://huggingbay.xyz/api/mcp?profile=core
REST schema: https://huggingbay.xyz/api/openapi.json
Setup: https://huggingbay.xyz/agents/setup.md
Evaluations: https://huggingbay.xyz/agents/evals.md
Npm package source version: 0.1.17. Hosted tools/list is the authority for the running server.

## One-call local run plan

```json
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"hb_run_plan","arguments":{"task":"chat","hardware":"apple-m2-16gb"}}}
```

REST: GET https://huggingbay.xyz/api/agents/run-plan?task=chat&hardware=apple-m2-16gb

A match is limited to 800 o200k_base tokens for the complete tool result, including the MCP digest receipt and protocol discriminator. JSON-RPC routing fields such as the caller id are outside this budget. A match returns a recorded one-line command, measured speed and evidence link, plus hb_lock contents to save as hb.lock. Proof must be fresh, signed, and bound to the exact file and hardware class. The current download plan must still admit the file. No comparable proof means no command, not an invented run guarantee. No key or local execution is required. hb.lock is an unsigned identity record; the linked run receipt is separate evidence.

Use search_artifacts for broad searches, get_model for a known ID or owner/repo, and find_runnable for advisory fit when there is no proven run match. Current schemas: tools/list. More public tools: ?profile=discovery. The full profile requires operator authorization. Unknown IDs are terminal; retry only explicitly retryable errors.
