Trello
Gerencie e interaja com quadros, listas e cartões do Trello.
Documentação
MCP Server Trello
Um servidor Model Context Protocol (MCP) que fornece ferramentas para interagir com quadros do Trello. Este servidor permite integração perfeita com a API do Trello, lidando automaticamente com limitação de taxa, segurança de tipos e tratamento de erros.
Recursos
- Integração Completa com Quadros do Trello: Interaja com cartões, listas e atividades do quadro
- Limitação de Taxa Integrada: Respeita os limites da API do Trello (300 requisições/10s por chave de API, 100 requisições/10s por token)
- Implementação com Segurança de Tipos: Escrito em TypeScript com definições de tipos abrangentes
- Validação de Entrada: Validação robusta para todas as entradas da API
- Tratamento de Erros: Tratamento de erros elegante com mensagens informativas
Instalação
npm install @modelcontextprotocol/mcp-server-trello
Configuração
Adicione o servidor ao seu arquivo de configurações do MCP com a seguinte configuração:
{
"mcpServers": {
"trello": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-trello"],
"env": {
"TRELLO_API_KEY": "your-api-key",
"TRELLO_TOKEN": "your-token",
"TRELLO_BOARD_ID": "your-board-id"
}
}
}
}
Variáveis de Ambiente Necessárias
TRELLO_API_KEY: Sua chave de API do Trello (obtenha em https://trello.com/app-key)TRELLO_TOKEN: Seu token do Trello (gere usando sua chave de API)TRELLO_BOARD_ID: ID do quadro do Trello com o qual interagir (encontrado na URL do quadro)
Ferramentas Disponíveis
get_cards_by_list_id
Busca todos os cartões de uma lista específica.
{
name: 'get_cards_by_list_id',
arguments: {
listId: string // ID of the Trello list
}
}
get_lists
Recupera todas as listas do quadro configurado.
{
name: 'get_lists',
arguments: {}
}
get_recent_activity
Busca a atividade recente no quadro.
{
name: 'get_recent_activity',
arguments: {
limit?: number // Optional: Number of activities to fetch (default: 10)
}
}
add_card_to_list
Adiciona um novo cartão a uma lista especificada.
{
name: 'add_card_to_list',
arguments: {
listId: string, // ID of the list to add the card to
name: string, // Name of the card
description?: string, // Optional: Description of the card
dueDate?: string, // Optional: Due date (ISO 8601 format)
labels?: string[] // Optional: Array of label IDs
}
}
update_card_details
Atualiza os detalhes de um cartão existente.
{
name: 'update_card_details',
arguments: {
cardId: string, // ID of the card to update
name?: string, // Optional: New name for the card
description?: string, // Optional: New description
dueDate?: string, // Optional: New due date (ISO 8601 format)
labels?: string[] // Optional: New array of label IDs
}
}
archive_card
Envia um cartão para o arquivo.
{
name: 'archive_card',
arguments: {
cardId: string // ID of the card to archive
}
}
add_list_to_board
Adiciona uma nova lista ao quadro.
{
name: 'add_list_to_board',
arguments: {
name: string // Name of the new list
}
}
archive_list
Envia uma lista para o arquivo.
{
name: 'archive_list',
arguments: {
listId: string // ID of the list to archive
}
}
get_my_cards
Busca todos os cartões atribuídos ao usuário atual.
{
name: 'get_my_cards',
arguments: {}
}
Limitação de Taxa
O servidor implementa um algoritmo de token bucket para limitação de taxa, a fim de cumprir os limites da API do Trello:
- 300 requisições por 10 segundos por chave de API
- 100 requisições por 10 segundos por token
A limitação de taxa é tratada automaticamente, e as requisições serão enfileiradas se os limites forem atingidos.
Tratamento de Erros
O servidor fornece mensagens de erro detalhadas para vários cenários:
- Parâmetros de entrada inválidos
- Limite de taxa excedido
- Erros de autenticação da API
- Problemas de rede
- IDs de quadro/lista/cartão inválidos
Desenvolvimento
Pré-requisitos
- Node.js 16 ou superior
- npm ou yarn
Configuração do Ambiente
- Clone o repositório
git clone https://github.com/modelcontextprotocol/server-trello.git
cd server-trello
- Instale as dependências
npm install
- Compile o projeto
npm run build
Executando Testes
npm test
Contribuição
Contribuições são bem-vindas! Leia nosso Guia de Contribuição para detalhes sobre nosso código de conduta e o processo para enviar pull requests.
Licença
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.
Agradecimentos
- Construído com o SDK do Model Context Protocol
- Usa a API REST do Trello