The four grounded examples:

slugaccessexecution_modemachine_run_statusserver_receives_Fayil_bytespdf-zuwa-wordKyautaclient_browserdescribe_onlyfalsepdf-editorPremiumclient_browserdescribe_onlyfalsemerge-pdfKyautaasync_workersupportedtruecompress-pdfKyautaasync_workersupportedtrue

pdf-zuwa-word and pdf-editor stay in the browser. Quote and run are blocked. merge-pdf and compress-pdf are machine-runnable and the server receives Fayil bytes. This post does not record a completed Haɗa artifact or an Loda session id. QA did not finish an Loda session.

The PDF category is mixed

The catalog PDF bucket holds 109 tools: 47 Kyauta, 62 Premium. Execution on that slice is client_browser 57, async_worker 50, server_sync 2. Machine status is 57 describe_only and 52 supported. Browser PDF tools and worker PDF tools sit in one directory. The directory heading does not tell you where bytes go.

Describe smoke on a related PDF slug, add-blank-page-zuwa-pdf, returned HTTP 200, supported, async_worker. That is the worker side of the same category. pdf-zuwa-word is the browser side. Do not copy one slug's Sirri onto the other.

Processing location on the four examples:

  • pdf-zuwa-word / pdf-editor: Sirri.processing_location client_browser
  • merge-pdf / compress-pdf: Sirri.processing_location server_worker_for_machine_runs

client_browser plus server_receives_Fayil_bytes false is the stay-in-browser contract. async_worker plus server_receives_Fayil_bytes true is not. Review how zuwa choose a secure kan layi Fayil kayan aiki before you attach a Fayil zuwa the worker path.

Describe_only is why the browser tools will not run from a key

Docs at https://swarme.io/developers list Bincike, Describe, Quote, Run. They also state that describe_only blocks quote and run. API QA recorded pdf-zuwa-word and pdf-editor as skipped_browser_only with no quote. That skip is the contract, not a crawl failure.

The full catalog is 1940 tools: 560 Kyauta, 1380 Premium; 1491 describe_only, 439 supported, 10 requires_worker. 1344 tools are client_browser. Browser PDF tools are inside that 1344. An API key created at https://swarme.io/dashboard?tab=developers (/dashboard/developers is 404) can still describe them. Prefix sk_sw_QdE8 only. Scopes capabilities:run and uploads:write do not execute pdf-zuwa-word.

MCP follows the same gate. POST https://swarme.io/mcp initialize (protocolVersion 2025-03-26) identified Swarme Capability MCP Alpha 2026.07.15-wallet-alpha. tools/list returned 22 tools, including swarme_Loda_session_Ƙirƙira. That helper is for machine-native Fayil capabilities. It is not a bypass of describe_only. Do not Ƙirƙira an Loda session for a slug whose describe says server_receives_Fayil_bytes false.

Worker PDF tools still quote, and quote is not an artifact

merge-pdf and compress-pdf are supported. The documented path is still describe, quote, run. A completed uuid-generator run on the same account returned 4cd3c7b6-0495-447a-8efd-9a1374f7599c at $0.00 included after a 900-second lock. That UUID path sent no Fayil. Do not treat it as a Haɗa receipt.

Wallet $0.00 / metered_observe / spend_limit_minor 0 is the observed balance. It does not change server_receives_Fayil_bytes. Lifetime on the dashboard is not a Sirri flag.

API QA later attempted quote+run on 435 tools: 272 passed, 163 failed (99 HTTP 422 after quote, 63 poll timeouts), 1505 skipped. Hoto PUT uploads returned WAF 403; multipart POST with Fayil= worked. Those Loda notes are about the worker path. They are not a completed merge-pdf Sauke, and they are not a session id.

If a worker PDF run returns HTTP 422, read the Filin rule. Observed non-PDF 422 strings (Use labeled address lines in key: value Fom or provide JSON., Enter valid Base64URL input.) are the same class of stop: a named Filin, not a browser/worker mix-up.

How zuwa choose before the Fayil leaves the Shafi

  1. GET /api/capabilities/{slug}.
  2. Read execution.machine_run_status. If describe_only, stop the machine path. Open the kayan aiki Shafi if the work belongs in the browser.
  3. Read Sirri.server_receives_Fayil_bytes and execution_mode.
  4. If the value is false / client_browser, do not call swarme_Loda_session_Ƙirƙira. Do not POST run.
  5. If the value is true / async_worker / supported, tell the caller the server will receive bytes. Then quote. Then run with quote_id.
  6. Poll GET /api/capability-runs/{run_id}. Timeouts happened on other async workers (20s and 90s windows). A timeout is not a 404 on the kayan aiki Shafi.

Public Shafuka: https://swarme.io/kayan aiki/pdf-zuwa-word, https://swarme.io/kayan aiki/pdf-editor, https://swarme.io/kayan aiki/merge-pdf, https://swarme.io/kayan aiki/compress-pdf.

Unauthenticated quote is HTTP 419. The login toast Your secure Fom token expired. Please go back and try again. is a Fom token. Neither message moves a PDF from the browser into a worker.

For pausing an agent before a file-capable run, see AI kayan aiki routing.