@imenam/coda-mcp
v1.0.45
Published
MCP server dedicated to managing tickets in a Coda.io table
Readme
Coda Ticket Manager MCP 🎫
Serveur Model Context Protocol (MCP) spécialisé pour la gestion de tickets dans une table Coda.io. Il permet aux agents IA (comme Cursor) d'interagir avec votre système de tickets sans avoir à manipuler les identifiants techniques des colonnes.
🛠️ Stack technique : TypeScript, React, Node.js, Express
✨ Fonctionnalités ciblées
- Abstraction des données : L'agent IA utilise des noms de champs clairs (
objet,statut,priorite,details) au lieu des IDs de colonnes Coda. - Gestion des Tickets :
create_ticket: Création rapide d'un ticket avec priorités et statuts prédéfinis.list_tickets: Lecture des tickets récents avec mapping automatique des colonnes.update_ticket: Mise à jour ciblée (statut, priorité, objet, détails).search_tickets: Recherche textuelle globale sur toutes les colonnes des tickets récents.
- Enums métier : Support natif des statuts (A traiter, En cours, Traité) et priorités (NOW !, Urgent, Normal, Si possible).
🚀 Installation & Configuration
1. Configuration .env
Créez un fichier .env à la racine du projet :
CODA_API_TOKEN=votre_jeton_coda
CODA_DOC_ID=id_du_document_coda
CODA_TABLE_ID=id_de_la_table_tickets
CODA_PERMISSIONS=READ_AND_CREATE # Options: READ_ONLY, READ_AND_CREATE, ALL_CRUD🔐 Permissions
Le serveur respecte les permissions définies dans le fichier .env via CODA_PERMISSIONS :
READ_ONLY(Par défaut) : Autorise uniquementlist_ticketsetsearch_tickets.READ_AND_CREATE: Autorise la lecture, la recherche et la création (create_ticket), mais interdit les modifications.ALL_CRUD: Autorise toutes les opérations, y compris la mise à jour (update_ticket).
2. Utilisation avec Cursor
Ajoutez le serveur MCP dans les paramètres de Cursor :
Via chemin local :
"coda-ticket-manager": {
"command": "node",
"args": ["C:/chemin/vers/projet/src/mcp-server.js"]
}Via npx (après publication) :
"coda-ticket-manager": {
"command": "npx",
"args": ["-y", "coda-ticket-manager-mcp"]
}🛠️ Outils de développement
npm start: Lance le serveur MCP.npm run inspect: Lance l'Inspecteur MCP pour tester les outils visuellement dans votre navigateur.
📝 Structure de la table attendue
Le serveur est configuré pour une table avec les colonnes suivantes :
- Objet : Titre du ticket.
- Détails : Description longue.
- Statut : Liste de choix (A traiter, En cours, Traité).
- Priorité : Liste de choix (NOW !, Urgent, Normal, Si possible).
- Date demande : Date de création.
- Type : Type de ticket.
📄 Licence
ISC
