Des outils par tâche, pas par point d'accès
Classer un mois de transactions, rapprocher un compte avec la banque, projeter le solde, faire le point sur un mois : chaque tâche est un outil, pas dix appels d’API à enchaîner pour l’agent.
Serveur MCP open source non officiel pour YNAB
avenir-mcp permet à Claude et aux autres agents IA de lire, classer, rapprocher et projeter votre plan. Lecture seule par défaut ; chaque modification est prévisualisée, confirmée par vous, et annulable.
claude mcp add avenir-mcp \ --env YNAB_API_KEY=votre-jeton \ -- uvx avenir-mcpFonctionne avecClaude CodeClaude DesktopCursorVS CodeGemini CLICodex CLILM Studio
Des outils par tâche, pas par point d'accès
Classer un mois de transactions, rapprocher un compte avec la banque, projeter le solde, faire le point sur un mois : chaque tâche est un outil, pas dix appels d’API à enchaîner pour l’agent.
Lecture seule par défaut
Les treize outils d’écriture ne sont ni listés ni appelables tant que vous n’avez pas
défini AVENIR_MCP_WRITE=1. Un agent ne peut pas modifier ce qu’il ne voit pas.
Des réponses lisibles par un agent
Des unités monétaires, jamais de milliunités. Des schémas de sortie typés avec une description pour chaque champ, la pagination, et des erreurs qui disent quoi corriger.
Économe en requêtes YNAB
Une copie locale de vos transactions, mise à jour par synchronisation incrémentale : la plupart des outils coûtent une ou deux des 200 requêtes horaires de YNAB.
avenir-mcp calcule le changement exact et vous le montre. Rien n’est encore écrit.
Vous dites oui dans votre client, ou avec un code à usage unique lié à cet aperçu.
Chaque changement appliqué est journalisé ; l’annulation le défait sans écraser le travail fait depuis.
Catégories, montants, rapprochements et transactions créées s’annulent tous. Comment ça marche : Confirmation et Journal et annulation.
Les outils renvoient des données structurées sur lesquelles l’agent peut compter — et qu’il vous traduit en langage courant.
Vous : Comment s’est passé août ?
L’agent appelle get_budget_vs_actual
avec {"month": "2026-08-01"} et reçoit, pour chaque catégorie, le montant budgété, le montant dépensé et ce qui reste. Voici cette réponse sur le plan de démonstration, sous forme de graphique :
Réponse de get_budget_vs_actual sur le plan de démonstration
| Catégorie | Budgété | Dépensé | Restant |
|---|---|---|---|
| Charges fixes · Loyer | 950,00 | 950,00 | 0,00 |
| Charges fixes · Électricité | 64,20 | 64,20 | 0,00 |
| Charges fixes · Box internet | 29,99 | 29,99 | 0,00 |
| Charges fixes · Téléphone | 19,99 | 19,99 | 0,00 |
| Quotidien · Courses | 400,00 | 192,51 | 207,49 |
| Quotidien · Transports | 90,00 | 45,00 | 45,00 |
| Quotidien · Restaurants | 120,00 | 89,10 | 30,90 |
| Loisirs · Tennis | 80,00 | 22,00 | 58,00 |
| Loisirs · Abonnements | 13,49 | 13,49 | 0,00 |
| Projets · Vacances | 200,00 | 0,00 | 200,00 |
Claude : Août est resté dans le budget partout : aucune catégorie n’est en dépassement. Les factures sont payées, il reste 207,49 pour les courses et 58,00 pour le tennis, et les 200,00 mis de côté pour les vacances sont intacts.
[ { "id": "cat-rent", "name": "Loyer", "group": "Charges fixes", "budgeted": 950.0, "actual": 950.0, "balance": 0.0, "utilization_pct": 100.0 }, { "id": "cat-power", "name": "Électricité", "group": "Charges fixes", "budgeted": 64.2, "actual": 64.2, "balance": 0.0, "utilization_pct": 100.0 }, { "id": "cat-internet", "name": "Box internet", "group": "Charges fixes", "budgeted": 29.99, "actual": 29.99, "balance": 0.0, "utilization_pct": 100.0 }, { "id": "cat-phone", "name": "Téléphone", "group": "Charges fixes", "budgeted": 19.99, "actual": 19.99, "balance": 0.0, "utilization_pct": 100.0 }, { "id": "cat-groceries", "name": "Courses", "group": "Quotidien", "budgeted": 400.0, "actual": 192.51, "balance": 207.49, "utilization_pct": 48.1 }, { "id": "cat-restaurants", "name": "Restaurants", "group": "Quotidien", "budgeted": 120.0, "actual": 89.1, "balance": 30.9, "utilization_pct": 74.2 }, { "id": "cat-transport", "name": "Transports", "group": "Quotidien", "budgeted": 90.0, "actual": 45.0, "balance": 45.0, "utilization_pct": 50.0 }, { "id": "cat-tennis", "name": "Tennis", "group": "Loisirs", "budgeted": 80.0, "actual": 22.0, "balance": 58.0, "utilization_pct": 27.5 }, { "id": "cat-subscriptions", "name": "Abonnements", "group": "Loisirs", "budgeted": 13.49, "actual": 13.49, "balance": 0.0, "utilization_pct": 100.0 }, { "id": "cat-holidays", "name": "Vacances", "group": "Projets", "budgeted": 200.0, "actual": 0.0, "balance": 200.0, "utilization_pct": 0.0 }]Chaque exemple de cette documentation est une vraie réponse d’avenir-mcp sur un plan de démonstration inventé.
Projet non officiel. « We are not affiliated, associated, or in any way officially connected with YNAB or any of its subsidiaries or affiliates. The official YNAB website can be found at https://www.ynab.com. The names YNAB and You Need A Budget, as well as related names, tradenames, marks, trademarks, emblems, and images are registered trademarks of YNAB. » Nous ne sommes ni affiliés, ni associés, ni liés officiellement de quelque manière que ce soit à YNAB ou à ses filiales et sociétés affiliées. Le site officiel de YNAB se trouve à l’adresse https://www.ynab.com. Les noms YNAB et You Need A Budget, ainsi que les noms, dénominations commerciales, marques, emblèmes et images qui s’y rattachent, sont des marques déposées de YNAB. avenir-mcp est fourni tel quel, sans garantie, et n’est pas un conseil financier. Mentions légales · Confidentialité