Call an MCP tool
Calls a tool on another MCP server you added in Settings › Agents & MCP and keeps what it returns.
Call tool on server
Details #
Switchboard is an MCP server for your agents, and it can also be a client: this step calls a tool on one of the MCP servers you added under Settings › Agents, in "Servers this Mac's macros may call". Servers can be local programs (stdio) or web addresses (streamable HTTP). You can bring them in from Claude Desktop's or Claude Code's config with one click.
A tool runs only if it is allowed for that server. A new server allows nothing; tick each tool, or turn on "allow all read-only tools" to allow the ones the server marks read-only. A tool that changes things asks you once per macro, the same way agents' runs are approved, and your Always or Never is remembered.
arguments is checked against the tool's input schema before the call. Text values may contain {{ }}.
The result goes into into: the tool's structured content when it sends some, otherwise its text joined
together. When the tool reports an error, the step fails with the server's own words.
A local server starts the first time a macro needs it, stays ready for five minutes after its last call, and stops with the engine.
- Call search_issues on github
- Show “{{ issues.total_count }} open issues”
Parameters #
| Parameter | Type | Required | Values | What it does |
|---|---|---|---|---|
server | text | Yes | The server's name as it appears in Settings › Agents & MCP. | |
tool | text | Yes | The tool's name, as List an MCP server's tools lists it. | |
arguments | record | Object of the tool's arguments. Text values may contain {{ }}. | ||
into | text | Variable that receives the result. | ||
sample | any value | Used in a dry run for a tool that changes things: that tool isn't called, and sample becomes the value of into. | ||
timeout | number | Seconds to wait for the tool before the step fails. |
Every step also accepts label, onFailure, timeout and dryRunSafe.