add-label
Add labels to Trello cards to organize tasks, categorize content, and improve workflow visibility using specific label and card identifiers.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes | ID of the card to add the label to | |
| labelId | Yes | ID of the label to add |
Implementation Reference
- src/index.ts:383-417 (handler)The handler function that executes the logic for adding a label to a Trello card by posting to the Trello API endpoint.async ({ cardId, labelId }) => { try { const response = await fetch( `https://api.trello.com/1/cards/${cardId}/idLabels?key=${trelloApiKey}&token=${trelloApiToken}`, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ value: labelId, }), } ); const data = await response.json(); return { content: [ { type: 'text', text: JSON.stringify(data), }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Error adding label to card: ${error}`, }, ], isError: true, }; } }
- src/index.ts:379-382 (schema)Input schema using Zod for validating cardId and labelId parameters.{ cardId: z.string().describe('ID of the card to add the label to'), labelId: z.string().describe('ID of the label to add'), },
- src/index.ts:377-418 (registration)Registration of the 'add-label' tool on the MCP server, specifying name, input schema, and handler function.server.tool( 'add-label', { cardId: z.string().describe('ID of the card to add the label to'), labelId: z.string().describe('ID of the label to add'), }, async ({ cardId, labelId }) => { try { const response = await fetch( `https://api.trello.com/1/cards/${cardId}/idLabels?key=${trelloApiKey}&token=${trelloApiToken}`, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ value: labelId, }), } ); const data = await response.json(); return { content: [ { type: 'text', text: JSON.stringify(data), }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Error adding label to card: ${error}`, }, ], isError: true, }; } } );