Drag

Triagem, resposta e relatórios para sua caixa de entrada compartilhada do Gmail.

Documentação

MCP Documentation

MCP Server

O servidor MCP do DragApp expõe 47 ferramentas em 12 categorias, dando a qualquer cliente de IA compatível com MCP acesso total aos seus boards, e-mails, cards, contatos, base de conhecimento, análises e automações.

Conecte-se de duas formas: cole a URL do endpoint hospedado nas configurações de conector do seu cliente de IA (o caminho mais rápido, sem instalação), ou execute o servidor open-source localmente a partir de um arquivo de configuração. Mesmas ferramentas, mesmas permissões, de qualquer forma.

Construído sobre o padrão Model Context Protocol. Open source, licenciado sob MIT.


Conectar (endpoint hospedado)

A forma mais rápida de conectar é o endpoint hospedado. Três passos, cerca de dois minutos. Sem arquivo de configuração, sem instalação local, sem reiniciar.

  1. Nas configurações de conector do seu cliente de IA (no Claude: Settings › Connectors › Add custom connector), cole esta URL e salve:
    https://app.dragapp.com/mcp
    
  2. Clique em Connect. Uma página de conexão do Drag abre no seu navegador e solicita sua chave de API do DragApp.
  3. Insira sua chave de API. Copie-a do DragApp em Settings › Integrations, cole-a na página de conexão e envie. O Drag verifica a chave e a entrega ao seu cliente como token de acesso. A conexão está ativa.

Para verificar, peça ao seu cliente para "listar os boards no meu DragApp". Ele solicita sua permissão na primeira vez que usa cada ferramenta, então você controla exatamente o que ele pode fazer.

A chave é inserida uma única vez, apenas na página de conexão. Ela nunca aparece em um endereço web, e o serviço MCP não armazena nada em seus próprios servidores.

Por baixo dos panos, isso é um fluxo padrão de código de autorização OAuth 2.1 com PKCE e registro dinâmico de cliente, servido sobre o transporte Streamable HTTP do MCP, então qualquer cliente que suporte conectores MCP remotos pode se conectar.


Instalação (rota local)

Prefere executar o servidor você mesmo, ou usar um cliente baseado em arquivo de configuração como Cursor, Windsurf ou Claude Code? O pacote npm continua totalmente suportado. Execute diretamente com npx; sem necessidade de instalação:

npx -y @dragapp/mcp-server

Ou instale globalmente:

npm install -g @dragapp/mcp-server

Autenticação

Ambas as rotas autenticam com sua chave de API do DragApp, e a conexão herda suas permissões existentes do Drag de qualquer forma. No endpoint hospedado, você insere a chave uma vez na página segura de conexão e ela se torna o token de acesso do seu cliente; nada é armazenado pelo serviço MCP. Na rota local, o servidor lê a chave da variável de ambiente DRAG_API_KEY.

Obtenha sua chave de API em Settings, depois Integrations, dentro do Drag. Você pode revogá-la lá a qualquer momento.

Sua chave de API concede acesso total ao seu workspace do DragApp. Mantenha-a em segredo e nunca a envie para o controle de versão.


Configuração do cliente

Adicione o seguinte JSON ao arquivo de configuração MCP do seu cliente de IA:

{
  "mcpServers": {
    "dragapp": {
      "command": "npx",
      "args": ["-y", "@dragapp/mcp-server"],
      "env": {
        "DRAG_API_KEY": "your-api-key"
      }
    }
  }
}

Locais dos arquivos de configuração

ClienteCaminho do config
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json
Cursor.cursor/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json
Claude Code~/.claude.json or .mcp.json

Referência de ferramentas

47 ferramentas em 12 categorias. Cada ferramenta está automaticamente disponível para qualquer cliente MCP conectado.

Email

8

FerramentaDescrição
list_threadsListar threads de e-mail em uma coluna específica de um board
get_threadObter uma única mensagem de e-mail com corpo HTML completo
reply_to_threadResponder a um thread de e-mail existente
send_new_emailEnviar um novo e-mail a partir de um board
search_threadsBuscar threads em todos os boards
filter_threadsFiltrar threads por etiqueta, responsável ou status
move_threadMover um thread para uma coluna diferente
move_threads_bulkMover vários threads de uma vez

Boards

5

FerramentaDescrição
list_boardsListar todos os boards aos quais o usuário autenticado tem acesso
get_boardObter detalhes de um board específico
list_columnsListar todas as colunas de um board
list_board_membersListar todos os membros de um board
list_teamsListar todas as equipes do workspace

Cards

6

