Agents and voices
Create and configure voice agents and pick voices.
Create and configure voice agents and pick voices. 6 tools.
trillet_list_agents
List agents
List all voice agents in the workspace with a compact summary (id, name, LLM, voice, linked call flow).
Flags: read-only structured output
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
Structured output
Returned as structuredContent (fields are optional; the same data is in the text result, where it is a bare array):
| Field | Type | Description |
|---|---|---|
agents | object[] |
trillet_get_agent
Get agent
Fetch one agent's full configuration by id.
Flags: read-only structured output
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
agent_id | string | yes | |
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
Structured output
Returned as structuredContent (fields are optional; the same data is in the text result):
| Field | Type | Description |
|---|---|---|
_id | string | |
name | string | |
llmModel | string | |
ttsModel | any | |
pathway | any |
trillet_create_agent
Create agent
Create a new voice agent. ttsModel is REQUIRED by the API (requests without it fail with a 500). Creating an agent usually also creates a linked call flow; check the response's pathway field. Sensible defaults: Rime voice, llmModel "platform-llm".
Flags: writes
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
name | string | yes | Agent display name |
llmModel | string | no | LLM id, e.g. "platform-llm", "gemini-2.5-flash", "gpt-5.2" Default: "platform-llm". |
ttsModel | object | yes | Text-to-speech voice configuration |
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
trillet_update_agent
Update agent
Update an agent's name, LLM model, voice, settings, or TTS pronunciation dictionary. Only send the fields you want to change. ttsDictionary is the agent-level pronunciation list (ElevenLabs voices): the API syncs it to the voice provider and manages the dictionary locator ids itself; send only words.
Flags: writes idempotent
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
agent_id | string | yes | |
name | string | no | |
llmModel | string | no | |
ttsModel | object | no | Text-to-speech voice configuration |
ttsDictionary | object | no | Agent-level TTS pronunciation dictionary (agent.ttsDictionary). Applies to ElevenLabs voices; other providers keep the words but do not sync them. |
settings | object | no | |
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
trillet_delete_agent
Delete agent
Delete an agent from the workspace. Unbind its phone numbers first (a bound number stops routing). Always confirm with the user; requires confirm=true. The linked call flow is a separate document and is not deleted.
Flags: writes destructive asks for confirmation
Clients that support MCP elicitation show a confirmation form before this tool runs; declining cancels it with no changes. Other clients rely on their own approval prompt and the confirm argument.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
agent_id | string | yes | |
confirm | boolean | yes | Must be true. Only set after the user explicitly approved deleting this agent. |
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
trillet_search_voices
Search voices
Search the built-in voice catalog across providers (Rime, ElevenLabs, Cartesia, OpenAI, Hume). All filters optional; with no filters returns the full catalog (trimmed to limit). Use the returned provider + voiceId in an agent's ttsModel.
Flags: read-only structured output
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
name | string | no | |
provider | string | no | |
gender | string | no | |
accent | string | no | e.g. "australian", "british", "american" |
category | string | no | |
age | string | no | |
use_case | string | no | |
limit | number | no | Max results returned (applied client-side) Default: 50. |
workspace_id | string | no | Run this call in another workspace: its id or its name (see trillet_list_workspaces). Omit to use the default (TRILLET_WORKSPACE_ID, the workspace picked when the connector was approved, or the one set with trillet_switch_workspace). |
Structured output
Returned as structuredContent (fields are optional; the same data is in the text result):
| Field | Type | Description |
|---|---|---|
total | number | |
returned | number | |
voices | object[] |