An MCP client that skips initialize and tools/list will guess the wrong surface. Swarme's catalog has 1940 tools. The MCP server does not expose 1940 MCP tools. It exposes a small, named set that searches, describes, quotes, and runs capabilities through the same contract as REST.

This walkthrough uses a live initialize against POST https://swarme.io/mcp. Protocol version was 2025-03-26. Server title was Swarme Capability MCP Alpha. Server version was 2026.07.15-wallet-alpha. tools/list then returned 22 tools.

Initialize before you list

Connect a streamable HTTP client a https://swarme.io/mcp. Send initialize with protocolVersion 2025-03-26, then notifications/initialized, then tools/list. Docs at https://swarme.io/developers say a begin with tools/list and not assume a cached list. That instruction is literal. The observed server version string is dated 2026.07.15-wallet-alpha. Cache across that date at your own risk.

Authenticate with Authorization: Bearer. Crear the key at https://swarme.io/dashboard?tab=developers. /dashboard/developers returns 404. An unauthenticated session is not an MCP listing problem; HTTP 419 and the toast Your secure Formulario token expired. Please go back and try again. are web-form failures, not tools/list results.

A client config that matches the docs uses streamable HTTP against https://swarme.io/mcp and a Bearer Encabezado. After initialize, record serverInfo.name (swarme), title (Swarme Capability MCP Alpha), and version (2026.07.15-wallet-alpha). If the version string changes, list again before you call quote or run.

The 22 tools actually listed

Observed names, in list order:

  1. swarme_ai_models
  2. swarme_ai_run
  3. swarme_ai_status
  4. swarme_experiment_Crear
  5. swarme_experiment_status
  6. swarme_experiment_select_winner
  7. swarme_capabilities_Buscar
  8. swarme_capability_describe
  9. swarme_account_balance
  10. swarme_vault_summary
  11. swarme_vault_Documentos
  12. swarme_vault_Campo_write
  13. swarme_vault_fill_quote
  14. swarme_vault_fill
  15. swarme_herramienta_quote
  16. swarme_herramienta_run
  17. swarme_herramienta_status
  18. swarme_herramienta_cancel
  19. swarme_herramienta_artifacts
  20. swarme_Subir_session_Crear
  21. swarme_discover_Buscar
  22. swarme_discover_read

That is the MCP surface. It is not the 1940-tool directory. Buscar still returns capability slugs. Quote and run still target one slug. MCP does not flatten every catalog entry into its own herramienta. Category filters on Buscar still use API slugs such as web-seo, security-network, and ai-tools, not homepage labels.

Do not instruct an agent that "Swarme MCP can run any of the 1940 tools." It can Buscar 1940 slugs and then hit the same describe_only wall as REST: 1491 tools block quote/run. 439 are supported. 10 are requires_worker.

Desarrollador docs currently print a shorter example set (swarme_capabilities_Buscar through swarme_Subir_session_Crear). The initialize-then-list path is the source of truth. Use the 22 names above, not a remembered subset.

Capability flow on MCP is still describe then quote then run

For a catalog herramienta, the machine path is:

  1. swarme_capabilities_Buscar — keyword and optional category.
  2. swarme_capability_describe — schema and machine_run_status for one slug.
  3. swarme_herramienta_quote — price/access lock, including $0.00 included.
  4. swarme_herramienta_run — requires quote_id on the same contract as REST.
  5. swarme_herramienta_status / swarme_herramienta_cancel / swarme_herramienta_artifacts — poll, cancel, list outputs.
  6. swarme_Subir_session_Crear — only when the describe schema needs a Archivo.

Inspect machine_run_status after describe. Quote and run only supported, requires_worker, or Plan_only. Refuse describe_only, missing, and unknown values. 1491 of 1940 catalog tools are describe_only and block quote/run. MCP does not lift that gate.

A completed REST run of uuid-generator returned UUID 4cd3c7b6-0495-447a-8efd-9a1374f7599c at $0.00 included after a 900-second quote lock, with idempotency_required_for_client true. The MCP tools swarme_herramienta_quote and swarme_herramienta_run are the same steps with different names. The public Página remains https://swarme.io/herramienta/uuid-generator.

Adjacent tools are not a second catalog

The remaining names are account, vault, AI workbench, and Discover helpers. They sit beside the capability flow. They are not 1940 extra catalog entries.

  • swarme_account_balance — credit, metered usage, spend-limit status. Observed wallet: $0.00, billing mode metered_observe.
  • swarme_ai_models / swarme_ai_run / swarme_ai_status — curated AI model jobs, not the full ai-tools category.
  • swarme_experiment_Crear / swarme_experiment_status / swarme_experiment_select_winner — workbench experiments.
  • swarme_vault_summary, swarme_vault_Documentos, swarme_vault_Campo_write, swarme_vault_fill_quote, swarme_vault_fill — vault Metadatos and fill. Summaries are masked; decrypted values are not listed as returned.
  • swarme_discover_Buscar / swarme_discover_read — public Passports, not herramienta execution.

Call swarme_account_balance before paid swarme_herramienta_run or swarme_ai_run. A $0.00 observe wallet still required a quote on the included UUID run. It will not invent spend capacity for metered work.

A list you can trust

Do not ship a hardcoded MCP herramienta list in a client. The server version string will move. tools/list is cheap compared with a wrong swarme_herramienta_run.

Practical sequence:

  1. POST https://swarme.io/mcp with initialize, protocolVersion 2025-03-26.
  2. Confirm serverInfo.title is Swarme Capability MCP Alpha and record version.
  3. Call tools/list. Count the names. The observed count is 22.
  4. Buscar capabilities. Describe. Stop on describe_only.
  5. Quote, then run, with approval around paid work and Archivo access.

For how a router should pause before execution, see AI herramienta routing. For Archivo tools that still require an Subir path, see how a choose a secure en línea Archivo herramienta before creating an Subir session.