get_card_steps
Retrieve all sub-tasks (steps) associated with a specific card in Basecamp projects by providing the project ID and card ID for streamlined task management.
Instructions
Get all steps (sub-tasks) for a card
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| card_id | Yes | The card ID | |
| project_id | Yes | The project ID |
Implementation Reference
- src/index.ts:710-722 (handler)MCP tool handler for 'get_card_steps': calls BasecampClient.getCardSteps with project_id and card_id, then returns a JSON-formatted response with the steps and count.case 'get_card_steps': { const steps = await client.getCardSteps(typedArgs.project_id, typedArgs.card_id); return { content: [{ type: 'text', text: JSON.stringify({ status: 'success', steps, count: steps.length }, null, 2) }] }; }
- src/index.ts:341-351 (schema)Tool registration and input schema definition for 'get_card_steps', specifying required project_id and card_id parameters.name: 'get_card_steps', description: 'Get all steps (sub-tasks) for a card', inputSchema: { type: 'object', properties: { project_id: { type: 'string', description: 'The project ID' }, card_id: { type: 'string', description: 'The card ID' }, }, required: ['project_id', 'card_id'], }, },
- src/lib/basecamp-client.ts:261-264 (handler)Core implementation of getCardSteps: fetches the full card details and extracts/returns its steps array.async getCardSteps(projectId: string, cardId: string): Promise<CardStep[]> { const card = await this.getCard(projectId, cardId); return card.steps || []; }