Faites votre comptabilité en parlant à une IA
Le connecteur MCP de Qontab expose 126 outils sur votre comptabilité en partie double. Connectez Claude, Cursor ou tout client MCP et enregistrez des transactions, émettez des factures, rapprochez votre banque, faites la paie et sortez des états en temps réel — en langage naturel, avec l’intégrité comptable préservée côté serveur.
En un paragraphe
Qontab est une plateforme de comptabilité en partie double native pour l’IA. Son connecteur MCP est un serveur Model Context Protocol auquel tout assistant IA peut se connecter via une clé API Qontab ou OAuth. Il offre 126 outils couvrant comptes, transactions, facturation, notes de frais, voyages, contacts, banque, documents, écritures récurrentes, projets, immobilisations, budgets et paie. Les outils de lecture marchent sur toute formule ; l’écriture exige une formule payante ; chaque appel est restreint par scope, contrôlé par rôle et décompté d’un quota mensuel.
Votre connexion
Connectez-vous pour gérer vos clés API
Créez, affichez (une seule fois) et révoquez vos clés MCP directement ici, une fois connecté.
Comment fonctionne le connecteur
Point clé : l’IA ne touche jamais directement votre base de données. Elle appelle des outils nommés et typés via JSON-RPC ; toutes les règles comptables — écritures équilibrées, numérotation séquentielle, immutabilité des écritures validées, isolation multi-tenant — sont imposées par Qontab, pas par le modèle. L’assistant est une interface en langage naturel ; Qontab reste le système de référence.
Clients IA compatibles
Qontab expose un serveur MCP distant en OAuth 2.1 (enregistrement dynamique de client + PKCE) et en clés Bearer : tout agent IA qui gère les connecteurs MCP personnalisés peut piloter vos comptes — aucun plugin à développer.
| Client / agent | Auth | Comment connecter |
|---|---|---|
| ChatGPT (OpenAI) | OAuth 2.1 | Paramètres → Connecteurs → Créer (ou mode Développeur) → ajoutez un connecteur personnalisé avec l’URL du serveur MCP. ChatGPT exécute le flux OAuth 2.1 ; disponible sur Plus, Pro, Business, Enterprise et Edu. |
| Claude.ai (Anthropic) | OAuth 2.1 | Paramètres → Connecteurs → Ajouter un connecteur personnalisé → collez l’URL. Connexion OAuth en un clic, avec sélecteur de société pour les comptables multi-entités. |
| Claude Desktop | OAuth 2.1 + Bearer | Ajoutez un connecteur personnalisé par URL (OAuth), ou utilisez le pont mcp-remote dans claude_desktop_config.json avec une clé Bearer. |
| Claude Code (CLI) | OAuth 2.1 + Bearer | claude mcp add --transport http avec un en-tête Bearer, ou laissez-le compléter le flux OAuth à la première connexion. |
| Cursor | OAuth 2.1 + Bearer | Paramètres → MCP → Ajouter un serveur (URL). Cursor gère le handshake OAuth, ou passez un en-tête Authorization. |
| VS Code — GitHub Copilot (agent mode) | OAuth 2.1 + Bearer | Ajoutez le serveur dans mcp.json (ou la commande MCP : Add Server). Le mode agent de Copilot gère le MCP distant avec OAuth. |
| Windsurf (Codeium) | OAuth 2.1 + Bearer | Cascade → serveurs MCP → ajoutez l’URL ; MCP distant en OAuth ou Bearer. |
| Goose · Cline · Zed · other MCP clients | OAuth 2.1 + Bearer | Tout client implémentant le transport MCP distant/HTTP streamable peut se connecter en OAuth 2.1 ou avec une clé Bearer. |
Démarrage rapide
Claude Code (CLI)
Claude Code parle nativement le MCP en HTTP streamable — une ligne enregistre le serveur.
claude mcp add --transport http qontab https://api.qontab.com/mcp \
--header "Authorization: Bearer YOUR_KEY"Claude Desktop
Ajoutez ceci à claude_desktop_config.json. mcp-remote injecte l’en-tête d’authentification et fonctionne sur toutes les versions de Claude Desktop.
{
"mcpServers": {
"qontab": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.qontab.com/mcp",
"--header",
"Authorization:Bearer YOUR_KEY"
]
}
}
}Claude.ai (OAuth — aucune clé à coller)
Dans Claude.ai → Paramètres → Connecteurs → Ajouter un connecteur personnalisé, collez l’URL du serveur. Claude découvre les points OAuth, vous vous connectez à Qontab, choisissez la société, et vous voilà connecté. Les jetons sont éphémères et renouvelés automatiquement.
https://api.qontab.com/mcpGénérez votre clé dans Paramètres → Clés API. read pour laisser l’IA consulter sans modifier, ou read_write pour laisser l’IA enregistrer.
Authentification & scopes
Bearer API key — Authorization: Bearer qk_live_… dans n’importe quel client MCP. Fonctionne partout.
OAuth 2.1 — pour les connecteurs personnalisés Claude.ai / Claude Desktop. PKCE, enregistrement dynamique de client, JWT éphémères, et un écran de consentement laissant les comptables multi-sociétés choisir une entité.
read tous les outils list_* / get_*.
write tout outil de modification. Un appel d’écriture sans clé read_write est refusé par JSON-RPC -32604.
delete outils irréversibles / destructeurs — votre client MCP confirme avant de les appeler.
Le catalogue des 126 outils
Groupés par domaine. Les outils de lecture marchent sur toute formule ; l’écriture exige une formule payante ; les domaines marqués Enterpriseou Pro exigent ce niveau.
Consulter et maintenir le plan de comptes du grand livre et la balance générale.
| read | list_accounts | Lister le plan comptable, filtrable par type et statut actif. |
| read | get_account | Récupérer un compte avec son solde actuel. |
| read | get_trial_balance | Balance générale à une date donnée. |
| write | create_account | Créer un compte du grand livre. |
| write | update_account | Renommer ou changer le type d’un compte. |
| delete | delete_account | Supprimer un compte (suppression douce). |
| delete | hard_delete_account | Supprimer définitivement un compte inutilisé. |
Le cœur en partie double : enregistrer les écritures et produire les trois états principaux.
| read | list_transactions | Parcourir les écritures par type, statut, date ou texte. |
| read | get_transaction | Une écriture avec toutes ses lignes. |
| read | get_profit_loss | Compte de résultat sur une période. |
| read | get_balance_sheet | Bilan à une date donnée. |
| write | create_expense | Enregistrer une dépense (débit charge, crédit banque). |
| write | create_income | Enregistrer un encaissement (crédit produit, débit banque). |
| write | create_transfer | Virer entre comptes, multidevise avec change automatique. |
| write | create_capital_contribution | Apport en capital (crédit capitaux propres). |
| write | create_opening_balance | Saisir les soldes d’ouverture de migration. |
| write | create_employee_advance | L’entreprise avance de l’argent à un salarié. |
| write | create_employee_repayment | Le salarié rembourse l’entreprise. |
| write | record_director_reimbursement | Solder un compte courant d’associé (1126). |
| write | edit_transaction | Modifier sur place, brouillon ou validée, en conservant le numéro. |
| write | recompute_fx_rates | Recalculer les taux de change historiques (mode simulation). |
| delete | post_transaction | Valider un brouillon au grand livre (changement irréversible). |
| delete | delete_transaction | Supprimer un brouillon, ou supprimer définitivement une écriture validée. |
| delete | bulk_post_transactions | Valider jusqu’à 500 brouillons d’un coup. |
| delete | bulk_delete_transactions | Supprimer définitivement jusqu’à 500 écritures. |
Factures de vente et d’achat, avoirs, paiements et gains/pertes de change.
| read | list_invoices | Lister les factures avec totaux en devise de base. |
| read | get_invoice | Une facture avec lignes, paiements et écritures. |
| read | list_tax_rates | Taux de TVA / taxes configurés. |
| read | list_invoices_missing_issuance | Contrôle d’intégrité des factures sans écriture d’émission. |
| write | create_invoice | Créer une facture en brouillon. |
| write | update_invoice | Modifier une facture brouillon ou validée. |
| write | send_invoice | Valider la facture au grand livre. |
| write | record_invoice_payment | Enregistrer un paiement, gestion multidevise. |
| write | edit_invoice_payment | Corriger un paiement sur place. |
| write | repost_invoice | Régénérer une écriture d’émission manquante. |
| delete | cancel_invoice | Supprimer définitivement une facture et ses écritures. |
Le cycle complet soumettre → approuver → payer, avec justificatifs et détection de doublons.
| read | list_expense_reports | Notes par statut, salarié, date. |
| read | get_expense_report | Une note avec lignes et justificatifs. |
| read | find_expense_duplicates | Auditer les doublons vs banque / journal. |
| write | create_expense_report | Créer une note en brouillon. |
| write | update_expense_report | Modifier les champs ou l’ensemble des lignes. |
| write | submit_expense_report | Soumettre pour approbation. |
| write | approve_expense_report | Approuver (validation auto pour les notes de dirigeant). |
| write | resubmit_expense_report | Resoumettre une note rejetée. |
| write | attach_expense_report_line_document | Joindre, remplacer ou retirer un justificatif. |
| write | review_expense_report_duplicate | Enregistrer un verdict de doublon. |
| write | repoint_expense_report_payable | Basculer la dette dirigeant vers le 1126. |
| write | mark_expense_report_reimbursed | Marquer remboursé sans écriture. |
| write | bulk_expense_report_action | Soumettre / approuver / supprimer en lot (jusqu’à 200). |
| delete | reject_expense_report | Rejeter une note soumise. |
| delete | pay_expense_report | Payer et passer l’écriture de remboursement. |
| delete | delete_expense_report | Supprimer définitivement une note. |
Déclarations de voyage multi-étapes et per-diem reliées à leurs dépenses réelles de transport/hébergement.
| read | list_travel_declarations | Déclarations par statut ou texte. |
| read | get_travel_declaration | Une déclaration avec étapes et transactions liées. |
| write | create_travel_declaration | Créer une déclaration per-diem multi-étapes. |
| write | update_travel_declaration | Modifier une déclaration brouillon. |
| write | submit_travel_declaration | Soumettre pour approbation. |
| write | approve_travel_declaration | Approuver une déclaration soumise. |
| write | link_travel_transaction | Rattacher une dépense de transport/hébergement à un voyage. |
| delete | pay_travel_declaration | Payer et comptabiliser au taux de la date de fin de voyage. |
| delete | unlink_travel_transaction | Retirer le lien d’une transaction. |
| delete | delete_travel_declaration | Supprimer définitivement une déclaration brouillon. |
Clients, fournisseurs et salariés.
| read | list_contacts | Contacts par type, statut actif ou texte. |
| read | get_contact | Un contact. |
| write | create_contact | Ajouter un client / fournisseur / salarié. |
| write | update_contact | Modifier les champs d’un contact. |
| delete | delete_contact | Supprimer définitivement un contact. |
Comptes bancaires/caisse, soldes et rapprochement relevé–grand livre.
| read | list_bank_accounts | Tous les comptes bancaires / caisse. |
| read | get_bank_account | Un compte. |
| read | get_bank_account_balance | Solde actuel. |
| read | get_bank_reconciliation | Lignes de relevé non rapprochées vs journal. |
| write | create_bank_account | Créer un compte. |
| write | update_bank_account | Modifier les détails d’un compte. |
| write | match_bank_transaction | Apparier une ligne de relevé à une écriture. |
| write | auto_match_bank_transactions | Apparier automatiquement par montant et date. |
| write | complete_bank_reconciliation | Finaliser un rapprochement. |
| delete | delete_bank_account | Supprimer un compte vide. |
| delete | unmatch_bank_transaction | Annuler un appariement. |
Justificatifs et pièces jointes liés aux écritures (export & téléchargement groupé).
| read | get_document | Métadonnées d’un document. |
| read | list_transaction_documents | Documents liés à une écriture. |
| read | export_documents | Lister / exporter en ZIP les pièces jointes avec URLs. |
| write | attach_document_to_transaction | Lier un document à une écriture. |
| delete | delete_document | Supprimer définitivement un document. |
Modèles qui génèrent des écritures répétées selon un calendrier.
| read | list_recurring | Modèles récurrents. |
| read | get_recurring | Un modèle. |
| read | list_upcoming_recurring | Modèles dus dans les N jours. |
| write | create_recurring | Créer un modèle. |
| write | update_recurring | Modifier un modèle. |
| write | generate_recurring | Générer la prochaine écriture maintenant. |
| delete | delete_recurring | Supprimer un modèle. |
Suivi des coûts et revenus et rentabilité par projet.
| read | list_projects | Projets par statut. |
| read | get_project | Un projet. |
| read | get_project_profitability | Revenus, coûts et marge. |
| write | create_project | Créer un projet. |
| write | update_project | Modifier un projet. |
| delete | delete_project | Supprimer un projet. |
Registre des immobilisations, comptabilisation des amortissements et cessions.
| read | list_assets | Immobilisations par catégorie / statut. |
| read | get_asset | Une immobilisation avec son plan d’amortissement. |
| write | create_asset | Enregistrer une immobilisation. |
| write | update_asset | Modifier une immobilisation. |
| delete | book_asset_depreciation | Comptabiliser l’amortissement d’un mois. |
| delete | dispose_asset | Céder ou mettre au rebut une immobilisation. |
| delete | delete_asset | Supprimer une immobilisation. |
Budgets et analyse budget vs réel.
| read | list_budgets | Tous les budgets. |
| read | get_budget | Un budget avec ses lignes mensuelles. |
| read | get_budget_vs_actual | Budget vs réel sur une période. |
| write | create_budget | Créer un budget. |
| write | update_budget | Modifier un budget. |
| write | upsert_budget_lines | Insérer / mettre à jour les lignes mensuelles. |
| delete | delete_budget | Supprimer un budget. |
Salariés, paies mensuelles et bulletins avec charges statutaires mauriciennes (PAYE / CSG / NSF) et reversement MRA.
| read | list_employees | Salariés, avec solde en option. |
| read | get_employee | Un salarié avec sa structure de rémunération. |
| read | get_employee_balance | Net dû à / par un salarié. |
| read | list_employee_ledger | Lignes de journal passées sur un salarié. |
| read | list_payroll_runs | Paies mensuelles. |
| read | get_payroll_run | Une paie avec bulletins + récapitulatif MRA. |
| read | list_payslips | Bulletins par mois / statut / salarié. |
| read | get_payslip | Un bulletin avec toutes ses lignes. |
| read | get_payslip_pdf | Téléchargement signé du PDF officiel. |
| write | create_employee | Embaucher un salarié. |
| write | update_employee | Modifier poste / salaire. |
| write | create_payroll_run | Créer une paie mensuelle (génère les bulletins). |
| write | create_payslip | Bulletin libre (écriture comptabilisée auto). |
| delete | process_payroll_run | Comptabiliser l’écriture de paie consolidée. |
| delete | delete_employee | Supprimer un salarié (suppression douce). |
| delete | delete_payslip | Supprimer un bulletin isolé + son écriture. |
Pour les comptables connectés à plusieurs entités — changer la société sur laquelle agissent les autres outils.
| read | list_companies | Sociétés accessibles par l’utilisateur connecté. |
| read | set_active_company | Changer la société active pour les appels suivants. |
Outils composites (recettes)
Quatre outils condensent un enchaînement courant en un seul appel, avec compensation pour qu’un flux à moitié terminé ne corrompe jamais vos comptes. Préférez-les aux séquences manuelles.
Formules & quotas
Chaque tools/call — lecture ou écriture — consomme une unité du quota MCP mensuel. Un appel bloqué par niveau ou épuisé renvoie -32603 avec le niveau qui le débloque.
| Formule | Appels MCP | Accès |
|---|---|---|
| Free | 100 / mois | Outils de lecture uniquement |
| Basic | 2 000 / mois | Lecture + écriture standard |
| Pro | 20 000 / mois | Basic + modèles récurrents |
| Enterprise | Illimité | Tout (+ immobilisations, budgets, projets, paie) |
Cas d’usage — faire de la vraie comptabilité avec l’IA
Six manières concrètes de gérer et piloter son entreprise avec Qontab + un assistant IA. Chacune montre ce que vous dites, et les outils déclenchés en coulisses.
« On est fin juin. Rapproche mon compte EUR principal avec le relevé que je viens d’importer, puis donne-moi le compte de résultat et le bilan de l’exercice. »
import_bank_and_reconcile apparie le relevé ; ce qui reste vous est rendu pour confirmation via match_bank_transaction. Puis get_profit_loss et get_balance_sheet produisent les deux états — déjà en devise de base, change résolu à la date de chaque écriture.
import_bank_and_reconcileget_profit_lossget_balance_sheet« Facture Acme Corp 4 500 € de conseil pour mai, TVA 15 %, puis marque-la payée sur mon compte Revolut le 3. »
Le composite record_paid_invoice crée la facture, la comptabilise avec la bonne TVA, et enregistre le paiement sur la banque choisie — avec compensation en cas d’échec, pour ne jamais avoir une facture payée sans écriture d’émission.
record_paid_invoicelist_tax_rateslist_bank_accounts« Voici 8 reçus de l’équipe. Crée les notes de frais, joins chaque reçu, approuve-les et paie-les depuis la caisse. »
process_expense_report exécute create → attach → submit → approve → pay pour chacune, et find_expense_duplicates signale ce qui semble déjà déclaré ou déjà présent dans le flux bancaire (même montant ±2 %, sous 14 jours).
process_expense_reportfind_expense_duplicatespay_expense_report« Prépare la paie de juin pour tous les salariés actifs, puis indique-moi le PAYE, le CSG et le NSF à reverser ce mois-ci. »
create_payroll_run génère chaque bulletin à partir de la structure de rémunération et des règles statutaires mauriciennes ; get_payroll_run renvoie le récapitulatif MRA consolidé (PAYE / CSG / NSF) pour connaître le reversement avant process_payroll_run.
create_payroll_runget_payroll_runprocess_payroll_run« Compare le chiffre d’affaires et la marge du trimestre au budget, montre-moi les trois projets qui coûtent le plus, et quels clients me doivent encore de l’argent. »
get_budget_vs_actual, get_project_profitability et list_invoices (filtré sur impayé) transforment le grand livre en tableau de bord de gestion interrogeable en langage naturel — sans générateur de rapports ni export tableur.
get_budget_vs_actualget_project_profitabilitylist_invoices« Passe sur Beta Ltd, comptabilise les factures fournisseurs que je colle, puis reviens sur Acme et sors sa balance générale. »
list_companies et set_active_company permettent à un même utilisateur de circuler entre toutes les entités dont il est membre : un comptable gère les comptes de tous ses clients depuis une seule session IA en OAuth.
list_companiesset_active_companyget_trial_balanceGestion des erreurs
| Code JSON-RPC | Signification |
|---|---|
| -32602 | Échec de validation — la requête ne correspond pas au schéma de l’outil (data.issues détaille). |
| -32604 | Scope insuffisant — un outil d’écriture appelé avec une clé en lecture seule. |
| -32605 | Rôle refusé — votre rôle RBAC ne permet pas cette action. |
| -32603 | Formule/quota/fonctionnalité — niveau trop bas ou quota mensuel épuisé (data.upgradeRequired indique le niveau). Affichez une invite de montée en gamme ; ne réessayez pas. |
Questions fréquentes
Branchez votre IA sur vos comptes
Créez un compte Qontab gratuit, générez une clé et connectez-vous en moins de cinq minutes.