Skip to main content

Available Tools

This is the full reference for every tool the Bolti Model Context Protocol (MCP) server registers, grouped by surface. You rarely call these by name yourself - your client's model picks them based on what you ask in chat - but this page is the authoritative list of what exists and what each one does.

How to read this page​

  • Tool is the exact tool name the model sees.
  • Purpose is what it does.
  • Notes flags anything special, most importantly whether the tool requires confirmation.
Confirmation-gated tools

Tools marked confirm are destructive or billed. They require an explicit confirm: true argument. Without it they return a CONFIRMATION_REQUIRED error, so your client can check with you before the action runs. Read tools are never gated this way.

Secrets are write-only

You can set credentials such as tool authorization values and SIP trunk passwords, but read tools never return them - they show a redacted placeholder. All access is enforced by the Bolti backend against your token's workspace membership and role, and write and call-initiating tools are rate-limited.

System​

ToolPurposeNotes
system_healthReport the MCP server version and confirm the Bolti backend is reachable.Works without a token. Good first check after install.

Session and authentication​

ToolPurposeNotes
whoamiShow which user and workspace the current token authenticates as.Read.
login_with_tokenAuthenticate a local stdio session with a pasted token.Local transport only; alternative to BOLTI_API_TOKEN.
logoutClear the local in-memory session.Local transport only.

Personal Access Tokens are created and revoked in the dashboard, not through MCP tools. See Personal Access Tokens.

Agents​

ToolPurposeNotes
agents_listList agents in the workspace.Read.
agent_getFetch a single agent's full configuration.Read.
agent_options_getList the workspace's available LLMs, voices, and STT models.Read. Feeds the defaults on create.
agent_variables_getList an agent's prompt variables and which are required.Read. Run before placing a call.
agent_createCreate an agent.Auto-fills LLM, voice, and STT defaults from agent_options_get for fields you omit.
agent_updateUpdate an agent, including its system prompt.The prompt lives in the prompt field.
agent_deleteDelete an agent.confirm
agent_share_links_listList an agent's browser-preview share links.Read.
agent_share_link_createCreate a share link for browser preview.
agent_share_link_deleteDelete a share link.confirm

Tools (workspace HTTP tools)​

These manage the reusable HTTP tools an agent's LLM can call during a conversation. See Workspace HTTP Tools.

ToolPurposeNotes
tools_listList workspace HTTP tools.Read.
tool_getFetch a single tool's configuration.Read. Authorization values are redacted.
tool_createCreate a workspace HTTP tool.Define LLM-supplied arguments via the tool's input_schema.
tool_updateUpdate a tool.
tool_deleteDelete a tool and unassign it from every agent.confirm
tool_testSend a real request to the tool's endpoint with mock arguments.Useful before assigning.
agent_tools_listList the tools assigned to an agent.Read.
agent_tools_setSet an agent's assigned tools.Pass the full list of tool UUIDs.

Calls and conversations​

ToolPurposeNotes
calls_listList calls in the workspace.Read.
call_getFetch a single call's details.Read.
call_recording_url_getGet a signed playback URL for a call recording.Read. URL is time-limited.
agent_conversations_listList an agent's conversation history.Read.
agent_conversation_getFetch a single conversation, including its transcript.Read.

Phone numbers​

ToolPurposeNotes
phone_numbers_listList numbers assigned in the workspace.Read.
dids_list_availableList available Direct Inward Dialing (DID) numbers from your provider.Read.
phone_number_assignAssign a number to an agent for inbound calls.
phone_number_removeRemove a number from an agent.confirm

SIP and outbound calling​

ToolPurposeNotes
inbound_trunks_listList inbound Session Initiation Protocol (SIP) trunks.Read.
inbound_trunk_createCreate an inbound SIP trunk.
inbound_trunk_deleteDelete an inbound SIP trunk.confirm
outbound_trunks_listList outbound SIP trunks.Read.
outbound_trunk_createCreate an outbound SIP trunk.Passwords are write-only.
outbound_trunk_deleteDelete an outbound SIP trunk.confirm
outbound_call_startPlace an outbound call from an agent to a number.confirm - this is a billed action. Pass variable_values for the agent's prompt variables.

Campaigns​

Outbound call campaigns. A recurring campaign dials one number on a cron schedule; a bulk campaign dials a list of targets once. Campaigns are created as drafts and place no calls until started.

ToolPurposeNotes
campaigns_listList campaigns in the workspace.Read. Filter by status, kind, or agent_id.
campaign_getFetch a campaign's configuration, status, and progress counters.Read.
campaign_createCreate a recurring or bulk campaign in draft status.Recurring needs cron_expr and variable_values.to_number.
campaign_updateEdit a campaign's name, schedule, rate limit, retries, or variables.Pass null for start_at / end_at to clear them.
campaign_startStart a draft campaign so it begins placing calls.confirm - this is a billed action.
campaign_pausePause an active campaign.Calls already in progress finish normally.
campaign_resumeResume a paused campaign.confirm - this is a billed action.
campaign_cancelCancel a campaign permanently.confirm - cannot be restarted.
campaign_calls_listList the calls a campaign has scheduled or placed.Read. Filter by status and scheduled time.
campaign_live_stats_getSee how many of a campaign's calls are in progress against the number's concurrency cap.Read.
campaign_targets_addAdd targets to a bulk campaign.Up to 1000 per call; duplicates are skipped. Targets added to an active campaign are dialed.
campaign_targets_listList a bulk campaign's targets and their dialing status.Read.
campaign_target_skipSkip a pending target so it is never dialed.Fails once the target is scheduled or finished.

Settings​

ToolPurposeNotes
workspaces_listList workspaces in the organization.Read.
organization_getFetch the organization's details.Read.
workspace_getFetch the current workspace's settings.Read.
workspace_updateUpdate workspace settings.confirm, admin-only.
workspace_members_listList workspace members and their roles.Read.
supported_models_listList models the platform supports.Read.
workspace_credits_getFetch the workspace credit balance.Read.

Authoring agents from chat​

A key strength of the MCP server is editing agent behavior directly. An agent's system prompt is the prompt field on agent_create and agent_update. Prompts support Liquid templating for variables:

Hello {{ customer_name }}, thanks for calling {{ company_name | default: "our support line" }}.
  • {{ variable_name }} with no default is required and must be supplied per call.
  • {{ variable_name | default: "fallback" }} uses the fallback when no value is provided.
  • variable_defaults (a name-to-value map on the agent) sets default values for variables.
  • Per-call values are passed to outbound_call_start as variable_values.

Run agent_variables_get first to see which variables an agent declares and which are required, then supply them when you place the call. For workspace HTTP tools, define the tool's LLM-supplied arguments in its input_schema (a JSON Schema) and reference them in the URL, headers, or body with {{ argument }}. See Use Cases for worked examples.

Where to go next​

If you want to...Read
Install the serverInstallation
Understand token permissionsPersonal Access Tokens
See these tools in real workflowsUse Cases
Do everything programmatically insteadREST API