Pular para o conteúdo principal

Referência de Ferramentas MCP

O servidor MCP da Copera expõe 37 ferramentas em nove domínios. Cada ferramenta é um wrapper fino sobre um endpoint da Copera Public API — a coluna capacidade da Public API mostra o endpoint subjacente que cada ferramenta chama.

DomínioFerramentas
Workspace3
Board11
Busca1
Docs8
Notificações3
Chat2
Comentário3
Drive5
Exportação1
Total37
A descoberta é explícita

O servidor é sem estado, então as ferramentas de board/tabela/linha precisam de ObjectIds hex explícitos. O fluxo de descoberta é get_workspace_infolist_boardslist_tablesget_table_schemalist_rows. Sempre chame get_table_schema antes de escrever linhas para usar columnIds reais e IDs de opções válidos.

Workspace

Escopo: nível de workspace (resultados filtrados pelas permissões do token).

FerramentaDescriçãoCapacidade da Public API
get_workspace_infoMetadados básicos sobre o workspace ao qual o token pertence (nome, slug, contagem de assentos, timestamps).GET /workspace/info
list_workspace_membersLista membros para resolver um id de usuário a partir de um nome ou e-mail; paginado por offset, query opcional.GET /workspace/members
list_workspace_teamsLista times com os ids de usuário de seus participantes; paginado por offset, query opcional.GET /workspace/teams

Board

Escopo: access_boards. O loop de descoberta → consulta → escrita sobre boards, tabelas e linhas.

FerramentaDescriçãoCapacidade da Public API
list_boardsLista boards que o token pode acessar, busca opcional por nome. Comece aqui para encontrar um boardId.GET /board/list-boards
get_boardMetadados de um único board por boardId.GET /board/{boardId}
list_tablesLista as tabelas de um board com definições de colunas, busca opcional por nome.GET /board/{boardId}/tables
get_table_schemaDefinições completas das colunas de uma tabela, incluindo IDs de opções para colunas STATUS/DROPDOWN/LABELS.GET /board/{boardId}/table/{tableId}
list_rowsLista linhas em uma tabela com query opcional, filter estruturado e sort. Não paginado.GET /board/{boardId}/table/{tableId}/rows
get_rowObtém uma linha pelo rowId hex ou pelo rowNumber visível (forneça exatamente um).GET …/row/{rowId} ou GET …/row-number/{rowNumber}
create_rowCria uma linha a partir de células { columnId, value }; description legada opcional.POST /board/{boardId}/table/{tableId}/row
update_rowAtualiza valores de células de uma linha existente por rowId (não edita texto longo).PATCH …/row/{rowId}
delete_rowExclui permanentemente uma linha por rowId. Sem desfazer.DELETE …/row/{rowId}
get_row_markdownLê markdown de texto longo: a descrição legada da linha, ou uma célula de coluna RICH TEXT se columnId for fornecido.GET …/row/{rowId}/md ou …/column/{columnId}/md
set_row_markdownEscreve markdown (replace/append/prepend) na descrição legada ou em uma célula de coluna RICH TEXT. Assíncrono (HTTP 202).POST …/row/{rowId}/md ou …/column/{columnId}/md

Busca

Escopo: nível de workspace (resultados filtrados pelas permissões do token).

FerramentaDescriçãoCapacidade da Public API
searchBusca full-text entre entidades em documentos, channels, mensagens, todos, arquivos do drive, transcrições de voz e chats de IA. Restrinja com types.GET /search/

Docs

Escopo: access_docs (documentos são exclusivos de PAT).

