create_column
Add a new column to a card table in Basecamp by specifying the project ID, card table ID, and column title. Simplify project organization and task management directly through API integration.
Instructions
Create a new column in a card table
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| card_table_id | Yes | The card table ID | |
| project_id | Yes | The project ID | |
| title | Yes | The column title |
Implementation Reference
- src/index.ts:670-682 (handler)MCP tool handler for 'create_column' that calls BasecampClient.createColumn and formats the response.case 'create_column': { const column = await client.createColumn(typedArgs.project_id, typedArgs.card_table_id, typedArgs.title); return { content: [{ type: 'text', text: JSON.stringify({ status: 'success', column, message: `Column '${typedArgs.title}' created successfully` }, null, 2) }] }; }
- src/index.ts:231-242 (registration)Registration of the 'create_column' tool including its input schema.name: 'create_column', description: 'Create a new column in a card table', inputSchema: { type: 'object', properties: { project_id: { type: 'string', description: 'The project ID' }, card_table_id: { type: 'string', description: 'The card table ID' }, title: { type: 'string', description: 'The column title' }, }, required: ['project_id', 'card_table_id', 'title'], }, },
- src/lib/basecamp-client.ts:154-159 (helper)Implementation of createColumn method in BasecampClient that makes the API call to create a column.async createColumn(projectId: string, cardTableId: string, title: string): Promise<Column> { const response = await this.client.post(`/buckets/${projectId}/card_tables/${cardTableId}/columns.json`, { title, }); return response.data; }