tools/list shows the default categories plus the always-on system category (which is why particle_catalog itself always appears), but every public Particle tool is callable by name regardless of what was advertised — call this tool to discover the rest. It’s always-on (the system category can never be excluded) and free (tier free, cost 0).
- Without arguments: the categorical menu — every category with its tool names, tiers, and one-line summaries.
- With
category: the full input schema for each of that category’s tools, ready to call.
particle_catalog with no arguments to see what exists, then particle_catalog with a category to get the input schemas, then call the tool directly — or via particle_call if your harness blocks un-advertised tool names.
Inputs
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
category | string | no | — | Exposure category name (e.g. "podcast_bias"). When set, the response includes the FULL input schema for every tool in that category — call this before invoking a tool you haven’t seen advertised. When omitted, returns the categorical menu: every category with its tools and one-line summaries. |
category returns an actionable error suggesting a no-argument call to list every category.
Output
A markdown document with## Particle tool catalog and one ### <category> (default|opt-in|always-on) section per category. Each section carries the category summary and one bullet per tool, formatted **tool_name** (tier) — summary. In detail mode (a category was supplied), each tool bullet is followed by its input schema rendered as a fenced JSON block.
Sample (no arguments, abridged):
Example
Related
- Tool sets & discovery — the full selector mechanics and the always-callable contract.
particle_call— dispatch any discovered tool by name.