create_folder
Create a new folder in Carbon Voice to organize voice memos or prerecorded content within a workspace, specifying parent folder for hierarchical structure.
Instructions
Create a new folder.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the Folder | |
| type | Yes | Folder type | |
| workspace_id | Yes | Workspace ID | |
| parent_folder_id | No | Parent Folder ID |
Implementation Reference
- src/server.ts:614-637 (registration)Registration of the MCP 'create_folder' tool, including inline handler that calls the simplified API and schema reference.server.registerTool( 'create_folder', { description: 'Create a new folder.', inputSchema: createFolderBody.shape, annotations: { readOnlyHint: false, destructiveHint: false, }, }, async (args: CreateFolderPayload, { authInfo }): Promise<McpToolResponse> => { try { return formatToMCPToolResponse( await simplifiedApi.createFolder( args, setCarbonVoiceAuthHeader(authInfo?.token), ), ); } catch (error) { logger.error('Error creating folder:', { error }); return formatToMCPToolResponse(error); } }, );
- src/server.ts:624-636 (handler)Handler function for 'create_folder' tool: authenticates and delegates to simplifiedApi.createFolder, formats response.async (args: CreateFolderPayload, { authInfo }): Promise<McpToolResponse> => { try { return formatToMCPToolResponse( await simplifiedApi.createFolder( args, setCarbonVoiceAuthHeader(authInfo?.token), ), ); } catch (error) { logger.error('Error creating folder:', { error }); return formatToMCPToolResponse(error); } },
- Zod schema definition for create_folder input: name, type (voicememo/prerecorded), workspace_id, optional parent_folder_id.export const createFolderBody = zod.object({ "name": zod.string().describe('Name of the Folder'), "type": zod.enum(['voicememo', 'prerecorded']).describe('Folder type'), "workspace_id": zod.string().describe('Workspace ID'), "parent_folder_id": zod.string().optional().describe('Parent Folder ID') })
- Generated API client function simplifiedApi.createFolder: POST /simplified/folders with payload.const createFolder = ( createFolderPayload: CreateFolderPayload, options?: SecondParameter<typeof mutator>, ) => { return mutator<Folder>( { url: `/simplified/folders`, method: 'POST', headers: { 'Content-Type': 'application/json' }, data: createFolderPayload, }, options, ); };
- TypeScript interface matching the create_folder payload schema.export interface CreateFolderPayload { /** Name of the Folder */ name: string; /** Folder type */ type: CreateFolderPayloadType;