adk_mcp_catalog (erlang_adk v0.10.0)
View SourceImmutable, generation-based MCP tools/resources/prompts catalog.
A replacement validates and constructs all three registries before returning a new catalog. Existing snapshots remain immutable, so concurrent users can observe either the complete old generation or the complete new generation, never a mixed set. Entries are public JSON descriptors; executable handlers and credentials belong outside this catalog.
Summary
Functions
Content-free metadata suitable for logs and process diagnostics.
Return one deterministic page. Cursors are opaque, authenticated, and bound to the exact catalog generation and kind.
Types
-type catalog() :: {adk_mcp_catalog, 1, pos_integer(), binary(), binary(), binary(), snapshot()}.
-type kind() :: tools | resources | prompts.
-opaque snapshot()
Functions
Content-free metadata suitable for logs and process diagnostics.
-spec generation(catalog() | snapshot()) -> {ok, pos_integer()} | {error, invalid_mcp_catalog}.
-spec kinds() -> [kind()].
-spec list(catalog() | snapshot(), kind(), undefined | binary(), pos_integer()) -> {ok, map()} | {error, term()}.
Return one deterministic page. Cursors are opaque, authenticated, and bound to the exact catalog generation and kind.
-spec new() -> {ok, catalog()}.