Skip to content

Org library

$ org-library · 4 min read · updated 2026-06-10

The library is where a team’s shared context becomes findable. It rides entirely on machinery you already know: visibility is a capsule field, access requests are grant requests, and approvals land in the same queue.

Owners (and admins) set visibility on the capsule:

Terminal window
curl -X PATCH https://registry/v1/capsules/<id> \
-H "Authorization: Bearer $ADMIN" -H "Content-Type: application/json" \
-d '{ "visibility": "team" }'
VisibilityWho sees it
private (default)Owner and privileged roles only. Never in the library, never discoverable, request-access answers 404.
teamEvery operator sees it in the dashboard Library and can request access. Members get read-only content access immediately.
discoverableteam, plus authenticated agents see its name and description via capsol_capsules(action="discover").

Dashboard → Library: filter by name/description, click request access. That files a standard grant request routed to the capsule owner and approvers — the owner approves it from Grants like any other request, and the resulting connection works on the universal /mcp endpoint.

{ "name": "capsol_capsules", "arguments": { "action": "discover" } }

returns discoverable capsules (names + descriptions only — content always requires an approved grant). The agent then requests access through existing machinery:

  • capsol_manage(action="request_grant_for", capsule="<id>", client_id="<self>") when it holds registry:manage, or
  • a normal enrollment (POST /v1/agent-enrollments).

No new approval system exists: every path ends in the same grant queue, the same ceilings, the same audit trail.

  1. Alice (member) creates research-notes, writes findings, sets visibility team.
  2. Bob (member) sees it in Library, requests reader access for his agent.
  3. Alice approves from Grants — member role suffices because she owns the capsule.
  4. Bob’s agent calls capsol_capsules(action="list") on its existing /mcp connection: research-notes is there. No client config changed.