For Agents
Three ways to consume the catalog: a local CLI, an HTTP API, and an llms.txt file.
01
CLI
Install the consumer CLI for local tool discovery. All commands output JSON by default for easy piping.
Install
npx which-cli
Search for tools
npx which-cli search kubernetes
# Returns matching tools with descriptions and capabilities
Get tool details
npx which-cli info kubectl
# Full metadata: auth, flags, output formats, agent notes
List all tools
npx which-cli list
# All tools with token estimates for context budgeting
02
HTTP API
Two-step discovery pattern: load the lightweight index, then fetch individual tool details. All endpoints serve Access-Control-Allow-Origin: *.
1.
Load the catalog index
Lightweight index with all tools, descriptions, categories, and capabilities. Small enough for a single context window (~7,500 tokens for 50 tools).
GET /api/catalog-index.json
2.
Fetch tool detail
Full metadata including help output, auth, flags, and agent notes.
GET /api/tools/{slug}.json
Example: discovering kubectl
// Load the catalog index
const index = await fetch("/api/catalog-index.json").then(r => r.json());
// Find tools for container orchestration
const matches = index.tools.filter(t =>
t.capabilities.includes("container-orchestration")
);
// -> [{ slug: "kubectl", ... }, { slug: "docker", ... }]
Endpoints
/api/catalog-index.jsonFull catalog index with all tools/api/tools/{slug}.jsonIndividual tool detailSchema reference
Catalog index
| slug | URL-safe identifier |
| name | Human-readable name |
| binary | Executable command |
| description | One-line description |
| categories | Category tags |
| capabilities | Controlled vocabulary |
| supports_json | JSON output support |
| detail_url | Path to full JSON |
Tool detail
| agent_notes | Usage guidance for agents |
| help_output | Raw help text |
| auth | Auth methods and config |
| output_formats | JSON support and flags |
| global_flags | All-command flags |
| install | Installation methods |
| capabilities | Capability vocabulary |
03
llms.txt
Following the llmstxt.org convention, the catalog provides plain-text summaries optimized for LLM context windows.
/llms.txtSite summary with tool index (~7.5 KB)
/llms-full.txtComplete catalog in a single Markdown file (~87 KB)