FerramentaDescrição
list_cards_in_columnListar todos os cards em uma coluna específica
get_cardObter detalhes de um card específico
create_cardCriar um novo card em uma coluna
update_cardAtualizar propriedades do card (título, descrição, responsável, data de vencimento)
move_cardMover um card para uma coluna ou posição diferente
archive_cardArquivar um card

Tags

2

FerramentaDescrição
list_tagsListar todas as tags do workspace
add_tag_to_cardAdicionar uma tag a um card

Tarefas

1

FerramentaDescrição
create_taskCriar uma tarefa (item de checklist) em um card

Contatos

3

FerramentaDescrição
search_contactsBuscar contatos por nome ou endereço de e-mail
get_contact_conversationsObter todas as conversas com um contato específico
create_contactCriar um novo contato no workspace

Base de Conhecimento

5

FerramentaDescrição
list_articlesListar todos os artigos da base de conhecimento
get_articleObter o conteúdo completo de um artigo da base de conhecimento
create_articleCriar um novo artigo na base de conhecimento
update_articleAtualizar um artigo existente da base de conhecimento
search_knowledgeBuscar na base de conhecimento por consulta

Análises

4

FerramentaDescrição
get_response_timesObter métricas de tempo de resposta para um board
get_avg_response_timeObter o tempo médio de resposta entre boards
get_daily_activityObter métricas diárias de atividade (threads criados, respondidos, resolvidos)
get_closed_activityObter métricas sobre threads fechados/resolvidos

Automações

3

FerramentaDescrição
list_automationsListar todas as automações configuradas em um board
toggle_automationAtivar ou desativar uma automação específica
toggle_ai_draftsAtivar ou desativar a geração de rascunho por IA em um board

WhatsApp

4

FerramentaDescrição
get_whatsapp_conversationObter o histórico completo de mensagens de uma conversa do WhatsApp (card) em um board do WhatsApp. Retorna as mensagens do chat em ordem. Use o cardId retornado por list_threads / search_threads em um board do WhatsApp (o campo cardId\).
list_whatsapp_templatesListar os modelos de mensagem do WhatsApp pré-aprovados disponíveis em um board do WhatsApp. Retorna o nome, idioma, status, categoria, texto do corpo e quantas variáveis {{n}} cada modelo espera. Apenas modelos APPROVED podem ser enviados.
send_whatsapp_messageEnviar uma mensagem de texto livre do WhatsApp para uma conversa existente. Observação: o WhatsApp só permite mensagens de texto livre dentro da janela de atendimento ao cliente de 24 horas; fora dela, use send_whatsapp_template.
send_whatsapp_templateEnviar uma mensagem de modelo do WhatsApp pré-aprovado para uma conversa. Use isso para alcançar um contato fora da janela de 24 horas. Chame list_whatsapp_templates primeiro para obter o nome e idioma exatos do modelo e ver quantas variáveis {{n}} ele precisa.

Exemplos

Prompts em linguagem natural e as ferramentas que o cliente de IA chamará nos bastidores.

"Mostre e-mails não lidos no board Support"

list_boards → list_columns → list_threads

O cliente de IA encontra o board Support, identifica a coluna correta e lista os threads com seus assuntos, remetentes e timestamps.

"Responda ao último e-mail da Sarah"

search_threads → get_thread → reply_to_thread

Busca em todos os boards por threads da Sarah, recupera a mensagem completa e depois compõe e envia uma resposta.

"Qual é o nosso tempo médio de resposta esta semana?"

get_avg_response_time

Chama a ferramenta de análise diretamente para retornar o tempo médio de resposta com comparações de período.

"Crie um card no board Sprint com este relatório de bug"

list_boards → list_columns → create_card

Encontra o board Sprint, identifica a coluna certa (ex.: Backlog) e cria um card com os detalhes do bug.

"Atribua todos os threads relacionados a cobrança para a Sarah"

filter_threads → move_threads_bulk

Filtra threads pela etiqueta BILLING e depois os move em massa para a coluna atribuída à Sarah.

"Busque na nossa base de conhecimento a política de reembolso"

search_knowledge

Busca na base de conhecimento e retorna artigos correspondentes com trechos.


Desenvolvimento

Clone o repositório e execute localmente:

git clone https://github.com/nick-timms/drag-mcp-server.git
cd drag-mcp-server
npm install
npm run build
DRAG_API_KEY=your-key node dist/index.js

Para desenvolvimento com recompilação automática:

npm run dev

Links

Repositório GitHub: código-fonte, issues, contribuições

pacote npm: @dragapp/mcp-server

Model Context Protocol: especificação MCP

Documentação da API REST: referência da API REST do DragApp

Licença: MIT

Precisa de ajuda?

Central de ajuda: guias e tutoriais

support@dragapp.com: suporte por e-mail

Issues no GitHub: relatórios de bugs e solicitações de recursos