---
canonical_url: "https://docs.composio.dev/toolkits/carbon_voice_mcp"
markdown_url: "https://docs.composio.dev/toolkits/carbon_voice_mcp.md"
product: "platform"
version: null
last_updated: null
---

# Carbon Voice MCP

Carbon Voice MCP connects agents to authorized voice messages, conversations, and collaboration workflows in Carbon Voice.

- **Category:** model context protocol
- **Auth:** DCR_OAUTH
- **Composio-managed OAuth available?** No
- **Tools:** 28
- **Triggers:** 0
- **Slug:** `CARBON_VOICE_MCP`
- **Version:** 20260910_00

## Tools

### Add attachments to message

**Slug:** `CARBON_VOICE_MCP_ADD_ATTACHMENTS_TO_MESSAGE`

Add attachments to a message. In order to add attachments to a message, you must provide a message id and the attachments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `links` | array | Yes | Array of links to be attached to the message |

### Create conversation message

**Slug:** `CARBON_VOICE_MCP_CREATE_CONVERSATION_MESSAGE`

Sends a message to an existing conversation or any type with a conversation_id. To reply as a thread, included a message_id for "parent_id". You must provide a transcript or attachment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `links` | array | No | Array of links to be attached to the message |
| `transcript` | string | No | The Message transcript will be used to generate audio using text-to-speech |
| `from_message_id` | string | No | Message ID to be used as a base for the new message. (Optional only when from_message_type is NewMessage) |
| `from_message_type` | string ("PreRecorded" | "NewMessage" | "Forward" | "MessageId") | No | From Message type |

### Create direct message

**Slug:** `CARBON_VOICE_MCP_CREATE_DIRECT_MESSAGE`

Send a Direct Message (DM) to a User or a Group of Users. In order to create a Direct Message, you must provide transcript or link attachments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | object | Yes |  |
| `links` | array | No | Array of links to be attached to the message |
| `transcript` | string | No | The Message transcript will be used to generate audio using text-to-speech |
| `workspace_id` | string | No | The workspace ID to send the message to |
| `from_message_id` | string | No | Message ID to be used as a base for the new message. (Optional only when from_message_type is NewMessage) |
| `from_message_type` | string ("PreRecorded" | "NewMessage" | "Forward" | "MessageId") | No | From Message type |

### Create folder

**Slug:** `CARBON_VOICE_MCP_CREATE_FOLDER`

Create a new folder.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the Folder |
| `type` | string ("voicememo" | "prerecorded") | Yes | Folder type |
| `workspace_id` | string | Yes | Workspace ID |
| `parent_folder_id` | string | No | Parent Folder ID |

### Create voicememo message

**Slug:** `CARBON_VOICE_MCP_CREATE_VOICEMEMO_MESSAGE`

Create a VoiceMemo Message. In order to create a VoiceMemo Message, you must provide a transcript or link attachments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `links` | array | No | Array of links to be attached to the message |
| `folder_id` | string | No | Folder ID (not allowed when workspace_id specified is different from the folder_id) |
| `audio_file` | string | No | Audio file upload on multipart requests. Supported Formats: .mp3, .m4a, .wav, .aac, .ogg, .flac, .wma, .opus, .webm. (Overwrites transcript) |
| `transcript` | string | No | The Message transcript will be used to generate audio using text-to-speech |
| `workspace_id` | string | No | Workspace ID (not allowed when folder_id specified is different from the folder_id) |

### Delete folder

**Slug:** `CARBON_VOICE_MCP_DELETE_FOLDER`

Delete a folder by its ID. Deleting a folder will also delete nested folders and all the messages in referenced folders. (This is a destructive action and cannot be undone, so please be careful.)

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

### Get ai action responses

**Slug:** `CARBON_VOICE_MCP_GET_AI_ACTION_RESPONSES`

Retrieve previously generated AI Action (Prompt) responses by filtering for a specific prompt, message, or conversation ID. Combine filters to narrow results and view all AI-generated responses related to a particular prompt, message, or conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `date` | string | No |  |
| `limit` | number | No |  |
| `direction` | string ("older" | "newer") | No |  |
| `prompt_id` | string | No |  |
| `channel_id` | string | No |  |
| `message_id` | string | No |  |

### Get conversation

**Slug:** `CARBON_VOICE_MCP_GET_CONVERSATION`

