Find tested tools for a task
headlesson_searchFind command-line tools, MCP servers and APIs for a task, and compare them. Ask in plain English or Japanese ("extract text from scanned PDFs") or by product name. Each result gives an ID, a one-line reason it matches, and when it was checked. Pass the ID to headlesson_get with sections ["lesson","gotchas"] to get the steps (install, check, first task) with their recorded test result (most were run by an agent; a few are untested) and known failure conditions, such as a tool that exits 0 with empty or wrong output. Filter or compare with axes such as auth, pricing, license and remote_mcp (where, axes, ids). Curated records come first. If none match, or include:["registry"] is set, one public word from the query is looked up in the Official MCP Registry; those listings are unverified (what is sent is described on the query field).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Up to 20 explicit app IDs to compare; any missing ID produces an error instead of being silently omitted. | |
| axes | No | Axes to compare: auth, pricing, license, cli, local_mcp, remote_mcp are useful starting points; licence is normalized to license. | |
| sort | No | Optional axis ordering before relevance; unknown values remain last. | |
| limit | No | Maximum app results, from 1 to 20; default is 5. | |
| query | No | Task or product name in English or Japanese. External Registry lookup sends only one ASCII public name fragment (longest significant ASCII word from free text, or a supplied namespace; max 200 chars) when curated matches are absent or include registry is requested; the full free text is not sent. Recognized credential/URL/PII patterns are skipped; this is not a complete secret filter. Do not include secrets. | |
| where | No | Confirmed axis filters: AND across axes, OR inside a value array; known spelling aliases are normalized. | |
| include | No | Explicitly request the supplemental Official Registry name lookup alongside curated results. Otherwise it is attempted only when curated matches are absent. At most five unverified listings; one-page comparison only. |