Aller au contenu principal

Référence des outils MCP

Cette page liste 52 outils de Copera MCP Cloud sur dix domaines. Chaque outil est un wrapper léger autour d'un endpoint de la Copera Public API — la colonne Capacité Public API indique l'endpoint sous-jacent appelé par chaque outil.

DomaineOutils
Workspace3
Board11
Search1
Docs8
Notifications3
Chat2
Comment3
Drive5
Export1
Artefacts15
Total52
La découverte est explicite

Le serveur est sans état, donc les outils board/table/ligne ont besoin d'ObjectIds hex explicites. Le flux de découverte est get_workspace_info → list_boards → list_tables → get_table_schema → list_rows. Appelez toujours get_table_schema avant d'écrire des lignes afin d'utiliser de vrais columnIds et des IDs d'options valides.

Workspace​

Scope : niveau workspace (résultats filtrés par les permissions du token).

OutilDescriptionCapacité Public API
get_workspace_infoMétadonnées de base du workspace auquel appartient le token (nom, slug, nombre de sièges, horodatages).GET /workspace/info
list_workspace_membersListe les membres pour résoudre un id utilisateur à partir d'un nom ou d'un e-mail ; pagination par offset, query optionnel.GET /workspace/members
list_workspace_teamsListe les équipes avec leurs ids d'utilisateurs participants ; pagination par offset, query optionnel.GET /workspace/teams

Board​

Scope : access_boards. La boucle découverte → requête → écriture sur boards, tables et lignes.

OutilDescriptionCapacité Public API
list_boardsListe les boards accessibles au token, recherche par nom optionnelle. Commencez ici pour trouver un boardId.GET /board/list-boards
get_boardMétadonnées d'un board unique par boardId.GET /board/{boardId}
list_tablesListe les tables d'un board avec définitions de colonnes, recherche par nom optionnelle.GET /board/{boardId}/tables
get_table_schemaDéfinitions de colonnes complètes d'une table, y compris les IDs d'options pour les colonnes STATUS/DROPDOWN/LABELS.GET /board/{boardId}/table/{tableId}
list_rowsListe les lignes d'une table avec query optionnel, filter structuré et sort. Non paginé.GET /board/{boardId}/table/{tableId}/rows
get_rowObtient une ligne par rowId hex ou par rowNumber visible (fournir exactement un).GET …/row/{rowId} ou GET …/row-number/{rowNumber}
create_rowCrée une ligne à partir de cellules { columnId, value } ; description héritée optionnelle.POST /board/{boardId}/table/{tableId}/row
update_rowMet à jour les valeurs de cellules d'une ligne existante par rowId (n'édite pas le texte long).PATCH …/row/{rowId}
delete_rowSupprime définitivement une ligne par rowId. Pas d'annulation.DELETE …/row/{rowId}
get_row_markdownLit le markdown de texte long : la description héritée de la ligne, ou une cellule de colonne RICH TEXT si columnId est fourni.GET …/row/{rowId}/md ou …/column/{columnId}/md
set_row_markdownÉcrit du markdown (replace/append/prepend) dans la description héritée ou une cellule de colonne RICH TEXT. Async (HTTP 202).POST …/row/{rowId}/md ou …/column/{columnId}/md

Scope : niveau workspace (résultats filtrés par les permissions du token).

OutilDescriptionCapacité Public API
searchRecherche full-text cross-entité sur documents, channels, messages, todos, fichiers drive, transcriptions vocales et chats IA. Restreindre avec types.GET /search/

Docs​

Scope : access_docs (les documents sont PAT uniquement).

OutilDescriptionCapacité Public API
search_docsRecherche full-text dans les documents avec résultats classés et surlignages.GET /docs/search
get_docs_treeParcourt la hiérarchie des documents ; omettre parentId pour la racine, borner avec depth.GET /docs/tree
get_docMétadonnées du document (titre, icône, cover, propriétaire, parent, horodatages) par docId.GET /docs/{docId}
get_doc_contentCorps markdown complet d'un document par docId (peut être volumineux).GET /docs/{docId}/md
create_docCrée un document avec un title, parentId et content d'amorçage optionnels.POST /docs/
set_doc_contentÉcrit du markdown (replace/append/prepend) dans le corps d'un document. Async (HTTP 202).POST /docs/{docId}/md
update_doc_metadataMet à jour le title, l'icon et/ou le cover d'un document (pas le corps).PATCH /docs/{docId}
delete_docSupprime un document par docId (propriétaire uniquement). Pas d'annulation.DELETE /docs/{docId}

