move_card
Move a card to a different column within a project using the specified project, card, and destination column IDs, simplifying task organization and workflow management in Basecamp.
Instructions
Move a card to a new column
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| card_id | Yes | The card ID | |
| column_id | Yes | The destination column ID | |
| project_id | Yes | The project ID |
Implementation Reference
- src/lib/basecamp-client.ts:245-249 (handler)The moveCard method in BasecampClient class that executes the API POST request to move a card to the specified column in Basecamp.async moveCard(projectId: string, cardId: string, columnId: string): Promise<void> { await this.client.post(`/buckets/${projectId}/card_tables/cards/${cardId}/moves.json`, { column_id: columnId, }); }
- src/index.ts:313-325 (registration)Registers the 'move_card' tool in the MCP server's listTools handler, including name, description, and input schema validation.{ name: 'move_card', description: 'Move a card to a new column', inputSchema: { type: 'object', properties: { project_id: { type: 'string', description: 'The project ID' }, card_id: { type: 'string', description: 'The card ID' }, column_id: { type: 'string', description: 'The destination column ID' }, }, required: ['project_id', 'card_id', 'column_id'], }, },
- src/index.ts:684-695 (handler)The switch case in the MCP CallToolRequestSchema handler that processes 'move_card' calls by invoking BasecampClient.moveCard and formatting the success response.case 'move_card': { await client.moveCard(typedArgs.project_id, typedArgs.card_id, typedArgs.column_id); return { content: [{ type: 'text', text: JSON.stringify({ status: 'success', message: `Card moved to column ${typedArgs.column_id}` }, null, 2) }] }; }