FerramentaDescriçãoCapacidade da Public API
search_docsBusca full-text em documentos com hits ranqueados e destaques.GET /docs/search
get_docs_treeNavega na hierarquia de documentos; omita parentId para a raiz, limite com depth.GET /docs/tree
get_docMetadados do documento (título, ícone, capa, dono, pai, timestamps) por docId.GET /docs/{docId}
get_doc_contentCorpo markdown completo de um documento por docId (pode ser grande).GET /docs/{docId}/md
create_docCria um documento com um title, parentId opcional e content inicial.POST /docs/
set_doc_contentEscreve markdown (replace/append/prepend) no corpo de um documento. Assíncrono (HTTP 202).POST /docs/{docId}/md
update_doc_metadataAtualiza o title, icon e/ou cover de um documento (não o corpo).PATCH /docs/{docId}
delete_docExclui um documento por docId (apenas o dono). Sem desfazer.DELETE /docs/{docId}

Notificações

Escopo: access_notifications (para o próprio usuário do token).

FerramentaDescriçãoCapacidade da Public API
list_notificationsLista as notificações do usuário do token com unreadCount; paginado por cursor de id (after/before).GET /notifications/
update_notificationMarca uma notificação como read ou unread por notificationId.PATCH /notifications/{notificationId}
delete_notificationExclui uma notificação por notificationId. Sem desfazer.DELETE /notifications/{notificationId}

Chat

Escopo: access_channels.

FerramentaDescriçãoCapacidade da Public API
list_channelsLista channels e conversas de DM; filtra por query/type/kind/participantId; paginado por offset.GET /chat/channels
send_messageEnvia uma mensagem para um channel (channelId) ou manda mensagem direta a um usuário (userId) — exatamente um.POST /chat/channel/{channelId}/send-message ou POST /chat/direct-message/send-message

Comentário

Escopo: access_boards. Comentários de linha e referências de anexos.

FerramentaDescriçãoCapacidade da Public API
list_row_commentsLista os comentários de uma linha (mais recentes primeiro) com metadados de autor e anexos; paginado por cursor; filtro de visibility.GET …/row/{rowId}/comments
add_row_commentAdiciona um comentário a uma linha; visibility é internal (padrão) ou external.POST …/row/{rowId}/comment
get_row_attachment_urlResolve uma downloadUrl autenticada para um anexo de coluna FILE ou de comentário (sem retornar bytes).…/column/{columnId}/file/{fileId}/download ou …/comment/{commentId}/file/{fileId}/download

Drive

Escopo: access_drive (o drive é exclusivo de PAT).

FerramentaDescriçãoCapacidade da Public API
get_drive_treeNavega no drive como uma árvore aninhada de arquivos/pastas; limitada por depth, com aprofundamento em caso de truncamento.GET /drive/tree
search_driveBusca full-text em arquivos e pastas do drive.GET /drive/search
get_drive_itemMetadados de um único arquivo ou pasta por fileId.GET /drive/files/{fileId}
get_drive_download_urlURL de download CloudFront pré-assinada e com tempo limitado para um arquivo (sem necessidade de autenticação para baixar).GET /drive/files/{fileId}/download
create_drive_folderCria uma pasta na raiz ou sob um parentId.POST /drive/folders

Exportação

Escopo: access_boards.

FerramentaDescriçãoCapacidade da Public API
export_tableRenderiza uma view de tabela para CSV/XLSX/JSON/MARKDOWN/HTML/PDF/ZIP/ICS; inline ou enfileirado; saveToDrive para exportações grandes/binárias.POST /board/{boardId}/table/{tableId}/export

Notas de comportamento

Escritas assíncronas são eventualmente consistentes

set_row_markdown e set_doc_content são enfileiradas (HTTP 202) — releia com get_row_markdown / get_doc_content para confirmar que a mudança foi aplicada. Envios para channels são síncronos; mensagens diretas são enfileiradas e podem não aparecer imediatamente.

Ferramentas destrutivas não podem ser desfeitas

delete_row, delete_doc e delete_notification removem dados permanentemente. Confirme o id de destino antes de chamá-las.

Nenhuma ferramenta jamais retorna bytes brutos de arquivo. get_drive_download_url retorna uma URL pré-assinada que você pode baixar sem autenticação; get_row_attachment_url retorna uma downloadUrl autenticada que você mesmo baixa com seu token bearer.

Para o schema de requisição/resposta de cada endpoint subjacente, veja a Referência da API.