create-cards
Add multiple cards to Trello lists with names, descriptions, and list assignments to organize tasks and projects.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cards | Yes |
Implementation Reference
- src/tools/card-tool-handlers.ts:24-32 (handler)The async handler function implementing the 'create_card' MCP tool. It retrieves the CardService from ServiceFactory and calls createCard with the tool arguments./** * Create a new card * @param args - Tool arguments * @returns Promise resolving to the created card */ create_card: async (args: any) => { const cardService = ServiceFactory.getInstance().getCardService(); return cardService.createCard(args); },
- src/tools/card-tools.ts:33-102 (schema)The JSON schema definition and metadata for the 'create_card' tool, including input parameters and requirements.name: "create_card", description: "Create a new card on a list. Use this tool when you need to add a new card to a list.", inputSchema: { type: "object", properties: { name: { type: "string", description: "Name of the card" }, idList: { type: "string", description: "ID of the list the card should belong to" }, desc: { type: "string", description: "Description of the card" }, pos: { type: ["string", "number"], description: "Position of the card (top, bottom, or a positive number)" }, due: { type: ["string", "null"], description: "Due date for the card (ISO-8601 format, e.g., 2023-12-31T12:00:00Z)" }, start: { type: ["string", "null"], description: "Start date for the card (ISO-8601 format, e.g., 2023-12-31T12:00:00Z)" }, dueComplete: { type: "boolean", description: "Whether the due date is complete" }, idMembers: { type: "array", items: { type: "string" }, description: "IDs of members to assign to the card" }, idLabels: { type: "array", items: { type: "string" }, description: "IDs of labels to add to the card" }, urlSource: { type: "string", description: "URL to attach to the card" }, idCardSource: { type: "string", description: "ID of a card to copy from" }, keepFromSource: { type: "string", description: "What to copy from the source card (all or a comma-separated list of: attachments, checklists, comments, due, labels, members, stickers)" }, address: { type: "string", description: "Address for the card" }, locationName: { type: "string", description: "Location name for the card" }, coordinates: { type: "string", description: "Coordinates for the card (latitude,longitude)" } }, required: ["name", "idList"] }
- src/index.ts:97-101 (registration)MCP server registration for the ListToolsRequestSchema, which exposes the 'create_card' tool schema as part of trelloTools.server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: trelloTools }; });
- src/index.ts:125-142 (registration)MCP server registration for CallToolRequestSchema, which dispatches to the 'create_card' handler from trelloToolHandlers based on tool name.server.setRequestHandler(CallToolRequestSchema, async (request) => { try { const toolName = request.params.name; // Use type assertion to tell TypeScript that toolName is a valid key const handler = trelloToolHandlers[toolName as keyof typeof trelloToolHandlers]; if (!handler) { throw new McpError( ErrorCode.MethodNotFound, `Unknown tool: ${toolName}` ); } // Execute the tool handler with the provided arguments const result = await handler(request.params.arguments); // Return the result return {
- src/tools/trello-tools.ts:18-24 (registration)Aggregation of all tool schemas into trelloTools array, spreading cardTools which includes 'create_card'.export const trelloTools = [ ...boardTools, ...listTools, ...cardTools, ...memberTools, ...labelTools, ...checklistTools