# letme

> letme picks the best tool for a job and says how to call it direct. Anchor Terminal grades the tools; letme reads the grades and applies one published rule. Calling through letme (one key, payments) comes later.

letme.dev is for agents. Every address answers in JSON or Markdown, and this is what an agent sees. The explanation for people is at https://www.anchorterminal.com/letme/.

## Ask

- https://letme.dev/{job in words}, e.g. https://letme.dev/send-an-sms or https://letme.dev/transcribe-a-phone-call (hyphens, underscores, + and %20 read as spaces)
- https://letme.dev/?q={job}, or POST https://letme.dev/ with {"job": "...", ...filters}
- https://letme.dev/{capability}: the best listing for a capability id, e.g. https://letme.dev/web.search (287 capabilities)
- https://letme.dev/{slug}: one listing and how to call it, e.g. https://letme.dev/exa-mcp
- https://letme.dev/mcp: the same over MCP (tools pick and about)

A path that is a listing's slug is read as one, then a capability id, then a job in words. JSON by default; Markdown with Accept: text/markdown or a .md suffix. OpenAPI at https://letme.dev/openapi.json, an Agent Skill at https://letme.dev/skills/letme/SKILL.md.

## Filters

Query parameters, or fields in the POST body. All optional, applied before the rule.

- where=hosted,both: where it runs, as the record says (hosted, local, both, library, spec)
- kind=mcp,http-api: mcp, http-api, sdk, model, router, platform, framework, protocol
- auth=none,api-key,oauth: the record's auth (none, api-key, oauth, pat, mixed)
- keyless=1: usable with no key of your own (auth none, an x402 route, or anonymous use the record describes)
- x402=yes: pays per call over x402 (the record's level isn't no)
- pricing=free,freemium: free, freemium, usage, paid, byo-plan
- max=0.01: the lead unit price in dollars at most this (a listing with no published price is out)
- minGrade=BB: this grade or better (AA, A, BB, B, C, D, E, F)
- not=slug1,slug2: leave listings out, to fall back after a failure
- n=3: how many alternatives (default 3, up to 10)

When nothing fits, pick is null and nearest is the best listing without the filters, with the filter that ruled it out.

## Every pick answer

pick (endpoint, auth, connect snippets, docs, x402 endpoints, price, three agent notes), why, alternatives, understood (for a job in words: the capability, the words that matched, confidence, other readings), filters, rule, directory, calling.

## The rule

highest Anchor grade for the capability, then price, compared only between prices whose item names the job, in one unit (the unit most listings at that grade price the job in, usage before plans), then p95 latency, then the Anchor score, then the name. No overrides and no paid placement. letme reads the ratings from the same public files anyone can read (https://www.anchorterminal.com/api/v1/tools.json, https://www.anchorterminal.com/api/v1/capabilities.json, https://www.anchorterminal.com/api/v1/categories.json, read 2026-10-04T21:21:02Z) and recomputes every pick from the rule as a check: all 287 agree.

A job in words is matched to a capability without a model or any other service, from the directory's capability ids and categories and a published table: https://letme.dev/words.json. The same job always lands on the same capability.

## Limits and errors

20 requests a second per IP address, with bursts of up to 40. Over that, 429 with Retry-After: 1 and {"error": "rate_limited"}. 503 with Retry-After while letme restarts or loads the ratings; wait and retry once. 400 names the filter it can't read, 404 has suggestions. Nothing here is billed.

## Status

letme picks today. Calling through letme (one key, payments) comes later; until then an agent calls the pick direct. Reading is free and needs no key. Search the directory at https://www.anchorterminal.com/api/v1/search?q={q}. Same company as Anchor Terminal; letme's terms are never an input to a grade.

Right now: https://letme.dev/status. Uptime by day and every outage: https://www.anchorterminal.com/status/. Security: https://letme.dev/.well-known/security.txt.
