98 lines
2.7 KiB
Markdown
98 lines
2.7 KiB
Markdown
# Token MCP & API
|
|
|
|
Lesstime expose un serveur **MCP** (Model Context Protocol) qui permet à un assistant IA (Claude, Cursor, etc.) de piloter ton instance Lesstime — créer des tâches, lire des projets, démarrer un timer, etc.
|
|
|
|
## Générer ton token
|
|
|
|
1. Va sur **Profil** (avatar → Profil)
|
|
2. Section **Token MCP** → **Générer un token**
|
|
3. **Copie le token immédiatement** — il ne sera plus affiché ensuite
|
|
|
|
> 🔐 **Sécurité** : Le token donne accès à toutes les actions de ton compte. Ne le partage jamais. Tu peux le régénérer à tout moment (l'ancien sera révoqué).
|
|
|
|
## Configurer Claude Code
|
|
|
|
Dans `.mcp.json` (à la racine de ton projet) :
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"lesstime": {
|
|
"type": "http",
|
|
"url": "https://ton-instance-lesstime/_mcp",
|
|
"headers": {
|
|
"Authorization": "Bearer TON_TOKEN_ICI"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
Pour une instance locale :
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"lesstime-local": {
|
|
"command": "docker",
|
|
"args": ["exec", "-i", "php-lesstime-fpm", "php", "bin/console", "mcp:server"]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Tools disponibles (27 au total)
|
|
|
|
### Projets
|
|
|
|
- `list-projects`, `get-project`, `create-project`, `update-project`
|
|
|
|
### Tâches
|
|
|
|
- `list-tasks` (avec filtres : projet, assigné, statut, archived…)
|
|
- `get-task`, `create-task`, `update-task`, `delete-task`
|
|
|
|
### Métadonnées
|
|
|
|
- `list-statuses` (param **`projectId`** optionnel — sans : tous les statuts ; avec : statuts du workflow du projet)
|
|
- `list-priorities`, `list-efforts`, `list-tags`
|
|
|
|
### Workflows ⭐ Nouveau
|
|
|
|
- `list-workflows` — liste tous les workflows avec leurs statuts groupés
|
|
- `switch-project-workflow` (ROLE_ADMIN) — change le workflow d'un projet avec mapping
|
|
|
|
### Time tracking
|
|
|
|
- `list-time-entries`, `create-time-entry`, `update-time-entry`, `delete-time-entry`
|
|
|
|
### Récurrence
|
|
|
|
- `create-task-recurrence`, `update-task-recurrence`, `delete-task-recurrence`
|
|
|
|
### Groupes / Users / Clients
|
|
|
|
- `list-groups`, `create-group`, `update-group`
|
|
- `list-users`, `list-clients`
|
|
|
|
## Règles importantes
|
|
|
|
> ⚠️ **Statut hors workflow rejeté** : si tu appelles `create-task` ou `update-task` avec un `status` qui n'appartient pas au workflow du projet, l'appel est rejeté avec **422 Validation error**. Utilise `list-statuses(projectId)` pour découvrir les statuts valides du projet.
|
|
|
|
## Exemples de prompts
|
|
|
|
```
|
|
"Crée une tâche dans Lesstime sur le projet SIRH avec le titre
|
|
'Ajouter l'export PDF' et la priorité Haute, assignée à alice"
|
|
```
|
|
|
|
```
|
|
"Liste mes tâches en cours dans le projet CRM"
|
|
```
|
|
|
|
```
|
|
"Démarre un timer sur la tâche SIRH-12 avec le tag Backend"
|
|
```
|
|
|
|
L'agent appelle les bons tools tout seul si la description est claire.
|