Get a conversation by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

### Get conversation users

**Slug:** `CARBON_VOICE_MCP_GET_CONVERSATION_USERS`

Get users in a conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

### Get current user

**Slug:** `CARBON_VOICE_MCP_GET_CURRENT_USER`

Get the current user information. 

### Get folder

**Slug:** `CARBON_VOICE_MCP_GET_FOLDER`

Get a folder by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `date` | string | No | Return only Subfolders updated based on the date and direction (must inform include_first_level_tree = true) |
| `direction` | string ("older" | "newer") | No | Direction of the results (newer or older) |
| `include_first_level_tree` | boolean | No | Defines if the first level of the folder tree should be returned |

### Get folder with messages

**Slug:** `CARBON_VOICE_MCP_GET_FOLDER_WITH_MESSAGES`

Get a folder including its messages by its ID. (Only messages at folder level are returned.)

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

### Get message

**Slug:** `CARBON_VOICE_MCP_GET_MESSAGE`

Get a message by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `fields` | string | No | Fields (optional) - Additional fields to include in the response. Possible values: conversation, creator, labels. |
| `language` | string | No | Language (optional) - Original language will be used if not provided or not found. |

### Get recent messages

**Slug:** `CARBON_VOICE_MCP_GET_RECENT_MESSAGES`

Get most recent messages, including their associated Conversation, Creator, and Labels information. Returns a maximum of 10 messages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | No | Language (optional) - Original language will be used if not provided or not found. |
| `conversation_id` | string | No | Conversation ID (optional) |

### Get root folders

**Slug:** `CARBON_VOICE_MCP_GET_ROOT_FOLDERS`

Lists all root folders for a given workspace, including their names, IDs, and basic structure, but does not provide aggregate counts.(Required to inform message type:voicememo,prerecorded)

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("voicememo" | "prerecorded") | Yes | Folder Type |
| `sort_by` | string ("created_at" | "last_updated_at" | "name") | No | Field to sort by |
| `workspace_id` | string | No | Workspace ID |
| `sort_direction` | string ("ASC" | "DESC") | No | Sort order direction |
| `include_all_tree` | boolean | No | Return all folders tree |

### Get user

**Slug:** `CARBON_VOICE_MCP_GET_USER`

Get detailed information about a specific user by their ID. Returns the full user profile — name, languages, voice settings, workspace memberships and roles, notification preferences, and timestamps. This is richer than `search_user` (which only finds users by phone, email, or name). Use this when you already have a user ID and need their complete information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

### Get workspaces basic info

**Slug:** `CARBON_VOICE_MCP_GET_WORKSPACES_BASIC_INFO`

Get basic information about a workspace.

### List ai actions

**Slug:** `CARBON_VOICE_MCP_LIST_AI_ACTIONS`

