Public
Custom MCP server connecting Claude to Trello API
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.

Trello MCP Server

A custom Model Context Protocol server that connects Claude to the Trello API. Deployed on Val Town as an HTTP endpoint using the Streamable HTTP transport.

Setup

1. Get Trello API credentials

  1. Go to https://trello.com/power-ups/admin and create a Power-Up (or use the API key section)

  2. Copy your API Key

  3. Generate a token by visiting this URL in your browser (replace YOUR_API_KEY):

    https://trello.com/1/authorize?expiration=30days&name=TrelloMCP&scope=read,write&response_type=token&key=YOUR_API_KEY
    

2. Add environment variables

Add these two secrets to the val:

  • TRELLO_API_KEY β€” your Trello API key
  • TRELLO_TOKEN β€” your Trello token

πŸ‘‰ Add TRELLO_API_KEY here: https://www.val.town/x/jc_marketing/trello-mcp/environment-variables?key=TRELLO_API_KEY πŸ‘‰ Add TRELLO_TOKEN here: https://www.val.town/x/jc_marketing/trello-mcp/environment-variables?key=TRELLO_TOKEN

3. Connect to Claude

Claude Desktop (claude_desktop_config.json)

{ "mcpServers": { "trello": { "url": "https://trello-mcp.val.run" } } }

Claude API / Claude Code

Add the MCP server URL to your Claude configuration:

https://trello-mcp.val.run

Available Tools

ToolDescription
get_boardsList all Trello boards
get_listsGet lists (columns) on a board
get_cardsGet cards on a board or in a list
get_cardGet details of a specific card
create_cardCreate a new card
update_cardUpdate card name, description, due date, or move to another list
archive_cardArchive (close) a card
add_commentAdd a comment to a card
get_commentsGet all comments on a card
get_labelsGet labels on a board
add_labelAdd a label to a card
get_my_infoGet authenticated user info

Architecture

Claude  ──POST JSON-RPC──►  main.ts (MCP HTTP handler)
                               β”‚
                               β”œβ”€β”€ tools.ts (12 tool definitions)
                               β”‚      β”‚
                               β”‚      └── trello.ts (Trello REST API client)
                               β”‚             β”‚
                               β”‚             └── api.trello.com/2
                               β”‚
                               └── JSON-RPC 2.0 response
  • main.ts β€” HTTP endpoint implementing MCP Streamable HTTP transport (JSON-RPC 2.0)
  • trello.ts β€” Trello REST API wrapper with auth via environment variables
  • tools.ts β€” 12 MCP tool definitions with JSON Schema input validation

Example Usage

Once connected, you can ask Claude things like:

  • "Show me all my Trello boards"
  • "Create a card called 'Review PR' in the To Do list on my Sprint board"
  • "Move the 'Bug fix' card to the Done list"
  • "Add a comment to the deployment card saying 'Deployed to staging'"
  • "What labels are on my Marketing board?"