Tool reference · practitioner
library_search
Search the capability library
Search the Collective Master Library for a capability in plain words, before writing new code. `scope: "catalog"` (Practitioner) searches the engineered components — class, what each does, API surface, line counts, verification marks. `scope: "composites"` searches capabilities earlier runs invented for one host by fusing library parts, each citing its sealed report. Pass `ids` for whole rows by component ID, with siblings and declared twins. Multi-word queries match term by term and rank; with no exact hit you get the closest rows, labelled as such.
Call it
curl -X POST https://shpbl.com/api/public/v1/tools/library_search \
-H 'content-type: application/json' \
-H 'authorization: Bearer shpbl_mcp_…' \
-d '{}'Same handler over MCP. The free lane needs no key; a Practitioner key is what keeps a run.
Optional arguments
key
Your SHPBL subscription key (shpbl_mcp_…). Optional if your client sends it as the `Authorization: Bearer …` request header.
scope
`catalog` — engineered components (Practitioner). `crown-jewels` — the S-Tier Vault of standalone lab-curated artifacts. `composites` — capabilities past runs invented for one host. (`vault` is no longer available; asking for it returns a pointer to these scopes.)
query
Plain-words capability, name, ID or API symbol. Omit to page the whole pool.
ids
Up to 20 component IDs (e.g. `STIER-S-84`, `BLD-ENG-303`) returned in full instead of a search.
component_class
Catalog only: restrict to one component class, e.g. `CrownJewel/S-Tier`, `Block/Engine`. Substring match.
pack
Vault only: restrict to one vertical pack, e.g. `fintech-v1`. Substring match.
certified_only
Crown jewels only: return only rows whose body the certification harness executed and read clean (CERTIFIED or PROVISIONAL). This withholds the INCONCLUSIVE rows — bodies the harness could not exercise, which still exist and still ship. Leave this off (the default) to see them too; the withheld figure is reported as `certification.withheldInconclusive`.
include_siblings
With `ids`: also list up to 12 other component IDs in the same class, for comparison.
page
1-based page of results. A page past the end is refused, never returned empty.
page_size
Rows per page, 1 to 50. Defaults to 20.
limit
Alias for `page_size`, 1 to 50. Given both, `page_size` wins.