GET /api/capabilities?limit=500 does not mean the catalog has 500 tools. It means one response will not return more than 500. The catalog currently holds 1940 unique tools. An unfiltered call with limit=500 returns 500.

If your client stores that first 页面 and stops, you are missing most of the registry. 560 of the 1940 are 免费; 1380 are 高级. Those totals are not visible from a single uncapped-looking request that is, in fact, capped.

Confirm the cap on a raw call

GET https://swarme.io/api/capabilities?limit=500

Count the returned capabilities. If you send limit=1000, do not assume 1000 items. The observed maximum on this endpoint is 500.

Docs at https://swarme.io/developers describe 搜索 by natural-language query and category. Category is the practical way past the cap. Query (q) narrows. It does not 页面 the rest of the 1940.

HTML 工具 页面 in a catalog smoke check still returned HTTP 200 around entries 1024 and 1025. The public directory is larger than one API 页面. Use the API with filters, not a single dump.

Use category slugs, not homepage labels

Homepage labels are not always the query value. Three mismatches:

Homepage 标签Wrong guessesAPI slugCount网站与 SEOweb, seo, web_seo, web-and-seoweb-seo123安全 & 网络安全, 网络, 安全_网络security-network134AI 工具ai, ai-tool, aitoolsai-tools112

GET /api/capabilities?category=web is the wrong contract. category=web-seo returns the 123 Web & SEO tools.

Full category set and observed counts:

  • 实用工具 254
  • 商务 226
  • 开发者 189
  • security-network 134
  • 文档 129
  • web-seo 123
  • 图片 116
  • ai-tools 112
  • PDF 109
  • ai-write 97
  • 文本 97
  • 视频 97
  • 文件 92
  • 音频 89
  • 二维码 76

Those fifteen buckets sum 到 1940. Every category count is under 500, so one request per slug covers that slice. Union by slug. Deduplicate if a 工具 ever appears in more than one response.

A fetch loop that actually terminates

  1. 创建 a key at https://swarme.io/dashboard?tab=developers. /dashboard/developers returns 404.
  2. Hold the fifteen slugs above. Do not derive them by lowercasing the homepage 标签.
  3. For each slug, GET /api/capabilities?category={slug}&limit=500.
  4. Record slug, access_level, execution.machine_run_status, and the 工具 URL.
  5. If a response is 500 items long, inspect it. For the current catalog, no category reaches that 大小. If one does later, you need an additional filter or cursor, not a higher limit.
  6. Sleep between calls. Catalog describe under load produced SSL EOF (UNEXPECTED_EOF_WHILE_READING). Back off rather than widening concurrency.

搜索 remains useful once you have a query:

GET /api/capabilities?q=uuid&limit=10

That path found uuid-generator. It is not how you inventory 1940 slugs.

Listing is not executing

After you have the union, most rows still will not run from the key. 1491 tools are describe_only and block quote/run. 439 are supported. 10 are requires_worker. Read status on describe before quote.

MCP does not bypass the 500 cap by listing 1940 tools. POST https://swarme.io/mcp initialize (protocolVersion 2025-03-26) identified Swarme Capability MCP Alpha 2026.07.15-wallet-alpha. tools/list returned 22 names, including swarme_capabilities_搜索. 搜索 through that 工具 is still a 搜索. It is not a full dump.

A completed run of uuid-generator — found by 搜索, not by the first 500 unfiltered rows — returned 4cd3c7b6-0495-447a-8efd-9a1374f7599c at $0.00 included after a 900-second quote lock. Public 页面: https://swarme.io/工具/uuid-generator. That is one supported 实用工具, not proof your first API 页面 was complete.

Auth and validation are separate from paging

Unauthenticated quote is HTTP 419. The login toast Your secure 表单 token expired. Please go back and try again. is a form-token expiry. Neither is a capabilities-list error.

Once you start quoting supported tools, empty 页面 of input still 422. Observed run messages include Use labeled address lines in key: value 表单 or provide JSON., Domain must contain valid ASCII hostname labels., backlinks must contain between 1 and 1,000 records., and Enter valid Base64URL input. Fix input after you have the right slug. Do not refetch the first 500 hoping the 字段 rule changes.

Wallet $0.00 with metered_observe and a dashboard Lifetime of $0 does not change how many tools 搜索 returns. It only affects spend on paid runs.

Checklist

  1. Call unfiltered limit=500 once and record that you received 500, not 1940.
  2. Iterate the fifteen category slugs, including web-seo, security-network, and ai-tools.
  3. Union 到 1940 unique slugs.
  4. Describe before quote. Expect 1491 describe_only.
  5. Keep request rate low enough 到 avoid SSL EOF.
  6. For MCP clients, tools/list (22 tools), then swarme_capabilities_搜索 with a category — same cap discipline.

For matching a request 到 a bounded capability once the catalog is loaded, see AI 工具 routing. For file-handling tools in that list, see how 到 choose a secure 在线 文件 工具 before 上传.