List AI Actions (Prompts). Optionally, you can filter by owner type and workspace id. Filtering by owner type, Possible values: "user", "workspace", "system". Do not use unless the user explicitly requests it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner_type` | string ("user" | "workspace" | "system") | No |  |
| `workspace_id` | string | No |  |

### List conversations

**Slug:** `CARBON_VOICE_MCP_LIST_CONVERSATIONS`

List all conversations. Returns a simplified view of user conversations that have had messages sent or received within the last 6 months. Each result includes id, name, workspace_id, and type (directMessage, customerConversation, namedConversation, or asyncMeeting).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `match` | string ("any" | "all") | No | Match mode: `any` (union, default) or `all` (intersection). `any` returns conversations with at least one of the given users; `all` returns conversations with all of them. |
| `user_ids` | array | No | List of user IDs to filter conversations by. When omitted, all conversations for the caller are returned. Requires actual user IDs, not usernames or display names. If you only have a person's name, call `search_users` first (e.g. `names: ["Brett"]`) to resolve it to a user ID. If `search_users` returns more than one candidate for a name, ask the caller which person they meant instead of guessing. |

### List messages

**Slug:** `CARBON_VOICE_MCP_LIST_MESSAGES`

List Messages. By default returns latest 20 messages. The maximum allowed range between dates is 183 days (6 months). All presigned URLs returned by this tool are ready to use. Do not parse, modify, or re-encode them—always present or use the URLs exactly as received.If you want to get messages from a specific date range, you can use the "start_date" and "end_date" parameters. If you want to get messages from a specific date, you can use the "date" parameter. If you want to get messages from a specific user, you can use the "user_ids" parameter. If you want to get messages from a specific conversation, you can use the "conversation_id" parameter. If you want to get messages from a specific folder, you can use the "folder_id" parameter. If you want to get messages from a specific workspace, you can use the "workspace_id" parameter. If you want to get messages for a particular language, you can use the "language" parameter. 

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | number | No |  |
| `size` | number | No | Max number of results per page is: **50** |
| `type` | string ("channel" | "prerecorded" | "voicememo" | "stored" | "welcome") | No | Type (optional) |
| `end_date` | string | No | End Date range |
| `language` | string | No | Language (optional) |
| `user_ids` | array | No | User IDs (optional). List of user IDs to filter messages by. If not provided, all users will be included. |
| `folder_id` | string | No | Folder ID (optional) |
| `start_date` | string | No | Start Date range |
| `workspace_id` | string | No | Workspace ID (optional) |
| `sort_direction` | string ("ASC" | "DESC") | No | The field used to sort results is **Creation Date** |
| `conversation_id` | string | No | Conversation ID (optional) |

### Move folder

**Slug:** `CARBON_VOICE_MCP_MOVE_FOLDER`

Move a folder by its ID. Move a Folder into another Folder or into a Workspace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `folder_id` | string | No | Folder ID |
| `workspace_id` | string | No | Workspace ID |

### Move message to folder

**Slug:** `CARBON_VOICE_MCP_MOVE_MESSAGE_TO_FOLDER`

Move a message to a folder by its ID. Move a Message into another Folder or into a Workspace. Only allowed to move messages of type: voicememo,prerecorded.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `folder_id` | string | No | Folder ID |
| `message_id` | string | Yes | Only allowed to add messages of type: voicememo,prerecorded |
| `workspace_id` | string | No | Workspace ID |

### Run ai action

**Slug:** `CARBON_VOICE_MCP_RUN_AI_ACTION`

Run an AI Action (Prompt) for a message. You can run an AI Action for a message by its ID or a list of message IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | No | The language of the response. Defaults to original message. |
| `prompt_id` | string | Yes |  |
| `channel_id` | string | No |  |
| `message_ids` | array | Yes |  |
| `workspace_id` | string | No |  |
| `ignore_existing_response` | boolean | No | Whether to ignore existing response and generate a new one. Defaults to false. |

### Run ai action for shared link

**Slug:** `CARBON_VOICE_MCP_RUN_AI_ACTION_FOR_SHARED_LINK`

Run an AI Action (Prompt) for a shared link. You can run an AI Action for a shared link by its ID or a list of shared link IDs. You can also provide the language of the response.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | No |  |
| `prompt_id` | string | Yes |  |
| `share_link_ids` | array | Yes |  |

### Search user

**Slug:** `CARBON_VOICE_MCP_SEARCH_USER`

Search for a User by their phone number, email address, id or name. (In order to search for a User, you must provide a phone number, email address, id or name.)When searching by name, only users that are part of your contacts will be returned

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the user to search for (Only users that are part of your contacts will be returned) |
| `email` | string | No | Email Address |
| `phone` | string | No | Phone Number |

### Search users

**Slug:** `CARBON_VOICE_MCP_SEARCH_USERS`

Search multiple Users by their phone numbers, email addresses, ids or names. (In order to search Users, you must provide phone numbers, email addresses, ids or names.)When searching by name, only users that are part of your contacts will be returned

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ids` | array | No | User IDs |
| `names` | array | No | The names of the users to search for (Only users that are part of your contacts will be returned) |
| `emails` | array | No | Email Addresses |
| `phones` | array | No | Phone Numbers |

### Summarize conversation

**Slug:** `CARBON_VOICE_MCP_SUMMARIZE_CONVERSATION`

Summarize a conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | number | No |  |
| `end_date` | string | No |  |
| `language` | string | No |  |
| `prompt_id` | string | Yes |  |
| `start_date` | string | No |  |
| `message_ids` | array | No |  |
| `conversation_id` | string | Yes |  |

### Update folder name

**Slug:** `CARBON_VOICE_MCP_UPDATE_FOLDER_NAME`

Update a folder name by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `name` | string | Yes | New Folder Name |