Notifications​

Scope : access_notifications (pour l'utilisateur du token).

OutilDescriptionCapacité Public API
list_notificationsListe les notifications de l'utilisateur du token avec unreadCount ; pagination par curseur d'id (after/before).GET /notifications/
update_notificationMarque une notification read ou unread par notificationId.PATCH /notifications/{notificationId}
delete_notificationSupprime une notification par notificationId. Pas d'annulation.DELETE /notifications/{notificationId}

Chat​

Scope : access_channels.

OutilDescriptionCapacité Public API
list_channelsListe les channels et conversations DM ; filtrer par query/type/kind/participantId ; pagination par offset.GET /chat/channels
send_messageEnvoie un message à un channel (channelId) ou un message direct à un utilisateur (userId) — exactement un des deux.POST /chat/channel/{channelId}/send-message ou POST /chat/direct-message/send-message

Comment​

Scope : access_boards. Commentaires de ligne et références de pièces jointes.

OutilDescriptionCapacité Public API
list_row_commentsListe les commentaires d'une ligne (plus récents en premier) avec auteur et métadonnées de pièces jointes ; pagination par curseur ; filtre visibility.GET …/row/{rowId}/comments
add_row_commentAjoute un commentaire à une ligne ; visibility est internal (défaut) ou external.POST …/row/{rowId}/comment
get_row_attachment_urlRésout une downloadUrl authentifiée pour une pièce jointe de colonne FILE ou de commentaire (aucun octet renvoyé).…/column/{columnId}/file/{fileId}/download ou …/comment/{commentId}/file/{fileId}/download

Drive​

Scope : access_drive (le drive est PAT uniquement).

OutilDescriptionCapacité Public API
get_drive_treeParcourt le drive comme un arbre imbriqué de fichiers/dossiers ; borné par depth, avec drill-down de troncature.GET /drive/tree
search_driveRecherche full-text dans les fichiers et dossiers du drive.GET /drive/search
get_drive_itemMétadonnées d'un fichier ou dossier unique par fileId.GET /drive/files/{fileId}
get_drive_download_urlURL de téléchargement CloudFront pré-signée à durée limitée pour un fichier (aucune auth nécessaire pour le fetch).GET /drive/files/{fileId}/download
create_drive_folderCrée un dossier à la racine ou sous un parentId.POST /drive/folders

Export​

Scope : access_boards.

OutilDescriptionCapacité Public API
export_tableRend une vue de table en CSV/XLSX/JSON/MARKDOWN/HTML/PDF/ZIP/ICS ; inline ou en file d'attente ; saveToDrive pour les exports volumineux/binaires.POST /board/{boardId}/table/{tableId}/export

Artefacts​

Scope : access_drive, et les Artefacts doivent être disponibles dans votre workspace. Lisez et modifiez les apps, tableaux de bord et pages créés dans Copera — et confiez-les à un agent de code.

OutilDescriptionCapacité Public API
get_artifact_handoffL'unique appel pour construire à partir d'un artefact. Renvoie le lien de l'artefact, la version, la Spec, les notes, le design partagé (consignes, tokens, composants et assets avec des liens de téléchargement de courte durée), chaque page (surface, viewport, fichier d'entrée et fichiers qu'elle charge), les liens entre les pages et les fichiers source. versionId et maxInlineBytes optionnels.GET /artifacts/{artifactId}/handoff
list_artifactsListe les artefacts que vous pouvez ouvrir ; scope vaut mine ou shared, search optionnel, pagination par curseur (after, limit jusqu'à 50).GET /artifacts/
get_artifactLa version actuelle de l'artefact : pages, design partagé, assets, la liste des fichiers avec leurs digests SHA-256 et l'aperçu. Lisez le contenu des fichiers avec read_artifact_source.GET /artifacts/{artifactId}
list_artifact_versionsL'historique des versions de l'artefact ; pagination par curseur (after, limit jusqu'à 50).GET /artifacts/{artifactId}/versions
get_artifact_versionPages, design partagé et liste des fichiers d'une version (versionId). Une version enregistrée ne change jamais.GET …/versions/{versionId}
read_artifact_sourceLit un fichier source (path) d'une version par blocs limités. Continuez avec le nextCursor renvoyé jusqu'à ce que eof vaille true.GET …/versions/{versionId}/source
get_artifact_page_previewAperçu d'une page (pageId) d'une version.GET …/versions/{versionId}/pages/{pageId}/preview
get_artifact_design_snapshotUne copie réutilisable du design partagé d'une version (consignes, tokens, composants, assets) avec son digest — passez-la à create_artifact comme reuseDesign.GET …/versions/{versionId}/design
list_artifact_design_startersLes design starters sélectionnés (comme shadcn-core-v1) et leurs dépendances figées.GET /artifacts/starters
list_artifact_assetsLogos, polices, images et références ajoutés au design de l'artefact.GET /artifacts/{artifactId}/design-assets
import_artifact_assetAjoute un fichier que vous avez téléversé (fileId) au design de l'artefact comme logo, font, image ou reference, avec un altText optionnel. Placez-le sur une page avec patch_artifact_source.POST /artifacts/{artifactId}/design-assets
patch_artifact_sourceModifie des fichiers source à partir de baseVersionId avec les opérations replace_text, put_file et delete_file (jusqu'à 32 fichiers), chacune vérifiée par rapport au SHA-256 actuel du fichier. Mis en file — interrogez get_artifact_request.POST /artifacts/{artifactId}/source-patches
list_artifact_requestsLes demandes de modification récentes sur l'artefact, avec leur statut et la version produite par chacune.GET /artifacts/{artifactId}/requests
get_artifact_requestStatut d'une demande de modification (requestId) et version exacte qu'elle a produite.GET /artifacts/{artifactId}/requests/{requestId}
create_artifactCrée un artefact privé à partir de votre propre projet source (static_web ou vite_react), avec un title, un request décrivant son usage et une idempotencyKey. Partez éventuellement d'un design starter (designStarterId) ou réutilisez un design (reuseDesign) — l'un ou l'autre.POST /artifacts/
Construire à partir d'un artefact en un appel

get_artifact_handoff suffit à un agent de code. Parcourez le résultat dans l'ordre : lisez la Spec, puis les notes, puis mettez en place le design, puis construisez chaque page à partir de ses fichiers, et enfin reliez les liens entre les pages — en suivant les nextSteps renvoyés. Omettez versionId pour obtenir la dernière version construite avec succès. Le contenu des fichiers est inclus jusqu'à maxInlineBytes (32 KiB par défaut, jusqu'à 1 MiB si votre client accepte de gros résultats) ; les fichiers marqués omitted: "over_budget" se lisent avec read_artifact_source et l'id de version renvoyé. Voir Construire avec votre agent de code pour la configuration.

Notes de comportement​

Les écritures async sont éventuellement cohérentes

set_row_markdown et set_doc_content sont mis en file (HTTP 202) — relisez avec get_row_markdown / get_doc_content pour confirmer que le changement a été appliqué. Les envois de channel sont synchrones ; les messages directs sont mis en file et peuvent ne pas apparaître immédiatement.

Les modifications d'artefacts sont mises en file

patch_artifact_source et create_artifact renvoient un reçu, pas un build terminé. Après un patch, interrogez get_artifact_request jusqu'à ce que la demande soit terminée ou en échec, puis lisez la version produite ; après un create, lisez l'artefact renvoyé et son aperçu. Ne réutilisez une idempotencyKey que pour relancer exactement la même demande. Si un fichier a changé depuis votre lecture, la modification échoue avec un conflit — relisez-le et réessayez.

Les outils destructifs sont irréversibles

delete_row, delete_doc et delete_notification suppriment définitivement des données. Confirmez l'id cible avant de les appeler.

Aucun outil ne renvoie jamais d'octets de fichier bruts. get_drive_download_url renvoie une URL pré-signée que vous pouvez récupérer sans auth ; get_row_attachment_url renvoie une downloadUrl authentifiée que vous récupérez vous-même avec votre bearer token.

Pour le schéma requête/réponse de chaque endpoint sous-jacent, voir la Référence de l'API.