Bun Protocol is pre-release. Every operation is stability: BETA, no commercial provider in the catalogue is verified, and the protocol is not yet deployable.
Bun Protocol — API reference (authoritative operation list)
This page is the only authoritative list of what Bun Protocol serves.
An operation absent from this page does not exist. Every operation is
stability: BETA — none is stable or GA.
Generated from the in-memory operation registry
(app.protocol.registry.list_operations) via pkgutil discovery over
app.protocol.operations. Run python scripts/generate_agent_docs.py to refresh;
--check fails if this file no longer matches the registry, so it cannot
drift the way sdk/llms.txt did at 19 of 55.
How to call one
Every operation is dispatched by operation_id through the protocol endpoint;
the descriptor for each carries its own input_schema and output_schema,
idempotency policy, timeout, availability and provider_effects. Read the
descriptor rather than assuming a shape. Fetch the served descriptors from a
running server's OpenAPI document — its info.title must read "Bun Protocol".
Bun runs on port 8001 in the local sandbox; port 8000 on this machine belongs
to an unrelated application.
Operations that declare availability: fail_closed return denied when
authorisation, tenant derivation or entitlement cannot be established. That is
the correct behaviour, not an error to work around.
Columns
auth — requires_auth. no does not mean unauthenticated callers get
privileged data; it means the operation establishes or checks its own subject.
tenant — requires_tenant. yes means tenant context must be derivable, and
the underlying tables are protected by FORCE row-level security in PostgreSQL.
permissions — required_permissions from the descriptor.
metering unit / billable — see metering-costs.md.
Operations
55 operations across 16 families. Counts are rendered from the registry, not typed.