BoondManager MCP Server
io.github.faugustePublished by GitHub account faugustev2.15.2Updated Oct 24, 2026
MCP Server for BoondManager API - 182 tools, 12 prompts, 22 resources (ERP/CRM)
Overview
BoondManager ERP/CRM MCP server exposing 182 tools, 12 prompts and 22 resources so an assistant can query and update recruiting, sales, staffing and finance…
- What you can do
- Search and read administration records: users, agencies, business units, roles, calendars, labels, webhooks, audit logs, notifications and threads
- Read and manage documents and CVs: download, upload by URL, local file, relay slot or base64, parse CVs, delete
- Run pre-built prompts for team status, sales pipeline, overdue invoices, candidate matching, consultant profiles, weekly recaps and expense lines
- Analyse staffing and skills: available consultants, upcoming mission ends, skills mapping, stale CVs, multi-source profile search
- Look up application dictionary labels and the current user
- When to use it
- Useful when an assistant should work directly with a BoondManager instance — for example to prepare staffing, sales pipeline or invoicing summaries, find consultants or candidates by skills, or file expenses — instead of copying data by hand.
- Requirements
- Runs locally over stdio via npx or the packaged desktop extension; Node.js needed. Requires BoondManager credentials: a JWT token in BOOND_API_TOKEN, the user/client token plus client key trio, or BOOND_USER and BOOND_PASSWORD. Optional BOOND_BASE_URL for a dedicated instance; optional SharePoint/Entra ID settings for the upload relay.
Installation
In SourceWeft
- Open BoondManager MCP Server in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
BoondManager MCP Server
Un projet open source Silamir.
[CI] [CodeQL] [Maintainability] [Code Coverage] [npm version] [npm downloads] [Node.js] [TypeScript] [MCP Registry] [Docker Hub] [GHCR] [License: Apache 2.0]
Installation 1-clic :
[Add to Cursor] [Install in VS Code] [Install in VS Code Insiders]
LM Studio, Goose et Gemini CLI s'installent via leur procédure dédiée (deeplink natif ou commande) — voir la section Installation. GitHub ne rend pas cliquables les liens à schéma non-HTTP (
lmstudio://,goose://), c'est pourquoi ils n'ont pas de bouton 1-clic ici.
Serveur MCP (Model Context Protocol) pour l'API BoondManager, permettant a Claude (Desktop, Cowork, Code) de rechercher, consulter, creer et modifier des enregistrements dans votre instance BoondManager.
238 outils couvrant 42 domaines de l'API BoondManager. Voir TOOLS.md pour le catalogue auto-généré (outils + prompts + ressources).
Sorties structurées. En plus du texte lisible, les outils
search,create,updateetdeleterenvoient unstructuredContentconforme à unoutputSchemaMCP :search→{ total?, count, items[] }(résumés compacts, pas les ressources JSON:API complètes),create/update→{ id?, type? },delete→{ id, deleted, reason? }. Les clients MCP qui exploitent les sorties structurées obtiennent une référence d'entité fiable pour chaîner les appels. Les outilsgetrestent en texte seul (leur texte est déjà du JSON exploitable).
Sommaire
- Domaines couverts
- Prompts pré-orchestrés
- Installation : Claude Desktop, Claude Code, Cursor, VS Code
- Configuration et authentification
- Transports (stdio, HTTP + OAuth2, Docker)
- Exemples d'utilisation
- Dépannage
Domaines couverts
CRM & Commercial
Gestion de projets
Facturation & Finance
RH & Temps
Suivi d'activite
Reporting
Administration & Configuration
Detail des onglets par entite
Les entites principales disposent d'outils dedies par onglet pour un acces cible :
Ressources MCP (dictionnaires)
Le serveur expose les dictionnaires de reference Boond comme ressources MCP (clients qui en supportent l'affichage : Claude Desktop, MCP Inspector, etc.). Permet au modele de traduire un state ou typeOf entier en libelle sans appel d'outil supplementaire.
Pour les dictionnaires hors de cette liste curee, l'outil boond_application_dictionary reste disponible.
Prompts pre-orchestres
En plus des outils, le serveur expose des prompts MCP (templates pre-cables) qui orchestrent les bons appels d'outils dans le bon ordre pour les workflows recurrents. Visibles dans les clients qui supportent les prompts (Claude Desktop, Cowork, Claude Code, MCP Inspector...) sous forme de slash-commands ou de menu.
Workflows transverses
Ressources, competences & CV
Comment invoquer un prompt
Les prompts MCP sont des modeles de message utilisateur : tu les invoques toi-meme, le LLM execute ensuite le runbook qu'ils contiennent. Aucun filtre BoondManager a connaitre — tout est embarque cote serveur.
Claude Desktop / Cowork / MCP Inspector : tape / dans la barre de saisie, choisis le prompt dans la liste, remplis les arguments dans le formulaire qui s'affiche, valide.
Claude Code : pareil, / puis selection ; les arguments sont demandes inline.
Fallback (clients sans UI dediee aux prompts) : cite le prompt par son nom dans une demande libre, le client va recuperer la definition via le protocole MCP. Exemple : "lance le runbook staffing_disponible entre le 1er juin et le 1er septembre 2026, competences Java Spring AWS".
Exemples d'invocation des prompts ressources / competences / CV :
Apres modification de la config Claude (
claude_desktop_config.jsonetc.), redemarrer le client : la liste des prompts MCP n'est pas hot-reloadee.
Prerequis
- Node.js >= 22
- Un compte BoondManager avec acces API active
- L'option "Allow API Rest calls using BasicAuth authentication" activee dans la configuration BoondManager (si BasicAuth)
Installation
Claude Desktop (one-click)
Telechargez le fichier .mcpb depuis la derniere release GitHub, puis dans Claude Desktop : Fichier > Installer une extension... et selectionnez le fichier. Les identifiants sont demandes a l'installation et stockes de maniere chiffree (Keychain macOS / Credential Manager Windows).
Claude Code (plugin, recommande)
Meme confort que le one-click Desktop : un formulaire de configuration, aucune variable d'environnement a poser soi-meme.
Claude Code affiche alors le formulaire des 14 options (identifiants, URL de
base, restrictions d'acces). Tout est optionnel a l'ecran, mais il faut
renseigner un des trois modes d'authentification : le trio User Token +
Client Token + Client Key (JWT genere automatiquement, recommande), ou le
Token JWT pre-construit, ou le couple Utilisateur + Mot de passe
(BasicAuth). Les champs laisses vides retombent sur les valeurs par defaut.
Si le serveur n'apparait pas immediatement dans /mcp, un /reload-plugins
suffit — inutile de relancer Claude Code.
Details utiles :
- Ou vont les secrets : les 5 champs sensibles (
User Token,Client Token,Client Key,Token JWT,Mot de passe) vont dans le Keychain macOS (ou~/.claude/.credentials.jsona defaut), pas danssettings.json. Les options non sensibles (URL, restrictions) sont stockees en clair danspluginConfigsde votre~/.claude/settings.json. - Nommage des outils : cote client les outils sont prefixes
mcp__boondmanager__, par exemplemcp__boondmanager__boond_candidates_search. C'est ce nom qu'il faut utiliser dans une allow-list de permissions. - Version : le plugin lance la version npm epinglee dans son manifeste. Pour
passer a une nouvelle release :
/plugin marketplace update boondmanagerpuis reinstaller le plugin. - Restreindre la surface : les champs Restriction du formulaire mappent sur
les variables
BOOND_MCP_*(profil metier, domaines, operations, lecture seule). Voir docs/access-control.md. - Suppressions : Claude Code supporte l'elicitation MCP, donc chaque
boond_*_deletedemande une confirmation avant d'agir (option Confirmer les suppressions, activee par defaut).
Pour desinstaller : /plugin uninstall boondmanager-mcp@boondmanager.
Claude Code (manuel, claude mcp add)
A privilegier si vous voulez piloter vous-meme les variables d'environnement, ou epingler une version differente de celle du plugin.
Windows : ajoutez
cmd /cavantnpx:
Pour rendre le serveur disponible dans tous vos projets, ajoutez --scope user :
Claude Code - Configuration partagee en equipe
Ajoutez un fichier .mcp.json a la racine de votre projet (a commiter dans git) :
Chaque membre de l'equipe n'a qu'a definir la variable d'environnement BOOND_API_TOKEN sur sa machine. Le fichier .mcp.json supporte la syntaxe ${VAR} et ${VAR:-default} pour les variables d'environnement.
Claude Code Enterprise (deploiement administre)
Les administrateurs peuvent deployer le serveur MCP pour tous les utilisateurs via le fichier managed-mcp.json :
Ce fichier prend le controle exclusif des serveurs MCP : les utilisateurs ne peuvent pas ajouter ou modifier de serveurs en dehors de cette configuration.
Pour restreindre les serveurs autorises tout en laissant les utilisateurs en ajouter, utilisez plutot managed-settings.json :
Claude Desktop / Cowork (configuration manuelle)
Ajoutez dans votre fichier de configuration Claude :
macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%\Claude\claude_desktop_config.json
Via npm
Ou installation globale :
Depuis les sources
Smithery
Le serveur est aussi disponible sur Smithery. La configuration est dans smithery.yaml à la racine du repo : Smithery propose une UI avec les champs d'authentification (JWT auto / JWT pré-construit / BasicAuth) et installe le serveur via npx.
LobeChat / LobeHub
Le serveur est listé sur le marketplace MCP de LobeHub. Dans LobeChat (auto-hebergé ou cloud), ajouter le MCP via Reglages > Plugins > MCP > Ajouter avec :
Ou utiliser le transport HTTP (voir section Transports) pour un deploiement partage en mode gateway.
Cursor
Cliquez sur le badge Add to Cursor en haut du README (ou ajoutez le serveur manuellement dans Settings > MCP > Add new MCP server). Renseignez ensuite l'authentification en ajoutant un bloc env au serveur dans ~/.cursor/mcp.json :
VS Code (GitHub Copilot / agent MCP)
Cliquez sur le badge Install in VS Code en haut du README, ou ajoutez le serveur a .vscode/mcp.json (par projet) ou a votre settings.json utilisateur :
LM Studio
Dans LM Studio : Program > Install > Edit mcp.json et ajoutez :
Goose
Ajoutez une extension de type STDIO dans Settings > Extensions > Add avec la commande npx -y boondmanager-mcp-server et la variable d'environnement BOOND_API_TOKEN. En CLI :
Gemini CLI
Le depot embarque un manifeste d'extension Gemini CLI (gemini-extension.json). Installez l'extension directement depuis GitHub :
Definissez ensuite l'authentification dans votre environnement (Gemini interpole ${VAR} au demarrage) :
Configuration
Logs
Le serveur utilise pino pour des logs structures JSON (agrégateurs, observabilité).
En production (NODE_ENV=production), les logs sont en JSON par défaut. En dev, le format pretty (colorisé) est actif sauf si LOG_FORMAT=json. Chaque requête HTTP reçoit un corrId (8 hex) pour tracer la requête dans les logs.
Les logs sont toujours écrits sur stderr, quel que soit le transport : en mode stdio, stdout est réservé au flux JSON-RPC et toute autre écriture corrompt la connexion côté client. Claude Desktop capture stderr dans son visualiseur de logs (Developer → Logs), c'est donc là que les avertissements (politique d'accès, mise à jour disponible, dictionnaires) sont visibles.
Authentification
Option 1 : Token API JWT (recommande)
Option 2 : BasicAuth
Transport HTTP en authentification statique (BOOND_HTTP_STATIC_AUTH)
Par défaut, le transport HTTP (MCP_TRANSPORT=http) est une ressource protégée OAuth2 : chaque requête MCP porte le token BoondManager de son utilisateur (voir docs/oauth.md). BOOND_HTTP_STATIC_AUTH=true remplace ce modèle par les credentials d'environnement ci-dessus, partagés par toutes les requêtes — pour un déploiement mono-locataire auto-hébergé, un pipeline CI ou une passerelle interne sans flux OAuth.
Dans ce mode, plus rien n'authentifie le client MCP : quiconque atteint le port agit avec les droits BoondManager de l'opérateur (lecture et écriture selon la politique d'accès). D'où :
/healthz reste accessible sans clé. En mode OAuth (défaut), MCP_HTTP_API_KEY est ignorée avec un avertissement : le Bearer y est le token BoondManager.
URL personnalisee (si instance dediee)
Par defaut, l'URL est https://ui.boondmanager.com/api.
Delai d'expiration HTTP
Chaque requete vers l'API BoondManager expire au bout de 30 secondes par defaut. Pour les tenants lents ou des rapports volumineux, augmenter via :
Si une requete depasse le delai, le serveur renvoie une erreur explicite mentionnant BOOND_HTTP_TIMEOUT_MS plutot que de rester bloque indefiniment.
Tentatives en cas d'echec transitoire
Le client HTTP retente automatiquement les erreurs transitoires avec un backoff exponentiel + jitter :
- GET : retry sur
5xx,429, erreurs reseau (ECONNRESET, etc.) et timeouts (GET etant idempotent). - POST / PUT / PATCH / DELETE : retry uniquement sur
429afin d'eviter de dupliquer une ecriture cote serveur. Les5xxet erreurs reseau remontent immediatement. - L'en-tete
Retry-After(en secondes ou en HTTP-date) est honore et plafonne aBOOND_HTTP_RETRY_MAX_MS.
Limitation de debit (rate limiting)
Pour eviter qu'une boucle d'outils emballee n'inonde l'API (et n'enchaine les 429), le client applique un token bucket local. Defauts : 10 req/s soutenu, rafale 20 — invisible en usage interactif normal. Les retentatives consomment aussi un jeton.
En transport HTTP OAuth, le bucket est par utilisateur (identite derivee du Bearer) : la rafale d'un utilisateur ne ralentit pas les autres. En stdio et en static auth, une seule identite, donc un seul bucket — la limite est par identite, pas par processus.
Cache du dictionnaire
L'API BoondManager n'expose qu'un seul endpoint /application/dictionary qui renvoie l'intégralité des libellés (états, types, pays…). Le serveur le met en cache en mémoire pour éviter de le re-télécharger à chaque résolution état/type → libellé.
Téléversement de documents locaux
boond_documents_create accepte trois sources, exactement une par appel :
Garde-fous : chemin absolu obligatoire, confinement vérifié après résolution des liens symboliques (.. et symlinks sortants refusés), fichier régulier uniquement, type déterminé par les premiers octets (PDF, DOCX/XLSX/PPTX, ODT/ODS, DOC/XLS/PPT, RTF, PNG, JPEG, GIF, WebP) et non par l'extension. N'autorisez que des répertoires dédiés : tout fichier accepté qui s'y trouve peut être envoyé dans BoondManager à la demande du modèle.
Relais d'upload pour les pièces jointes de conversation (SharePoint)
Une pièce jointe glissée dans une conversation se trouve dans l'environnement d'exécution de code du client (bac à sable), pas sur le poste du serveur : filePath ne la voit pas, et le modèle ne peut pas la retranscrire de façon fiable en base64. Le relais la fait transiter hors de la sortie du modèle :
boond_documents_upload_slot({ fileName })crée, dans une bibliothèque SharePoint dédiée, un dossier de transit et une session d'upload Microsoft Graph pré-authentifiée (15 min, un fichier, un usage) ;- le bac à sable dépose le fichier en une requête
PUT(curl, commande fournie) ; boond_documents_create({ parentType, parentId, uploadSlot })vérifie le fichier (taille, premiers octets), transmet à BoondManager son URL de lecture temporaire Graph via le mécanismefileUrl, puis le supprime définitivement (permanentDelete, sans corbeille ; repli sur une suppression simple si le locataire la refuse). Les slots expirés sont purgés à l'ouverture suivante.
Les identifiants Entra ID restent côté serveur ; le client ne voit que des URL limitées à un fichier.
Mise en place, avec le minimum de droits :
- un site SharePoint et une bibliothèque dédiés, réservés aux propriétaires, exclus de la recherche et de la synchronisation hors connexion, sans stratégie de rétention Purview (sinon les fichiers supprimés sont conservés) ;
- une inscription d'application Entra ID (locataire unique) avec la permission d'application Graph
Sites.Selectedet le consentement administrateur, puis le rôlewriteaccordé sur ce seul site :
- côté client, autoriser
<tenant>.sharepoint.comdans la liste blanche réseau de l'exécution de code.
Compromis assumé : l'URL de lecture que reçoit BoondManager est pré-authentifiée pendant sa courte durée de vie (quelques minutes, fixée par Microsoft) ; elle est imprévisible et le fichier est supprimé dès que BoondManager l'a récupéré.
Restriction d'accès (profils / domaines / lecture seule)
Vous pouvez restreindre ce que l'IA voit et peut faire, entièrement par variables d'environnement : exposer seulement certains domaines (ex. la comptabilité), et/ou bloquer les écritures et suppressions.
⚠️ Ce n'est pas une frontière de sécurité dure. Le filtre masque des outils à l'IA mais n'altère pas les droits du compte BoondManager utilisé. Pour un vrai cloisonnement, configurez d'abord les droits du compte/rôle BoondManager (lecture seule, périmètre comptable…) ; ce filtre vient en complément (économie de tokens, garde-fou anti-action accidentelle).
Exemple — tout le périmètre gestion, en lecture seule :
Guide complet, règles de résolution, contenu de chaque profil (et le nombre d'outils qui en résulte) : docs/access-control.md.
Icônes (SEP-973)
Les outils, prompts et ressources portent une icône par domaine (SVG inline en
data: URI, aucun asset à héberger). Coût mesuré : ~40 Kio, soit ~14 % du
payload tools/list. Les déploiements qui ne les affichent pas (passerelles,
clients texte) peuvent les supprimer :
Libellés personnalisés du dictionnaire
Si votre instance BoondManager utilise des libellés de dictionnaire
personnalisés (ex. types d'action ou états en anglais), vous pouvez déclarer
le mapping libellé→ID via BOOND_DICTIONARY_OVERRIDES (JSON inline ou chemin
vers un fichier JSON) :
Le serveur accepte alors ces libellés pour le typeOf de
boond_actions_create et les champs state des créations/modifications, les
résout automatiquement en IDs numériques, et enrichit les descriptions des
outils avec les libellés disponibles. Sans cette variable, le comportement est
strictement inchangé.
Format complet, entités supportées et limites : docs/dictionary-overrides.md.
Transports
Le serveur supporte deux transports MCP, selectionnables via la variable d'environnement MCP_TRANSPORT.
Streamable HTTP (pour les gateways MCP)
Depuis la v1.4.0, le serveur peut etre expose en HTTP (transport MCP Streamable HTTP) afin d'etre branche derriere une passerelle MCP ou deploye comme service. La revision de protocole negociee est celle du SDK installe (2025-11-25).
Authentification BoondManager : OAuth2 protected resource. Le serveur HTTP ne detient aucun secret (ni
client_secret, ni refresh token, ni stockage utilisateur). Chaque requete MCP doit porterAuthorization: Bearer <boond_access_token>; le serveur transmet le token tel quel a BoondManager. C'est le client MCP (Claude Desktop, Claude Code, gateway…) qui fait la danse OAuth contre BoondManager et qui gere le refresh. Procedure complete : docs/oauth.md.
Variables d'environnement HTTP
Variables OAuth2 — discovery (toutes optionnelles)
Stateless (defaut) : chaque requete HTTP POST est independante, idealement adapte a un gateway qui multiplexe plusieurs serveurs MCP. Aucune session n'est conservee cote serveur.
Stateful : le serveur genere un Mcp-Session-Id a l'initialisation que le client doit renvoyer dans chaque requete suivante. Utile pour les clients MCP natifs qui beneficient du streaming SSE et des notifications serveur.
Exemple : discovery + 401 challenge
Exemple : Claude Code via HTTP
Avec un client MCP conforme a la spec MCP Authorization 2025-06-18, la decouverte OAuth est automatique :
Exemple : Docker (image officielle)
Une image Docker prete a l'emploi est publiee a chaque release sur deux registres miroirs, multi-arch (linux/amd64 + linux/arm64) :
Memes digests, memes tags — choisissez celui qui s'aligne avec votre tooling. L'image demarre par defaut en transport HTTP, sur le port 3000, sur l'interface 0.0.0.0. Aucun volume, aucun secret a stocker — le serveur est stateless par construction.
Tags disponibles sur les deux registres : :latest, :X, :X.Y, :X.Y.Z pour chaque release stable (la version exacte est recommandee pour la prod). Les prereleases (par exemple :2.0.0-alpha) sont publiees uniquement sous leur tag pinne — ni :latest, ni :X, ni :X.Y ne bougent. Variables d'environnement supportees : voir Configuration et Transports.
Exemple : docker-compose
Le repo embarque un docker-compose.yml pret a l'emploi : un seul service stateless, aucun volume, aucun secret cote serveur.
Securite : le serveur HTTP est stateless et ne stocke aucun secret BoondManager. Chaque utilisateur authentifie le serveur via son propre token OAuth2 (issu de sa propre App BoondManager), et toutes les actions sont attribuees a son identite dans l'audit log Boond. Derriere un reverse proxy : terminez TLS (HTTPS), forwardez l'en-tete
Authorization, et reglezMCP_HTTP_PUBLIC_URLsur l'URL publique pour que la discovery soit coherente.
Clients distants non-Claude (ChatGPT, OpenAI / Gemini Agents SDK)
MCP est un protocole agnostique du modele : le meme endpoint HTTP/OAuth2 est consomme tel quel par tout hote compatible MCP, pas seulement Claude. Aucun package ni build specifique a un LLM n'est requis — il suffit de pointer l'hote sur votre URL MCP_HTTP_PUBLIC_URL.
Le contrat est identique a celui de Claude Code en HTTP (voir l'exemple claude mcp add --transport http ci-dessus) : seule la maniere de declarer le serveur cote client change.
Exemples d'utilisation
Une fois configure, vous pouvez demander a Claude :
CRM & Commercial
- "Recherche les candidats avec des competences en React a Paris"
- "Montre-moi les details techniques de la ressource #12345"
- "Cree un nouveau contact Jean Dupont chez Acme Corp"
- "Liste toutes les opportunites en cours"
- "Quels sont les positionnements de l'opportunite #20 ?"
Gestion de projets
- "Cree un projet Mission Alpha pour la societe #42"
- "Affiche le planning du projet #33"
- "Quels sont les bons de commande du projet #55 ?"
- "Affiche la productivite du projet #12"
Facturation & Finance
- "Recherche les factures en attente de paiement"
- "Liste les factures fournisseur de la societe #100"
- "Affiche les achats du projet #55"
RH & Temps
- "Affiche les feuilles de temps de la ressource #100 pour mars 2025"
- "Liste les absences prevues ce mois-ci"
- "Affiche les notes de frais de la ressource #200"
- "Quels sont les avantages de la ressource #50 ?"
Suivi d'activite
- "Quelles sont les actions recentes sur le candidat #789 ?"
- "Affiche les validations en attente"
- "Liste les taches de ma todolist"
Reporting
- "Affiche le reporting de synthese globale"
- "Quel est le reporting de productivite des ressources ?"
Administration
- "Recupere le dictionnaire des types d'actions"
- "Liste les agences et business units"
- "Affiche les webhooks configures"
Architecture
Depannage
« JSON Schema declares an unsupported dialect (draft-07) » sur les outils *_search
Symptome. Les outils de recherche (boond_candidates_search, boond_resources_search,
boond_opportunities_search...) echouent systematiquement, alors que les outils de fiche
(boond_*_get), les dictionnaires et les workflows textuels fonctionnent. La dissymetrie est
le diagnostic : seuls les ~59 outils qui declarent un outputSchema sont concernes, parce que
c'est ce schema-la que l'hote compile -- au moment ou il enregistre l'outil, donc avant tout
appel. L'outil n'echoue pas, il devient inutilisable.
Cause. Les versions 2.1.0 a 2.12.1 annoncaient "$schema": "http://json-schema.org/draft-07/schema#"
sur leurs schemas (le SDK MCP convertit les schemas Zod avec target: 'draft-7', en dur). Un hote
qui valide avec un validateur 2020-12 uniquement refuse de compiler un tel schema.
Correctif : mettre a jour vers >= 2.12.2. Depuis cette version le serveur n'annonce plus
aucun dialecte (src/schema-dialect.ts), ce que la suite de tests verifie sur les 185 outils
a travers un vrai client, sous validateur 2020-12 et draft-07.
Redemarrer le connecteur ne suffit pas : un redemarrage relance le binaire installe, il ne le met pas a jour. Verifiez la version reellement chargee plutot que celle affichee par le catalogue :
Selon le canal d'installation :
Verifiez aussi la version de Node : le serveur requiert Node.js >= 22. Un poste encore en Node 20 est en general un poste dont l'installation n'a pas ete rafraichie depuis longtemps.
Securite
- Les credentials BoondManager (JWT ou BasicAuth) ne transitent jamais via le protocole MCP -- ils sont configures en variables d'environnement cote serveur uniquement
- En mode stdio, le serveur tourne en local, aucun port reseau n'est expose
- En mode streamable HTTP, l'authentification est un OAuth2 protected resource : chaque requete MCP porte son propre
Authorization: Bearer <token>(le serveur ne stocke aucun secret). Terminez TLS (HTTPS via reverse proxy), forwardez l'en-teteAuthorization, reglezMCP_HTTP_PUBLIC_URLsur l'URL publique, et activez la protection anti DNS rebinding viaMCP_HTTP_ALLOWED_HOSTS. Restreignez aussi l'acces reseau a votre gateway. Voir docs/oauth.md. - Compatible avec les exigences ISO 27001
- L'API BoondManager est hebergee en France et conforme RGPD
- Authentification BoondManager : JWT (recommande), BasicAuth, ou JWT construit automatiquement a partir des composants
Developpement
Stack technique
- Runtime : Node.js >= 22 (ES2022)
- Langage : TypeScript 5.8+ (mode strict)
- MCP SDK : @modelcontextprotocol/sdk 1.12+
- Validation : Zod 4
- Tests : Vitest 4 + couverture V8
- Lint : ESLint 10 + typescript-eslint
- Transports : stdio (defaut) + Streamable HTTP (spec MCP 2025-11-25)
Ressources
- Documentation API BoondManager
- Collection Postman BoondManager
- Specification MCP
- pyboondmanager (reference Python)
- Catalogue d'outils auto-genere (TOOLS.md)
- Distribution & marketplaces (docs/distribution.md)
Licence
Apache License 2.0 — Copyright (c) 2025-2026 Silamir. Créé à l'origine par Frédéric Auguste.
Voir LICENSE et NOTICE pour les détails.
BoondManager est une marque de BoondManager SAS. Ce projet est un client indépendant et non officiel de l'API publique BoondManager, sans affiliation avec BoondManager SAS.
Source: README.md at commit f549af4
Tools
0Version history
2- v2.15.2LatestSep 20, 2026
- v2.15.0Sep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.