Skip to main content
Glama
jhliberty

Basecamp MCP Server

by jhliberty

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
NameRequiredDescriptionDefault
card_idYesThe card ID
project_idYesThe project ID

Implementation Reference

  • 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)
        }]
      };
    }
  • 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'],
      },
    },
  • 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 || [];
    }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jhliberty/basecamp-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server