MCP open-bp : référence pour les agents
Contrats publics des outils, séquence de travail et conventions financières. Cette page ne contient aucune donnée de projet et ne remplace pas l’authentification.
Connexion au serveur
https://open-bp.com/api/mcpTransport Streamable HTTP, requêtes POST en JSON-RPC. Le client négocie le protocole avec initialize, puis découvre les outils avec tools/list. Chaque requête doit être authentifiée.
OAuth utilise la découverte de ressource protégée et PKCE. Une clé personnelle utilise l’en-tête Authorization avec Bearer. Les clés et jetons ne doivent pas être placés dans les URL, les demandes au modèle ou les journaux.
Séquence de travail d’un agent
- Authentifiez la connexion par OAuth ou avec une clé privée. Le catalogue public décrit les contrats ; il n’accorde aucun accès aux projets.
- Appelez tools/list après authentification pour découvrir les seuls outils autorisés par la connexion.
- Lisez project_get et project_context avant de modifier un projet. Utilisez les identifiants, unités, périodes et sources retournés par le serveur.
- Préparez un brouillon avec project_edit_draft ou project_update avec commit=false. Recalculez avec project_calculate et présentez les différences.
- Enregistrez seulement après une demande explicite, avec project_save ou commit=true et la version attendue. Une erreur de version exige une relecture des données actuelles.
- Traitez séparément les opérations de partage, de compte et de facturation. Vérifiez les paramètres et demandez une confirmation avant leur appel.
Conventions et contrôles
- Les montants sont en euros. Les valeurs décimales des hypothèses financières sont des chaînes ; les taux sont exprimés en fractions et les périodes de calcul sont mensuelles.
- Conservez les états missing, example, estimate et confirmed des sources. N’inventez pas de montant, de document, de source ou de preuve commerciale.
- Les droits et quotas sont revérifiés côté serveur à chaque action. Le rôle admin exige un compte incwo vérifié ; un jeton ne crée pas ce rôle.
- La connexion reste liée à la session open-bp qui l’a autorisée. Un renouvellement OAuth ne prolonge pas cette session ; après son expiration, une nouvelle connexion est nécessaire.
- Les exports portent sur la version enregistrée. Les calculs décrivent des hypothèses ; ils ne constituent pas une validation professionnelle du dossier.
Catalogue des outils MCP
68 contrats sont décrits ici. Après connexion, tools/list retourne uniquement les outils autorisés par votre identité et vos droits.
Pour lire un seul schéma, ajoutez le paramètre tool au catalogue JSON, par exemple :
/agents/catalogue.json?tool=project_update| Outil | Droit nécessaire | Action et conditions |
|---|---|---|
account_delete | account | Programmer ou annuler la suppression du compte après confirmation de son email. Exige une session créée depuis moins de dix minutes et vérifie les engagements Stripe. |
account_export | account | Exporter les données personnelles et tous les projets du propriétaire en JSON privé, sans secret de connexion. |
account_get | account | Consulter le compte, les connexions disponibles et la suppression éventuellement programmée. |
account_link_provider | account | Préparer l’association de Google ou incwo au compte. Ouvrir le lien et confirmer chez le fournisseur pour terminer l’association. |
account_revoke_sessions | account | Déconnecter les autres sessions du compte. Leurs clés MCP sont également supprimées. |
account_sign_out | account | Déconnecter la session qui a autorisé l’assistant et révoquer ses clés et autorisations actives. Exige une confirmation explicite. |
admin_accounts | admin | Rechercher les comptes et consulter leurs droits et dernières attributions. Réservé aux comptes incwo vérifiés. |
admin_grant_subscription | admin | Attribuer un abonnement temporaire avec une durée et un historique, sans paiement Stripe. Réservé aux comptes incwo vérifiés. |
admin_revoke_subscription | admin | Retirer une attribution temporaire et retrouver les droits facturés. Réservé aux comptes incwo vérifiés. |
assistance_history | read | Lire les propositions de rédaction, les revues et leurs quotas. |
assistance_request | write | Demander une rédaction ou une revue à OpenAI après consentement, avec quota et identifiant de reprise. Les textes restent des propositions. |
assumption_update | write | Modifier l’état, la source et la note d’une hypothèse existante. Une confirmation exige une origine ou une note. commit=true enregistre la modification. |
billing_cancel_change | billing | Annuler un changement d’offre planifié. |
billing_checkout | billing | Créer un lien Stripe après choix de l’offre, du rythme et acceptation explicite des conditions. Le lien ne prouve aucun paiement. |
billing_confirm_change | billing | Confirmer un aperçu de changement d’offre encore valide, après accord sur le montant et la date. |
billing_portal | billing | Ouvrir le portail Stripe pour les cartes, factures et la résiliation. |
billing_preview_change | billing | Calculer le prorata et la date d’un changement d’offre, sans le confirmer. |
billing_refresh | billing | Rapprocher l’abonnement avec les factures Stripe vérifiées. |
chat_action_confirm | write | Confirmer une action précise préparée par le chat. Vérifie la session, les droits initiaux, la version et l’empreinte du brouillon ; une reprise ne répète pas une action terminée. |
chat_actions_list | read | Consulter les actions préparées par le chat pour votre session, leurs données et leur état. |
chat_history | read | Lire les échanges privés du chat et son quota d’assistance. |
chat_send | write | Envoyer un message et les données du brouillon à OpenAI, avec consentement et quota. Retourne une proposition contrôlée sans enregistrer le projet. |
comment_add | write | Ajouter un commentaire à une rubrique et à la version actuelle du projet. |
comment_resolve | write | Marquer un commentaire comme résolu ou le rouvrir, selon les droits du compte. |
comments_list | read | Lire les commentaires privés du projet, avec pagination. |
cost_estimate | read | Calculer une charge avec la méthode et les valeurs fournies, sans inventer de montant. |
costs_list | read | Consulter les charges et méthodes d’estimation disponibles. |
expense_estimate_apply | write | Appliquer une estimation chiffrée à une charge, conserver la méthode et sa source, et recalculer. commit=true enregistre la modification. |
expenses_add_standard | write | Ajouter les charges choisies dans le catalogue, sans montant inventé ni doublon. Les montants restent à renseigner. commit=true enregistre la modification. |
expenses_remove | write | Supprimer une ligne explicitement désignée et retirer ses remplacements de scénarios. commit=true enregistre la modification. |
expenses_upsert | write | Ajouter ou modifier une ligne complète des hypothèses avec son identifiant stable. commit=true enregistre la modification. |
invitation_accept | write | Accepter une invitation correspondant à l’adresse email vérifiée du compte. |
invitations_list | read | Lister les invitations destinées à l’adresse email vérifiée du compte. |
language_set | read | Choisir la langue des outils et réponses pour cette connexion MCP. Les données et règles financières ne changent pas. |
mcp_connection_create | access | Créer une clé MCP après confirmation explicite. Ne peut déléguer que les droits de la connexion actuelle. La clé retournée doit rester dans une configuration privée. |
mcp_connection_revoke | access | Révoquer une clé MCP appartenant au compte, après confirmation explicite. |
mcp_connections_list | access | Lister les clés MCP du compte et leurs droits, sans afficher les secrets. |
monthly_evolution_set | write | Remplacer ou supprimer la progression et les exceptions du seul champ mensuel indiqué. Une exception zéro reste explicite. commit=true enregistre la modification. |
oauth_connection_revoke | account | Retirer l’autorisation OAuth d’un assistant et révoquer ses jetons d’accès et de renouvellement. |
oauth_connections_list | account | Lister les assistants autorisés par OAuth et leurs droits, sans secret de connexion. |
payroll_remove | write | Supprimer une ligne explicitement désignée et retirer ses remplacements de scénarios. commit=true enregistre la modification. |
payroll_upsert | write | Ajouter ou modifier une ligne complète des hypothèses avec son identifiant stable. commit=true enregistre la modification. |
portfolio_list | read | Consulter l’avancement des dossiers clients avec la vue Cabinet et pagination. |
project_archive | write | Archiver ou réactiver un projet appartenant au compte, avec contrôle de version et de quota. |
project_calculate | read | Recalculer un brouillon et comparer ses scénarios avec le moteur financier. |
project_context | read | Lire les chemins de champs, unités, périodes et résultats pour modifier le bon projet. |
project_create | write | Créer un projet depuis un modèle. Le serveur vérifie le quota de projets actifs. |
project_edit_draft | write | Modifier un brouillon et recalculer les résultats, sans enregistrer. Les chemins et unités sont fournis par project_context. Pour enregistrer, utiliser project_save avec la version attendue. |
project_export | read | Exporter la version enregistrée en PDF, Word ou Excel. Retourne une ressource binaire privée ; les droits d’abonnement sont vérifiés. |
project_get | read | Lire les données enregistrées, la version et les droits du projet. |
project_save | write | Enregistrer tous les champs du projet, sources, charges, profils mensuels, scénarios et dossier. Exige la version attendue ; crée une nouvelle révision. |
project_update | write | Modifier seulement les champs demandés du projet. Les groupes financiers sont fusionnés ; les listes sont remplacées. commit=false propose un brouillon, commit=true enregistre avec contrôle de version. |
projects_list | read | Rechercher les projets privés et partagés, y compris les archives, avec pagination. |
revenues_remove | write | Supprimer une ligne explicitement désignée et retirer ses remplacements de scénarios. commit=true enregistre la modification. |
revenues_upsert | write | Ajouter ou modifier une ligne complète des hypothèses avec son identifiant stable. commit=true enregistre la modification. |
revision_compare | read | Comparer deux versions enregistrées ou un brouillon à une version : hypothèses, sources, scénarios, dossier et résultats calculés. |
revision_get | read | Consulter les données et résultats d’une sauvegarde du projet. |
revision_restore | write | Restaurer une sauvegarde complète en créant une nouvelle version, sans écraser l’historique. |
revisions_list | read | Lister les sauvegardes privées du projet, avec pagination par version. |
scenario_remove | write | Supprimer le scénario explicitement désigné, y compris un ancien scénario enregistré. commit=true enregistre la modification. |
scenario_upsert | write | Créer ou modifier un scénario complet en conservant la prévision initiale. Vérifie les quotas et recalcule la comparaison. commit=true enregistre la modification. |
share_invite | write | Inviter un éditeur ou un lecteur au projet, avec contrôle des quotas. Aucun email n’est envoyé par cette action. |
share_revoke | write | Retirer une invitation ou un accès au projet pour son propriétaire. |
shares_list | read | Lister les invitations et accès du projet pour son propriétaire. |
subscription_get | read | Consulter l’offre effective, les droits payés, les quotas et le changement planifié. |
template_get | read | Consulter un modèle, ses activités, questions et hypothèses. |
template_prepare | read | Préparer un projet depuis un modèle et des valeurs fournies, sans enregistrer. |
templates_list | read | Lister les modèles métier et leurs versions. Les exemples sont fictifs. |