Agent Platform tools
71 MCP tools backed by the Agent Platform endpoints.
These 71 tools call the same endpoints as the Agent Platform section of the API Reference. Each tool runs with the permissions of the Whippy user who authorized the connection and the OAuth scopes they granted.
The Behavior column comes from the MCP tool annotations Whippy publishes. Treat these labels as hints, not guarantees: they may omit external effects (for example, a Write tool can send a message to a recipient), and clients are not required to ask for confirmation before running a tool.
Agents
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_agent | Write | POST /v1/agents | Creates a Whippy AI Agent (voice/chat assistant) linked to an LLM config. |
delete_agent | Destructive (idempotent) | DELETE /v1/agents/{id} | Deletes a Whippy AI Agent. Confirm with show_agent first. |
discard_agent_draft | Destructive | DELETE /v1/agents/{id}/draft | Discards unpublished Agent draft changes and keeps the live published version. |
duplicate_agent | Write | POST /v1/agents/{id}/duplicate | Duplicates an Agent into a new draft copy you can edit independently. |
list_agents | Read-only | GET /v1/agents | Lists the organization's Whippy AI Agents (voice/chat assistants), not Omni sessions or MCP operations. Prefer search_agents for filtered lookup. |
publish_agent | Destructive (idempotent) | POST /v1/agents/{id}/publish | Publishes the staged Agent draft; also publishes the linked LLM draft when it has changes. |
rollback_agent_version | Destructive | POST /v1/agents/{id}/versions/{version_id}/rollback | Stages a previous Agent version from search_agent_versions into the draft. Live traffic is unchanged until publish_agent. |
search_agent_version_snapshots | Read-only | POST /v1/agents/{id}/versions/search/snapshots | Lists finer-grained Agent version snapshots (config history). |
search_agent_versions | Read-only | POST /v1/agents/versions/search | Lists historical Agent versions for audit or rollback. |
search_agents | Read-only | POST /v1/agents/search | Searches the organization's Whippy AI Agents (voice/chat assistants), not Omni sessions or MCP operations. |
show_agent | Read-only | GET /v1/agents/{id} | Returns a Whippy AI Agent. To inspect assigned runtime tools: a never-published Agent (status draft) stores its unpublished config in current_version and has no draft_version — always read current_version.llm_id. For a published Agent, read current_version.llm_id, or draft_version.llm_id when the user asks about staged changes and draft_version is present. Then call show_llm, read that version's settings.tool_ids with the same status-aware rule, then call show_tool for each ID. |
show_agent_version | Read-only | GET /v1/agents/versions/{version_id} | Returns one Agent version snapshot by ID (voice settings, linked llm_id). |
show_agent_voices | Read-only | GET /v1/agents/{id}/voices | Lists voice IDs compatible with an existing Whippy AI Agent (requires agent id). Call after create_agent, then set voice_id via update_agent_draft before publish_agent. |
start_agent_call | Write | POST /v1/agents/{id}/call | Places (or schedules) an outbound AI Agent voice call on a phone channel. |
start_agent_chat | Write | POST /v1/agents/{id}/chat | Starts (or schedules) an AI Agent chat session on a phone/WhatsApp/email channel conversation. |
update_agent_draft | Destructive | PUT /v1/agents/{id} | Edits the Agent draft (voice, llm_id, placeholders_filters, settings). Not live until publish_agent. |
update_agent_meta | Destructive | PUT /v1/agents/{id}/meta | Updates Agent-level metadata (name/description) without changing draft voice/LLM settings. |
update_agent_version_meta | Destructive | PUT /v1/agents/{id}/versions/{version_id}/meta | Updates metadata on a specific Agent version record. |
Executions
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
search_tool_executions | Read-only | POST /v1/agent_tool_executions/search | Searches recorded AI Agent tool executions for the organization: pending, successful, and failed calls a voice or chat Agent actually made. These are runtime logs, not the tool definitions returned by search_tools. Filter by agent, call, chat session, channel, knowledge base, tool name, or status. Uses the same ai_agents:read permission as tools. |
show_tool_execution | Read-only | GET /v1/agent_tool_executions/{id} | Returns one recorded AI Agent tool execution, including its request, response, error, latency, and knowledge bases. This is a runtime log, not a tool definition. Uses the same ai_agents:read permission as show_tool. |
Items
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_knowledge_base_item | Write | POST /v1/knowledge_bases/{knowledge_base_id}/items | Adds a document/item to a knowledge base draft. Publish afterward so embeddings become searchable. |
delete_knowledge_base_item | Destructive | DELETE /v1/knowledge_bases/{knowledge_base_id}/items/{id} | Deletes an item from a knowledge base draft. Publish afterward to apply. |
update_knowledge_base_item | Destructive | PUT /v1/knowledge_bases/{knowledge_base_id}/items/{id} | Updates an item in a knowledge base draft. Publish afterward for live RAG. |
Knowledge Bases
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_knowledge_base | Write | POST /v1/knowledge_bases | Creates a knowledge base shell. Add items with create_knowledge_base_item, then publish_knowledge_base before query_knowledge_bases can search it. |
delete_knowledge_base | Destructive (idempotent) | DELETE /v1/knowledge_bases/{id} | Deletes a knowledge base. Confirm with show_knowledge_base first. |
publish_knowledge_base | Destructive (idempotent) | POST /v1/knowledge_bases/{id}/publish | Publishes the knowledge base draft so agents and query_knowledge_bases use the new content. Wait for embedding_status completed before querying. |
query_knowledge_bases | Read-only | POST /v1/knowledge_bases/query | Semantically searches one or more published knowledge bases (embedding_status must be completed). |
rollback_knowledge_base | Destructive | POST /v1/knowledge_bases/{id}/versions/{version_id}/rollback | Stages a previous published knowledge base version into the draft. Live RAG is unchanged until publish_knowledge_base. |
search_knowledge_base_versions | Read-only | POST /v1/knowledge_bases/{id}/versions/search | Lists historical versions of a knowledge base for audit or rollback. |
search_knowledge_bases | Read-only | POST /v1/knowledge_bases/search | Lists/searches AI Agent knowledge bases (RAG document collections), not inbox messages. |
show_knowledge_base | Read-only | GET /v1/knowledge_bases/{id} | Returns one knowledge base by ID (current/draft versions and status). Resolve the ID with search_knowledge_bases. |
show_knowledge_base_version | Read-only | GET /v1/knowledge_bases/versions/{version_id} | Returns one knowledge base version by ID. |
update_knowledge_base | Destructive | PUT /v1/knowledge_bases/{id} | Updates knowledge base draft metadata/settings. Content changes go live only after publish_knowledge_base. |
LLMs
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_llm | Write | POST /v1/llms | Creates an LLM config (instructions, model, assigned runtime tool_ids) for Whippy AI Agents. |
delete_llm | Destructive (idempotent) | DELETE /v1/llms/{id} | Deletes an LLM config. Rejected while still linked to Agents — unlink/update agents first. |
discard_llm_draft | Destructive | DELETE /v1/llms/{id}/draft | Discards unpublished LLM draft changes and keeps the live published version. |
duplicate_llm | Write | POST /v1/llms/{id}/duplicate | Duplicates an LLM config into a new draft copy you can edit independently. |
publish_llm | Destructive (idempotent) | POST /v1/llms/{id}/publish | Publishes the staged LLM draft (activates a never-published draft LLM). |
rollback_llm_version | Destructive | POST /v1/llms/{id}/versions/{version_id}/rollback | Stages a previous LLM version from search_llm_versions into the draft. Live traffic is unchanged until publish_llm (or publish_agent when publishing Agent + LLM together). |
search_llm_versions | Read-only | POST /v1/llms/versions/search | Lists historical versions of an LLM config for audit or rollback. |
search_llms | Read-only | POST /v1/llms/search | Searches Whippy AI Agent LLM configs (prompt/model/tool assignments), not chat models for Omni. |
show_llm | Read-only | GET /v1/llms/{id} | Returns a Whippy AI Agent LLM configuration. To inspect assigned runtime tools: a never-published LLM (status draft) stores its unpublished config in current_version and has no draft_version — always read current_version.settings.tool_ids. For a published LLM, read current_version.settings.tool_ids, or draft_version.settings.tool_ids when the user asks about staged changes and draft_version is present. Then call show_tool for each ID. |
show_llm_version | Read-only | GET /v1/llms/versions/{version_id} | Returns one LLM version by ID (prompt, model, tool_ids for that snapshot). |
update_llm_draft | Destructive | PUT /v1/llms/{id} | Edits the LLM draft (prompt, model, tool_ids). Changes are not live until publish_llm (or publish_agent when coordinated). |
update_llm_version_meta | Destructive | PUT /v1/llms/versions/{version_id}/meta | Updates metadata on an LLM version (e.g. notes), not the prompt/model payload. |
Runs
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
cancel_agent_test_run | Destructive (idempotent) | POST /v1/agent_test_runs/{id}/cancel | id is the agent test run ID, not the agent test ID. Cancellation is cooperative: later steps stop, but an in-flight model request may finish. Call show_agent_test_run to read the state this returns. |
list_agent_test_runs | Read-only | GET /v1/agent_test_runs | List agent test runs |
override_agent_test_run | Destructive (idempotent) | POST /v1/agent_test_runs/{id}/override | Sets human_override without changing the machine result / rationale. |
search_agent_test_runs | Read-only | POST /v1/agent_test_runs/search | Search agent test runs |
show_agent_test_run | Read-only | GET /v1/agent_test_runs/{id} | Returns run status, transcript, machine verdict, and optional human override. |
Tests
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_agent_test | Write | POST /v1/agent_tests | Create a saved agent test and its editable draft. The definition may be incomplete, and creation does not execute the test. Use initialize_from to copy redacted content from a call or conversation_agent_session. That generation calls a model, so set confirm to true. Ordinary creation without initialize_from stays immediate. Do not send definition fields together with initialize_from. version_policy selects the agent configuration, not this test's publication state. Sources and agent_ids are optional evidence and discovery links. |
delete_agent_test | Destructive | DELETE /v1/agent_tests/{id} | Delete a test that has no runs. A test that already has runs is archived so its runs and published versions keep their identity. |
execute_agent_test | Write | POST /v1/agent_tests/{id}/execute | Execute the selected test version against agent_id. test_version.selection defaults to current_published. A test with no publication does not run its draft unless selection is draft. selection version requires a published version_id. version_policy on the definition selects the agent configuration and is not test_version. run_count is at most 3. Returns run ids. Cancellation targets a run, and a later edit does not change a queued run. |
execute_agent_test_for_agent | Write | POST /v1/agents/{agent_id}/tests/{id}/execute | Execute the selected test version against the path agent. test_version.selection defaults to current_published. A test with no publication does not run its draft unless selection is draft. The path agent is the execution target, not an association. run_count is at most 3. Returns run ids. |
list_agent_test_versions | Read-only | GET /v1/agent_tests/{id}/versions | List a page of version summaries for an agent test. The mutable draft is included and sorts first. limit defaults to 25 and cannot exceed 100. Full definition content is on show_agent_test_version. |
list_agent_tests | Read-only | GET /v1/agent_tests | List agent tests |
list_agent_tests_for_agent | Read-only | GET /v1/agents/{agent_id}/tests | List agent tests |
patch_agent_test | Destructive (idempotent) | PATCH /v1/agent_tests/{id} | Update the test name, sources, or agent associations. Change the definition with update_agent_test_draft. Omitted association lists are preserved, an empty list clears them, and null is invalid. |
publish_agent_test | Destructive (idempotent) | POST /v1/agent_tests/{id}/publish | Publish the editable draft as the next immutable test version when it is executable and different from the current publication. Publishing does not execute the test. Send the current draft revision. |
rollback_agent_test | Destructive (idempotent) | POST /v1/agent_tests/{id}/versions/{version_id}/rollback | Copy a published test version into the editable draft. This does not rewrite that publication or change the current published pointer. Send the current draft revision. |
search_agent_tests | Read-only | POST /v1/agent_tests/search | Search agent tests |
search_agent_tests_for_agent | Read-only | POST /v1/agents/{agent_id}/tests/search | Search agent tests |
show_agent_test | Read-only | GET /v1/agent_tests/{id} | Show agent test |
show_agent_test_version | Read-only | GET /v1/agent_tests/{id}/versions/{version_id} | Read one agent test version. Published versions are immutable. |
update_agent_test | Destructive (idempotent) | PUT /v1/agent_tests/{id} | Update the test name, sources, or agent associations. Change the definition with update_agent_test_draft. Omitted association lists are preserved, an empty list clears them, and null is invalid. |
update_agent_test_draft | Destructive (idempotent) | PATCH /v1/agent_tests/{id}/draft | Update the persisted editable test draft. Send its current revision. This is the test definition, not the agent configuration draft selected by version_policy. A stale revision returns 409. Published test versions cannot be written here. |
Tools
| Tool | Behavior | Endpoint | What it does |
|---|---|---|---|
create_tool | Write | POST /v1/tools | Creates an organization-defined runtime tool that can be assigned to a Whippy AI Agent's LLM. |
delete_tool | Destructive (idempotent) | DELETE /v1/tools/{id} | Deletes an organization-defined AI Agent runtime tool. Deletion is rejected while the tool is assigned to a live or draft LLM version. |
search_tools | Read-only | POST /v1/tools/search | Searches the organization's AI Agent runtime tools (such as call transfer, SMS action, and appointment tools). These are tool definitions that can be assigned to an LLM, not Omni's callable MCP operations and not the tools assigned to one specific Agent. To inspect one Agent's access, follow show_agent -> show_llm using the status-aware current_version vs draft_version rules on those operations, then show_tool. |
show_tool | Read-only | GET /v1/tools/{id} | Returns one organization-defined AI Agent runtime tool by ID. This is a capability callable by a voice/chat Agent at runtime, not an MCP operation available to Omni. |
update_tool | Destructive | PUT /v1/tools/{id} | Updates an organization-defined runtime tool that can be assigned to a Whippy AI Agent's LLM. |
Updated about 3 hours ago
Did this page help you?
