# BoondManager MCP Server (npm · boondmanager-mcp-server)

MCP Server for BoondManager API - 180 tools, 11 prompts, 22 resources (ERP/CRM)

- Trust score: 75/100 (medium)
- Change this week: +24
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- mcpb · `boondmanager-mcp-server-v2.8.3.mcpb`: not yet scored, [markdown](https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/https-github-com-fauguste-boondmanager-mcp-server-releases-download-v2-8-3-boond.md), [page](https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/https-github-com-fauguste-boondmanager-mcp-server-releases-download-v2-8-3-boond)
- npm · `boondmanager-mcp-server`: 75/100 (this document), [markdown](https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server.md), [page](https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `boondmanager-mcp-server`
- Version: `2.8.3`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (120 of 124), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (120 of 124), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to fauguste/boondmanager-mcp-server).
  - Clear OSI-approved license (Apache-2.0).
  - Actively maintained (last published 10 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 71/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 34849 tokens (~172/item across 202 items; 180 tools + 22 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (33% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add fauguste-boondmanager-mcp-server -- npx -y boondmanager-mcp-server
```

### Codex

```bash
codex mcp add fauguste-boondmanager-mcp-server -- npx -y boondmanager-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "fauguste-boondmanager-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "boondmanager-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add fauguste-boondmanager-mcp-server --command npx --arg -y --arg boondmanager-mcp-server
```

### Hermes

```yaml
mcp_servers:
  fauguste-boondmanager-mcp-server:
    command: "npx"
    args: ["-y", "boondmanager-mcp-server"]
```

### Other

```json
{
  "mcpServers": {
    "fauguste-boondmanager-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "boondmanager-mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 75, +50)

- [security improvement] Install scripts: unverified → pass
- [security improvement] Provenance: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [security] The attested source repository moved: fauguste/boondmanager-mcp-server
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] Schema quality: unverified → good
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional] Licence: Apache-2.0

### 2026-08-01 (score 25, +20)

- [functional improvement] Schema quality: unverified → 100
- [functional improvement] Tool coverage: unverified → 100

### 2026-07-31 (score 5, −46)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 51)

First indexed and scored.

## MCP tools (180)

### `boond_candidates_search` (~1426 tokens)

Rechercher des candidats

Recherche des candidats dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres sont ceux exacts de l'API.

Cas d'usage courants :
• **Mes candidats** sans connaître son propre ID : `perimeterDynamic: ["data"]`. Pour "candidats de l'équipe X" : `perimeterManagers: [<X_id>]` (utiliser `perimeterManagersType: "main"|"hr"` pour cibler Main vs HR Manager).
• **États / types** : `candidateStates: [<id>]` (dictionnaire `setting.state.candidate`), `candidateTypes` (`setting.typeOf.resource`), `contractTypes`, `availabilityTypes`. IDs entiers issus du dictionnaire.
• **Périmètre orga** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits`. `narrowPerimeter: true` pour ET.
• **Profil technique** : `tools: [<id>]` (OU; pour ET: `["#AND#", "1", "2"]`), `expertiseAreas`, `activityAreas`, `experiences`, `trainings`, `mobilityAreas`, `languages` (format `langueId|niveauId`).
• **Sourcing** : `sources: [<id>]` (origine du candidat), `evaluations`.
• **Période** : `period: "created"|"updated"|"available"|"withActions"|...` + `startDate`/`endDate`.
• **Recherche par nom** : `keywords: "Dupont"` + `keywordsType: "lastName"` (ou firstName, fullName avec `"NOM#PRENOM"`, emails, phones, title, titleSkills…). Sans `keywordsType`, recherche par défaut dans le CV.
• **Géolocalisation** : `coordinates: "lat,lon"` ou `location` + `geoDistance` (km, 5-200).

Pagination : `page`, `pageSize` (max 500). Tri : `sort` + `order`.

Returns : liste paginée des candidats. Utiliser `boond_candidates_get` ou les outils d'onglets pour le détail.

Input parameters:

- `activityAreas` (array): IDs de secteurs d'activité (dictionnaire setting.activityArea).
- `availabilityTypes` (array): IDs de types de disponibilité (dictionnaire setting.availability).
- `candidateStates` (array): IDs d'états de candidat (dictionnaire setting.state.candidate via boond_application_dictionary).
- `candidateTypes` (array): IDs de types de candidat (dictionnaire setting.typeOf.resource).
- `contractTypes` (array): IDs de types de contrat recherchés (dictionnaire setting.typeOf.contract).
- `coordinates` (string): Coordonnées GPS 'lat,lon'. Requiert `geoDistance`.
- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `evaluations` (array): IDs d'évaluations.
- `experiences` (array): IDs de niveaux d'expérience.
- `expertiseAreas` (array): IDs de domaines d'expertise.
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags.
- `geoDistance` (integer): Rayon km (5-200).
- `keywords` (string): Mots-clés (par défaut, recherche dans CV + dossier technique). Combinable avec `keywordsType`.
- `keywordsType` (string): Champ ciblé par `keywords` (défaut: 'resumeTd').
- `languages` (array): Langues au format `langueId|niveauId` (ex: ['anglais|courant']).
- `location` (string): Adresse texte. Requiert `geoDistance`.
- `mobilityAreas` (array): IDs de zones de mobilité.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `order` (string): Ordre de tri (asc/desc)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterManagersType` (string): Type de responsable visé par `perimeterManagers`: 'main' (Main Manager) ou 'hr' (HR Manager).
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Filtre temporel : 'created', 'updated', 'available', 'noAction'/'withActions'/'withoutActions'. À combiner avec `startDate` + `endDate`.
- `providerCompanies` (array): IDs de sociétés sous-traitantes.
- `shields` (array): Niveau de complétude.
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `sources` (array): IDs de sources de recrutement (dictionnaire setting.source).
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.
- `tools` (array): IDs d'outils/technos (dictionnaire setting.tool). Logique OU par défaut. Pour ET, ajouter '#AND#' en 1er élément: tools=['#AND#','12','34'].
- `trainings` (array): IDs de formations.

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_candidates_get` (~130 tokens)

Détails d'un(e) candidat

Récupère les informations détaillées d'un(e) candidat par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la candidat
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_candidates_create` (~166 tokens)

Créer un(e) candidat

Crée un(e) nouvel(le) candidat dans BoondManager.

Returns: Données du/de la candidat créé(e) avec son ID.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email principal
- `firstName` (string, required): Prénom du candidat
- `lastName` (string, required): Nom de famille du candidat
- `mainSkills` (string): Compétences principales (texte libre)
- `note` (string): Notes / commentaires
- `phone1` (string): Téléphone principal
- `state` (integer): État du candidat (0=en cours, 1=placé, 2=archivé...)
- `title` (string): Titre du poste / fonction

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_candidates_update` (~157 tokens)

Modifier un(e) candidat

Met à jour un(e) candidat existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la candidat.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email principal
- `firstName` (string): Prénom
- `id` (string, required): ID du candidat à modifier
- `lastName` (string): Nom
- `mainSkills` (string): Compétences principales
- `note` (string): Notes
- `phone1` (string): Téléphone
- `state` (integer): État du candidat
- `title` (string): Titre / fonction

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_candidates_delete` (~88 tokens)

Supprimer un(e) candidat

Supprime un(e) candidat de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_candidates_information` (~79 tokens)

Informations générales d'un candidat

Récupère les informations générales d'un candidat (coordonnées, adresse, état civil, photo, tags, source...).

Args:
  \- id (string): ID du candidat

Returns: Données personnelles et administratives du candidat.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_candidates_technical_data` (~80 tokens)

Compétences techniques d'un candidat

Récupère le profil technique d'un candidat (compétences, expériences, formations, certifications, langues, CV...).

Args:
  \- id (string): ID du candidat

Returns: Données techniques et compétences du candidat.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_candidates_administrative` (~65 tokens)

Données administratives d'un candidat

Récupère les informations administratives d'un candidat.

Args:
  \- id (string): ID du candidat

Returns: Données administratives du candidat.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_candidates_actions` (~74 tokens)

Actions liées à un candidat

Récupère les actions (appels, emails, RDV, notes) associées à un candidat.

Args:
  \- id (string): ID du candidat

Returns: Liste des actions liées au candidat.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_candidates_positionings` (~72 tokens)

Positionnements d'un candidat

Récupère les positionnements (placements sur des opportunités/projets) d'un candidat.

Args:
  \- id (string): ID du candidat

Returns: Liste des positionnements du candidat.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_search` (~1698 tokens)

Rechercher des ressources

Recherche des ressources (collaborateurs internes) dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres ci-dessous sont **ceux exacts** de l'API BoondManager — toute autre orthographe est silencieusement ignorée.

Cas d'usage courants :
• **Mes données / mon équipe / mon agence** sans connaître son propre ID : `perimeterDynamic: ["data"]` (mes ressources), `["managers"]` (mes N-1), `["agencies"]` (mes agences).
• **Équipe d'une personne X** : `perimeterManagers: [<X_id>]` (filtre les ressources dont X est le N+1).
• **Mon ID utilisateur** : appeler `boond_application_current_user` puis passer cet ID dans `perimeterManagers`.
• **États / types** : `resourceStates: [<id>]`, `resourceTypes: [<id>]`. IDs entiers issus du dictionnaire (voir `boond_application_dictionary` avec `setting.state.resource` ou `setting.typeOf.resource`). `excludeResourceStates` / `excludeResourceTypes` pour exclure.
• **Périmètre organisationnel** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits` (IDs entiers). Combiner avec `narrowPerimeter: true` pour ET au lieu de OU.
• **Compétences / outils** : `tools: [<toolId>, ...]` (OU par défaut ; pour ET: `["#AND#", "1", "2"]`). `expertiseAreas`, `activityAreas`, `languages` (format `langueId|niveauId`).
• **Disponibilité / activité** : `period: "available"` + `startDate`/`endDate`. Autres valeurs : `working`, `hired`, `left`, `employed`, `birthday`, `seniority`…
• **Recherche par nom** : `keywords: "Dupont"` + `keywordsType: "lastName"` (ou `firstName`, `fullName` avec `keywords: "Dupont#Jean"`).
• **Géolocalisation** : `coordinates: "48.85,2.35"` (ou `location: "Paris"`) + `geoDistance: 50` (km).

Pagination : `page` (1+), `pageSize` (1-500). Tri : `sort: "lastName"` (ou firstName/title/availability/state/updateDate/creationDate) + `order: "asc"|"desc"`.

Returns : liste paginée. Utiliser `boond_resources_get` ou les outils d'onglets pour le détail.

Input parameters:

- `activityAreas` (array): IDs de secteurs d'activité (dictionnaire setting.activityArea).
- `coordinates` (string): Coordonnées GPS 'latitude,longitude' pour recherche géographique. À combiner avec `geoDistance`.
- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `excludeManager` (boolean): Si true, ne retourne que les ressources sans compte manager.
- `excludeResourceStates` (array): IDs d'états de ressource à EXCLURE.
- `excludeResourceTypes` (array): IDs de types de ressource à EXCLURE.
- `experiences` (array): IDs de niveaux d'expérience (dictionnaire setting.experience).
- `expertiseAreas` (array): IDs de domaines d'expertise (dictionnaire setting.expertiseArea).
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags (drapeaux) attachés à la ressource.
- `geoDistance` (integer): Rayon en km pour la recherche géographique (5-200). Requis si `coordinates` ou `location` est fourni.
- `keywords` (string): Mots-clés (par défaut, recherche dans CV + dossier technique). Pour cibler un champ précis, fournir aussi `keywordsType` (ex: lastName, firstName, fullName, emails, title, titleSkills, phones, refere…
- `keywordsType` (string): Champ ciblé par `keywords`. Défaut: 'resumeTd' (CV + dossier technique). Pour 'fullName' utiliser `keywords = 'NOM#PRENOM'`.
- `languages` (array): Langues parlées au format `langueId|niveauId` (dictionnaires setting.languageSpoken et setting.languageLevel). Ex: ['anglais|courant'].
- `location` (string): Adresse texte (ville, etc.) pour recherche géographique. À combiner avec `geoDistance`.
- `mobilityAreas` (array): IDs de zones de mobilité (dictionnaire setting.mobilityArea).
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `order` (string): Ordre de tri (asc/desc)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Champ temporel pour filtrer par période. Valeurs courantes: 'available' (disponibilité), 'working' (en mission hors interne), 'workingAll', 'absent', 'idle', 'hired', 'left', 'employed', 'unemployed'…
- `providerCompanies` (array): IDs de sociétés sous-traitantes (filtre pour ressources externes).
- `resourceStates` (array): IDs d'états de ressource (dictionnaire setting.state.resource via boond_application_dictionary).
- `resourceTypes` (array): IDs de types de ressource (dictionnaire setting.typeOf.resource).
- `shields` (array): Niveau de complétude des champs conditionnels.
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.
- `tools` (array): IDs d'outils/technos (dictionnaire setting.tool). Logique OU par défaut. Pour ET, ajouter '#AND#' en 1er élément: tools=['#AND#','12','34'].
- `trainings` (array): IDs de formations (dictionnaire setting.training).

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_resources_get` (~132 tokens)

Détails d'un(e) ressource

Récupère les informations détaillées d'un(e) ressource par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la ressource
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_resources_create` (~138 tokens)

Créer un(e) ressource

Crée un(e) nouvel(le) ressource dans BoondManager.

Returns: Données du/de la ressource créé(e) avec son ID.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email principal
- `firstName` (string, required): Prénom de la ressource/collaborateur
- `lastName` (string, required): Nom de famille
- `note` (string): Notes
- `phone1` (string): Téléphone
- `state` (integer): État de la ressource
- `title` (string): Titre / poste

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_resources_update` (~147 tokens)

Modifier un(e) ressource

Met à jour un(e) ressource existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la ressource.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email principal
- `firstName` (string): Prénom
- `id` (string, required): ID de la ressource à modifier
- `lastName` (string): Nom
- `note` (string): Notes
- `phone1` (string): Téléphone
- `state` (integer): État
- `title` (string): Titre / poste

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_resources_delete` (~89 tokens)

Supprimer un(e) ressource

Supprime un(e) ressource de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_resources_information` (~84 tokens)

Informations générales d'une ressource

Récupère les informations générales d'une ressource (coordonnées, adresse, état civil, photo, tags, manager...).

Args:
  \- id (string): ID de la ressource

Returns: Données personnelles et administratives de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_technical_data` (~85 tokens)

Compétences techniques d'une ressource

Récupère le profil technique d'une ressource (compétences, expériences, formations, certifications, langues, CV...).

Args:
  \- id (string): ID de la ressource

Returns: Données techniques et compétences de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_administrative` (~87 tokens)

Données administratives d'une ressource

Récupère les informations administratives d'une ressource (salaire, TJM, coût journalier, informations RH...).

Args:
  \- id (string): ID de la ressource

Returns: Données administratives et RH de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_advantages` (~78 tokens)

Avantages d'une ressource

Récupère les avantages associés à une ressource (tickets restaurant, mutuelle, véhicule, primes...).

Args:
  \- id (string): ID de la ressource

Returns: Liste des avantages de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_actions` (~79 tokens)

Actions liées à une ressource

Récupère les actions (appels, emails, RDV, notes) associées à une ressource.

Args:
  \- id (string): ID de la ressource

Returns: Liste des actions liées à la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_positionings` (~74 tokens)

Positionnements d'une ressource

Récupère les positionnements (placements sur des projets) d'une ressource.

Args:
  \- id (string): ID de la ressource

Returns: Liste des positionnements de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_projects` (~69 tokens)

Projets d'une ressource

Récupère les projets auxquels une ressource participe ou a participé.

Args:
  \- id (string): ID de la ressource

Returns: Liste des projets de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_times_reports` (~70 tokens)

Feuilles de temps d'une ressource

Récupère les feuilles de temps d'une ressource.

Args:
  \- id (string): ID de la ressource

Returns: Liste des feuilles de temps de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_expenses_reports` (~71 tokens)

Notes de frais d'une ressource

Récupère les notes de frais d'une ressource.

Args:
  \- id (string): ID de la ressource

Returns: Liste des notes de frais de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_absences_reports` (~84 tokens)

Demandes d'absences d'une ressource

Récupère les demandes d'absences d'une ressource (congés, RTT, maladie...).

Args:
  \- id (string): ID de la ressource

Returns: Liste des demandes d'absences de la ressource.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_resources_technical_data_update` (~455 tokens)

Mettre à jour le dossier technique d'une ressource

Met à jour le dossier technique (DT) d'une ressource : compétences, outils, langues, expertises, formations, diplômes, expérience.

Mode 'merge' (défaut, recommandé pour automation) — enrichit sans rien écraser :
• skills (CSV) : concatène les compétences absentes
• tools / languages : ajoute les entrées dont la clé (slug outil / langue) est nouvelle, conserve le niveau existant pour les autres
• expertiseAreas, activityAreas, diplomas : ajoute les items absents
• title, summary, training, experience : remplis UNIQUEMENT si actuellement vides

Mode 'replace' — remplace intégralement chaque champ fourni par la valeur passée. Les champs non passés ne sont pas touchés.

Seuls les champs explicitement fournis dans l'appel sont envoyés à l'API — un champ omis ne sera jamais réinitialisé à vide.

Les expériences professionnelles (références) ne sont PAS gérées ici : utiliser boond_resources_reference_{create|update|delete}.

Input parameters:

- `activityAreas` (array): Secteurs d'activité.
- `diplomas` (array): Diplômes (texte libre, ex: 'DUT Informatique - IUT Bordeaux (2016)').
- `experience` (integer): Années d'expérience.
- `expertiseAreas` (array): Domaines d'expertise (texte libre, ex: 'Banque').
- `id` (string, required): ID de la ressource dont le dossier technique est mis à jour.
- `languages` (array): Langues parlées avec niveau.
- `mode` (string): 'merge' (défaut) enrichit le DT sans rien écraser. 'replace' remplace intégralement chaque champ fourni.
- `skills` (string): Compétences libres, séparées par virgule (ex: 'Python, AWS, GCP').
- `summary` (string): Résumé / synthèse du parcours.
- `title` (string): Titre / poste actuel.
- `tools` (array): Outils maîtrisés avec niveau (1-4).
- `training` (string): Formations / parcours académique.

### `boond_resources_reference_create` (~406 tokens)

Créer une référence (expérience pro) sur une ressource

Crée une expérience professionnelle (référence) rattachée au DT d'une ressource.

⚠️ Les références sont des sous-objets embarqués dans le DT, pas une entité REST autonome. L'outil fait read-modify-write : lit la liste actuelle via /resources/{id}/technical-data, ajoute la nouvelle référence et republie la liste complète.

Champs requis : resourceId, title, company, description.
Dates : startMonth/endMonth en int 1..12 (ou string '1'..'12' sans leading zero) ; startYear/endYear en int 4 chiffres. ⚠️ "05" avec leading zero est rejeté par l'API.

Pour compléter une référence existante, utiliser boond_resources_reference_update pour ne pas dupliquer.

Input parameters:

- `company` (string, required): Société / employeur.
- `description` (string, required): Description / missions / réalisations. ⚠��� Requis côté API Boond (1017 sans).
- `endMonth` (integer): Mois (1-12). Accepte int ou string ('5'). ⚠️ '05' avec leading zero est rejeté par l'API Boond.
- `endYear` (integer): Année (ex: 2024). Accepte int ou string '2024'.
- `location` (string): Lieu (ville).
- `resourceId` (string, required): ID de la ressource à laquelle rattacher la référence.
- `skills` (string): Compétences mobilisées (texte libre, séparées par virgule).
- `startMonth` (integer): Mois (1-12). Accepte int ou string ('5'). ⚠️ '05' avec leading zero est rejeté par l'API Boond.
- `startYear` (integer): Année (ex: 2024). Accepte int ou string '2024'.
- `title` (string, required): Intitulé du poste.

### `boond_resources_reference_update` (~321 tokens)

Modifier une référence (expérience pro)

Met à jour une référence existante. Read-modify-write sur /resources/{id}/technical-data — seuls les champs explicitement fournis remplacent ceux de la référence ciblée, les autres champs et toutes les autres références restent intacts.

Cas d'usage type : compléter startMonth/startYear/endMonth/endYear sur une référence sans toucher au titre, à la société ou à la description.

Input parameters:

- `company` (string): Société / employeur.
- `description` (string): Description / missions / réalisations.
- `endMonth` (integer): Mois (1-12). Accepte int ou string ('5'). ⚠️ '05' avec leading zero est rejeté par l'API Boond.
- `endYear` (integer): Année (ex: 2024). Accepte int ou string '2024'.
- `location` (string): Lieu (ville).
- `referenceId` (string, required): ID de la référence à modifier.
- `resourceId` (string, required): ID de la ressource portant la référence (les references sont embarquées dans le DT).
- `skills` (string): Compétences mobilisées.
- `startMonth` (integer): Mois (1-12). Accepte int ou string ('5'). ⚠️ '05' avec leading zero est rejeté par l'API Boond.
- `startYear` (integer): Année (ex: 2024). Accepte int ou string '2024'.
- `title` (string): Intitulé du poste.

### `boond_resources_reference_delete` (~102 tokens)

Supprimer une référence (expérience pro)

Supprime une référence (expérience professionnelle) du DT d'une ressource. Read-modify-write : lit la liste actuelle, en retire la référence ciblée, republie le reste. ⚠️ Action irréversible — vérifier l'ID au préalable.

Input parameters:

- `referenceId` (string, required): ID de la référence à supprimer.
- `resourceId` (string, required): ID de la ressource portant la référence (les references sont embarquées dans le DT).

### `boond_contacts_search` (~1367 tokens)

Rechercher des contacts

Recherche des contacts (interlocuteurs clients / prospects) dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres sont ceux exacts de l'API.

Cas d'usage courants :
• **Mes contacts** sans connaître son propre ID : `perimeterDynamic: ["data"]`. Pour "contacts gérés par X" : `perimeterManagers: [<X_id>]`.
• **Contacts d'une société donnée** : utiliser `keywords: "CSOC<companyId>"` (préfixe CSOC + ID). Exemple : `keywords: "CSOC6420"` pour la société 6420.
• **États / types** : `states: [<id>]` (dictionnaire `setting.state.contact`), `typesOf: [<id>]` (⚠️ avec un 's' final, dictionnaire `setting.typeOf.contact`), `companyStates` (états des sociétés rattachées). IDs entiers.
• **Périmètre orga** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits`. `narrowPerimeter: true` pour ET.
• **Profil métier** : `activityAreas`, `expertiseAreas`, `tools`, `origins` (sources), `influencers`.
• **Période** : `period: "created"|"updated"|"withActions"|"withoutActions"|"noAction"` + `startDate`/`endDate`.
• **Complétude** : `completeness: ["email:empty","phone:empty"]` (OU par défaut, '#AND#' en 1er pour ET) — utile pour "contacts sans email".
• **Recherche par nom** : `keywords: "Dupont"` + `keywordsType: "lastName"` (ou firstName, fullName `"NOM#PRENOM"`, companyFullName `"CSOCid#NOM#PRENOM"`, emails, phones, socialNetworks).

Pagination : `page`, `pageSize` (max 500). Tri : `sort` + `order`.

Returns : liste paginée des contacts. Utiliser `boond_contacts_get` ou les outils d'onglets pour le détail.

Input parameters:

- `activityAreas` (array): IDs de secteurs d'activité de la société.
- `companyStates` (array): IDs d'états des sociétés rattachées (dictionnaire setting.state.company).
- `completeness` (array): Filtre par complétude des champs au format `fieldId:mode` (fieldId: email/phone/socialNetworks ; mode: empty/filled). Logique OU par défaut, '#AND#' en 1er pour ET. Ex: ['email:empty','phone:empty'].
- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `expertiseAreas` (array): IDs de domaines d'expertise de la société.
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags.
- `influencers` (array): IDs de contacts influenceurs.
- `keywords` (string): Mots-clés (défaut: nom + prénom + société + fonction + périmètre technique). Combinable avec `keywordsType`.
- `keywordsType` (string): Champ ciblé. Défaut: 'default'. Pour 'fullName' utiliser `keywords = 'NOM#PRENOM'`. Pour 'companyFullName' utiliser `keywords = 'CSOCid#NOM#PRENOM'`.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `order` (string): Ordre de tri (asc/desc)
- `origins` (array): IDs d'origines (dictionnaire setting.origin).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Filtre temporel : 'created', 'updated', 'noAction'/'withActions'/'withoutActions'. À combiner avec `startDate` + `endDate`.
- `shields` (array): Niveau de complétude.
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.
- `states` (array): IDs d'états de contact (dictionnaire setting.state.contact).
- `tools` (array): IDs d'outils/technos (dictionnaire setting.tool). Logique OU par défaut. Pour ET, ajouter '#AND#' en 1er élément: tools=['#AND#','12','34'].
- `typesOf` (array): IDs de types de contact (dictionnaire setting.typeOf.contact). ⚠️ Le paramètre s'appelle `typesOf` (avec un 's'), PAS `typeOf`.

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_contacts_get` (~130 tokens)

Détails d'un(e) contact

Récupère les informations détaillées d'un(e) contact par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la contact
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_contacts_create` (~131 tokens)

Créer un(e) contact

Crée un(e) nouvel(le) contact dans BoondManager.

Returns: Données du/de la contact créé(e) avec son ID.

Input parameters:

- `city` (string): Ville
- `companyId` (string): ID de la société associée
- `country` (string): Pays
- `email1` (string): Email principal
- `firstName` (string, required): Prénom du contact
- `lastName` (string, required): Nom de famille
- `note` (string): Notes
- `phone1` (string): Téléphone
- `title` (string): Titre / fonction

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_contacts_update` (~125 tokens)

Modifier un(e) contact

Met à jour un(e) contact existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la contact.

Input parameters:

- `city` (string): Ville
- `email1` (string): Email
- `firstName` (string): Prénom
- `id` (string, required): ID du contact à modifier
- `lastName` (string): Nom
- `note` (string): Notes
- `phone1` (string): Téléphone
- `title` (string): Titre / fonction

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_contacts_delete` (~88 tokens)

Supprimer un(e) contact

Supprime un(e) contact de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_contacts_information` (~73 tokens)

Informations générales d'un contact

Récupère les informations générales d'un contact (coordonnées, société, fonction, tags...).

Args:
  \- id (string): ID du contact

Returns: Données personnelles et professionnelles du contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contacts_actions` (~74 tokens)

Actions liées à un contact

Récupère les actions (appels, emails, RDV, notes) associées à un contact.

Args:
  \- id (string): ID du contact

Returns: Liste des actions liées au contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contacts_opportunities` (~66 tokens)

Opportunités d'un contact

Récupère les opportunités commerciales associées à un contact.

Args:
  \- id (string): ID du contact

Returns: Liste des opportunités du contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contacts_projects` (~61 tokens)

Projets d'un contact

Récupère les projets associés à un contact.

Args:
  \- id (string): ID du contact

Returns: Liste des projets du contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contacts_orders` (~65 tokens)

Bons de commande d'un contact

Récupère les bons de commande associés à un contact.

Args:
  \- id (string): ID du contact

Returns: Liste des bons de commande du contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contacts_invoices` (~65 tokens)

Factures d'un contact

Récupère les factures associées à un contact.

Args:
  \- id (string): ID du contact

Returns: Liste des factures du contact.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_search` (~1042 tokens)

Rechercher des sociétés

Recherche des sociétés (clients, prospects, fournisseurs…) dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres sont ceux exacts de l'API.

Cas d'usage courants :
• **Mes comptes** sans connaître son propre ID : `perimeterDynamic: ["data"]`. Pour "comptes gérés par X" : `perimeterManagers: [<X_id>]`.
• **États** : `states: [<id>]` (dictionnaire `setting.state.company`). IDs entiers.
• **Périmètre orga** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits`. `narrowPerimeter: true` pour ET.
• **Segmentation m��tier** : `expertiseAreas` (dictionnaire `setting.expertiseArea`), `origins`, `influencers`.
• **Période** : `period: "created"|"updated"|"withActions"|"withoutActions"|"noAction"` + `startDate`/`endDate`.
• **Recherche** : `keywords` + `keywordsType` ('default' = nom/ville/pays/expertise/info, ou 'name', 'phones', 'emails', 'socialNetworks'). Pour cibler une société par ID : `keywords: "CSOC<id>"`.

Pagination : `page`, `pageSize` (max 500). Tri : `sort` + `order`.

Note : il n'y a PAS de filtre `typeOf` pour les sociétés dans l'API search. Le type (client/prospect/fournisseur) doit être inféré via le détail de la société (`boond_companies_get`).

Returns : liste paginée des sociétés. Utiliser `boond_companies_get` ou les outils d'onglets pour le détail.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `expertiseAreas` (array): IDs de domaines d'expertise (dictionnaire setting.expertiseArea).
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags.
- `influencers` (array): IDs d'influenceurs.
- `keywords` (string): Mots-clés (défaut: nom + ville + pays + expertise + informations). Combinable avec `keywordsType`.
- `keywordsType` (string): Champ ciblé par `keywords`. Défaut: 'default'.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `order` (string): Ordre de tri (asc/desc)
- `origins` (array): IDs d'origines (dictionnaire setting.origin).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Filtre temporel : 'created', 'updated', 'noAction'/'withActions'/'withoutActions'. À combiner avec `startDate` + `endDate`.
- `shields` (array): Niveau de complétude.
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.
- `states` (array): IDs d'états de société (dictionnaire setting.state.company).

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_companies_get` (~131 tokens)

Détails d'un(e) société

Récupère les informations détaillées d'un(e) société par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la société
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_companies_create` (~131 tokens)

Créer un(e) société

Crée un(e) nouvel(le) société dans BoondManager.

Returns: Données du/de la société créé(e) avec son ID.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email de la société
- `name` (string, required): Nom de la société
- `note` (string): Notes
- `phone1` (string): Téléphone
- `siret` (string): Numéro SIRET
- `state` (integer): État de la société
- `website` (string): Site web

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_companies_update` (~144 tokens)

Modifier un(e) société

Met à jour un(e) société existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la société.

Input parameters:

- `city` (string): Ville
- `country` (string): Pays
- `email1` (string): Email
- `id` (string, required): ID de la société à modifier
- `name` (string): Nom
- `note` (string): Notes
- `phone1` (string): Téléphone
- `siret` (string): Numéro SIRET
- `state` (integer): État
- `website` (string): Site web

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_companies_delete` (~89 tokens)

Supprimer un(e) société

Supprime un(e) société de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_companies_information` (~81 tokens)

Informations générales d'une société

Récupère les informations générales d'une société (coordonnées, SIRET, site web, secteur, taille, tags...).

Args:
  \- id (string): ID de la société

Returns: Données générales de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_contacts` (~64 tokens)

Contacts d'une société

Récupère les contacts associés à une société.

Args:
  \- id (string): ID de la société

Returns: Liste des contacts de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_actions` (~77 tokens)

Actions liées à une société

Récupère les actions (appels, emails, RDV, notes) associées à une société.

Args:
  \- id (string): ID de la société

Returns: Liste des actions liées à la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_opportunities` (~67 tokens)

Opportunités d'une société

Récupère les opportunités commerciales d'une société.

Args:
  \- id (string): ID de la société

Returns: Liste des opportunités de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_projects` (~64 tokens)

Projets d'une société

Récupère les projets associés à une société.

Args:
  \- id (string): ID de la société

Returns: Liste des projets de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_orders` (~67 tokens)

Bons de commande d'une société

Récupère les bons de commande d'une société.

Args:
  \- id (string): ID de la société

Returns: Liste des bons de commande de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_invoices` (~66 tokens)

Factures d'une société

Récupère les factures d'une société.

Args:
  \- id (string): ID de la société

Returns: Liste des factures de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_purchases` (~69 tokens)

Achats d'une société

Récupère les achats/sous-traitance d'une société.

Args:
  \- id (string): ID de la société

Returns: Liste des achats de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_companies_provider_invoices` (~69 tokens)

Factures fournisseur d'une société

Récupère les factures fournisseur d'une société.

Args:
  \- id (string): ID de la société

Returns: Liste des factures fournisseur de la société.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_opportunities_search` (~1374 tokens)

Rechercher des opportunités

Recherche des opportunités commerciales dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres sont ceux exacts de l'API.

Cas d'usage courants :
• **Mes opportunités** sans connaître son propre ID : `perimeterDynamic: ["data"]`. Pour "opportunités de X" : `perimeterManagers: [<X_id>]` (combiner avec `perimeterManagersType: "main"|"hr"`).
• **États / types** : `opportunityStates: [<id>]` (dictionnaire `setting.state.opportunity`), `opportunityTypes: [<id>]` (`setting.typeOf.project`). IDs entiers issus du dictionnaire.
• **Lié à une société/contact/candidat** : utiliser `keywords` avec préfixes — `"CSOC<id>"` (société), `"CCON<id>"` (contact), `"CAND<id>"` (candidat), `"COMP<id>"` (ressource), `"PROD<id>"` (produit), `"AO<id>"` (opportunité).
• **Périmètre orga** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits`. `narrowPerimeter: true` pour ET.
• **Métier** : `activityAreas`, `expertiseAreas`, `tools`, `places` (zones), `durations`, `origins`.
• **Positionnements** : `positioningStates: [<id>]` ou `["none"]` pour les opportunités sans positionnement.
• **Période** : `period: "created"|"started"|"closingDate"|"updated"|"updatedPositioning"|"withActions"|...` + `startDate`/`endDate`. Ex: clôtures 2026 → `period: "closingDate", startDate: "2026-01-01", endDate: "2026-12-31"`.

Pagination : `page`, `pageSize` (max 500). Tri : `sort: "creationDate"|"title"|"company.name"|"startDate"|"endDate"|"state"|"closingDate"|"answerDate"|"updateDate"|...` + `order`.

Returns : liste paginée des opportunités. Utiliser `boond_opportunities_get` ou les outils d'onglets pour le détail.

Input parameters:

- `activityAreas` (array): IDs de secteurs d'activité.
- `durations` (array): IDs de durées (dictionnaire setting.duration).
- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `expertiseAreas` (array): IDs de domaines d'expertise.
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags.
- `keywords` (string): Mots-clés. Pour cibler par ID préfixé : 'AOnnn' (opportunité), 'CSOCnnn' (société), 'CCONnnn' (contact), 'CANDnnn' (candidat), 'COMPnnn' (ressource), 'PRODnnn' (produit). Sinon recherche plein texte…
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `opportunityStates` (array): IDs d'états d'opportunité (dictionnaire setting.state.opportunity).
- `opportunityTypes` (array): IDs de types d'opportunité (dictionnaire setting.typeOf.project).
- `order` (string): Ordre de tri (asc/desc)
- `origins` (array): IDs d'origines.
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterManagersType` (string): Type de responsable visé par `perimeterManagers` (main/hr).
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Filtre temporel : 'created' (création), 'started', 'closingDate' (date de closing), 'updated', 'updatedPositioning', 'noAction'/'withActions'/'withoutActions'. À combiner avec `startDate` + `endDate`.
- `places` (array): IDs de zones (dictionnaire setting.mobilityArea).
- `positioningStates` (array): IDs d'états de positionnement, ou 'none' pour les opportunités sans positionnement.
- `shields` (array): Niveau de complétude.
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.
- `tools` (array): IDs d'outils/technos (dictionnaire setting.tool). Logique OU par défaut. Pour ET, ajouter '#AND#' en 1er élément: tools=['#AND#','12','34'].

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_opportunities_get` (~133 tokens)

Détails d'un(e) opportunité

Récupère les informations détaillées d'un(e) opportunité par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la opportunité
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_opportunities_create` (~354 tokens)

Créer un(e) opportunité

Crée un(e) nouvel(le) opportunité dans BoondManager.

Returns: Données du/de la opportunité créé(e) avec son ID.

Input parameters:

- `agencyId` (string): ID de l'agence (relation agency)
- `companyId` (string): ID de la société cliente (relation company)
- `contactId` (string): ID du contact associé (relation contact)
- `criteria` (string): Critères / compétences recherchées (texte libre). Alimente le matching de boond_workflow_candidats_pour_opportunite.
- `endDate` (string): Date de fin prévue (YYYY-MM-DD)
- `expertiseArea` (string): Domaine d'expertise : ID du dictionnaire setting.expertiseArea (via boond_application_dictionary)
- `hrManagerId` (string): ID de la ressource responsable RH (relation hrManager)
- `mainManagerId` (string): ID de la ressource responsable principal / commercial (relation mainManager)
- `name` (string, required): Nom / titre de l'opportunité
- `note` (string): Description de l'opportunité (mappée sur /data/attributes/description)
- `poleId` (string): ID du pôle (relation pole)
- `startDate` (string): Date de début prévue (YYYY-MM-DD ou 'immediate')
- `state` (integer): État de l'opportunité
- `turnoverEstimatedExcludingTax` (number): Chiffre d'affaires estimé HT (montant)
- `typeOf` (integer): Type d'opportunité : ID numérique du dictionnaire setting.typeOf.project (ex: 1, 3), via boond_application_dictionary

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_opportunities_update` (~373 tokens)

Modifier un(e) opportunité

Met à jour un(e) opportunité existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la opportunité.

Input parameters:

- `agencyId` (string): ID de l'agence (relation agency)
- `companyId` (string): ID de la société cliente (relation company)
- `contactId` (string): ID du contact associé (relation contact)
- `criteria` (string): Critères / compétences recherchées (texte libre). Alimente le matching de boond_workflow_candidats_pour_opportunite.
- `endDate` (string): Date de fin prévue (YYYY-MM-DD)
- `expertiseArea` (string): Domaine d'expertise : ID du dictionnaire setting.expertiseArea (via boond_application_dictionary)
- `hrManagerId` (string): ID de la ressource responsable RH (relation hrManager)
- `id` (string, required): ID de l'opportunité à modifier
- `mainManagerId` (string): ID de la ressource responsable principal / commercial (relation mainManager)
- `name` (string): Nom / titre
- `note` (string): Description de l'opportunité (mappée sur /data/attributes/description)
- `poleId` (string): ID du pôle (relation pole)
- `startDate` (string): Date de début prévue (YYYY-MM-DD ou 'immediate')
- `state` (integer): État de l'opportunité
- `turnoverEstimatedExcludingTax` (number): Chiffre d'affaires estimé HT (montant)
- `typeOf` (integer): Type d'opportunité : ID numérique du dictionnaire setting.typeOf.project (ex: 1, 3), via boond_application_dictionary

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_opportunities_delete` (~90 tokens)

Supprimer un(e) opportunité

Supprime un(e) opportunité de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_opportunities_information` (~81 tokens)

Informations générales d'une opportunité

Récupère les informations générales d'une opportunité (client, dates, montant, probabilité, état...).

Args:
  \- id (string): ID de l'opportunité

Returns: Données générales de l'opportunité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_opportunities_actions` (~82 tokens)

Actions liées à une opportunité

Récupère les actions (appels, emails, RDV, notes) associées à une opportunité.

Args:
  \- id (string): ID de l'opportunité

Returns: Liste des actions liées à l'opportunité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_opportunities_positionings` (~80 tokens)

Positionnements d'une opportunité

Récupère les positionnements (candidats/ressources proposés) sur une opportunité.

Args:
  \- id (string): ID de l'opportunité

Returns: Liste des positionnements de l'opportunité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_opportunities_projects` (~70 tokens)

Projets liés à une opportunité

Récupère les projets issus de cette opportunité.

Args:
  \- id (string): ID de l'opportunité

Returns: Liste des projets liés à l'opportunité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_opportunities_simulation` (~83 tokens)

Simulation financière d'une opportunité

Récupère la simulation financière d'une opportunité (marge, CA prévisionnel, coûts...).

Args:
  \- id (string): ID de l'opportunité

Returns: Données de simulation financière de l'opportunité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_actions_search` (~195 tokens)

Rechercher des actions

Recherche des actions (appels, emails, RDV, notes) dans BoondManager avec filtres optionnels par candidat, ressource, contact ou société.

Args:
  \- keywords (string, optional): Termes de recherche
  \- candidateId, resourceId, contactId, companyId (string, optional): Filtrer par entité liée
  \- page, pageSize: Pagination

Returns: Liste des actions correspondantes.

Input parameters:

- `candidateId` (string): Filtrer par ID candidat
- `companyId` (string): Filtrer par ID société
- `contactId` (string): Filtrer par ID contact
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `resourceId` (string): Filtrer par ID ressource

### `boond_actions_get` (~43 tokens)

Détails d'une action

Récupère les détails d'une action par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_actions_create` (~545 tokens)

Créer une action

Crée une nouvelle action (appel, email, RDV, note) dans BoondManager, rattachée à un contact, candidat, ressource, opportunité ou projet (relation dependsOn, obligatoire).

Args:
  \- typeOf (number, requis): ID numérique du type d'action (dictionnaire setting.action.*, via boond_application_dictionary)
  \- title, text (string, optional): Titre et contenu de l'action
  \- startDate, endDate (string, optional): Dates ISO avec timezone (ex: 2026-06-05T10:00:00+0200)
  \- contactId | candidateId | resourceId | opportunityId | projectId (string, un requis): Entité de rattachement
  \- companyId (string, optional): Société, uniquement en complément d'un contactId
  \- positioningId (string, optional): Positionnement à lier — requis par l'API pour les types d'action liés aux positionnements (ex. RQ)

Returns: L'action créée avec son ID.

Input parameters:

- `candidateId` (string): ID du candidat auquel rattacher l'action (dependsOn)
- `companyId` (string): ID de la société associée (uniquement en complément d'un contactId)
- `contactId` (string): ID du contact auquel rattacher l'action (dependsOn)
- `endDate` (string): Date de fin (même format que startDate)
- `opportunityId` (string): ID de l'opportunité à laquelle rattacher l'action (dependsOn)
- `positioningId` (string): ID du positionnement à lier à l'action (relation positioning). Requis par l'API pour les types d'action liés aux positionnements (ex. RQ) — sans lui, erreur 422 « 1002 - Wrong or missing attribute (/…
- `projectId` (string): ID du projet auquel rattacher l'action (dependsOn)
- `resourceId` (string): ID de la ressource à laquelle rattacher l'action (dependsOn)
- `startDate` (string): Date de début au format ISO 8601 avec timezone (ex: 2026-06-05T10:00:00+0200)
- `text` (string): Contenu / notes de l'action
- `title` (string): Titre de l'action
- `typeOf` (required): Type d'action : ID numérique du dictionnaire (setting.action.*, via boond_application_dictionary) ou libellé personnalisé si BOOND_DICTIONARY_OVERRIDES est configuré

### `boond_actions_update` (~348 tokens)

Modifier une action

Met à jour une action existante dans BoondManager (PUT partiel, seuls les champs fournis sont modifiés).

⚠️ Aucune relation n'est envoyée : le rattachement (dependsOn), le positionnement et la synchronisation calendrier (event Outlook/Teams, invités) sont préservés. Idéal pour ajouter un compte-rendu sans casser l'agenda — contrairement à delete + recreate qui supprime l'événement.

Args:
  \- id (string, requis): ID de l'action à modifier
  \- typeOf (number, optional): Nouveau type (ID numérique du dictionnaire setting.action.*)
  \- title (string, optional): Nouveau titre
  \- text (string, optional): Nouveau contenu / notes (remplace l'existant, pas d'ajout)
  \- startDate, endDate (string, optional): Dates ISO avec timezone (ex: 2026-06-05T10:00:00+0200)

Returns: L'action mise à jour.

Input parameters:

- `endDate` (string): Date de fin (même format que startDate)
- `id` (string, required): ID de l'action à modifier
- `startDate` (string): Date de début au format ISO 8601 avec timezone (ex: 2026-06-05T10:00:00+0200)
- `text` (string): Nouveau contenu / notes (HTML accepté). Remplace l'existant (pas d'ajout).
- `title` (string): Nouveau titre de l'action
- `typeOf` (integer): Nouveau type : ID numérique du dictionnaire setting.action.* (via boond_application_dictionary)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_actions_delete` (~66 tokens)

Supprimer une action

Supprime une action de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_timesheets_create` (~134 tokens)

Créer une feuille de temps

Crée une feuille de temps mensuelle liée à une ressource.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD)
- `note` (string): Notes
- `projectId` (string): ID du projet
- `resourceId` (string, required): ID de la ressource
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (string): État de la feuille de temps
- `term` (string, required): Mois au format YYYY-MM
- `totalDays` (number): Total jours
- `totalHours` (number): Total heures

### `boond_resources_timesheets` (~172 tokens)

Feuilles de temps d'une ressource

Récupère les feuilles de temps (times reports) d'une ressource par son ID, avec filtre optionnel par mois/année.

Args:
  \- resourceId (string): ID de la ressource
  \- month (number, optional): Mois (1-12), défaut: mois courant
  \- year (number, optional): Année (ex: 2025), défaut: année courante

Returns: Liste des feuilles de temps de la ressource avec jours/heures et statut.

Input parameters:

- `month` (integer): Mois (1-12). Si omis, mois courant.
- `resourceId` (string, required): ID de la ressource
- `year` (integer): Année (ex: 2025). Si omis, année courante.

### `boond_timesheets_search` (~291 tokens)

Rechercher des feuilles de temps

Recherche des feuilles de temps (CRA mensuels) dans BoondManager.

⚠️ `startMonth` et `endMonth` (format YYYY-MM) sont requis par l'API — passer YYYY-MM-DD ou les omettre renvoie un 422.

Args:
  \- startMonth (string, requis): Mois de début YYYY-MM (ex: '2025-01')
  \- endMonth (string, requis): Mois de fin YYYY-MM (ex: '2025-03')
  \- keywords (string, optional): Mots-clés
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 30)

Returns: Liste des feuilles de temps correspondantes.

Input parameters:

- `endMonth` (string, required): Mois de fin au format YYYY-MM (ex: '2025-03'). Requis.
- `keywords` (string): Mots-clés (préfixes 'TPS', 'COMP'...).
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `startMonth` (string, required): Mois de début au format YYYY-MM (ex: '2025-01'). Requis.

### `boond_timesheets_get` (~81 tokens)

Détails d'une feuille de temps

Récupère les informations détaillées d'une feuille de temps par son ID.

Args:
  \- id (string): Identifiant unique de la feuille de temps

Returns: Données JSON complètes de la feuille de temps (jours, heures, statut, détails).

Input parameters:

- `id` (string, required): Identifiant unique de la feuille de temps

### `boond_projects_search` (~1190 tokens)

Rechercher des projets

Recherche des projets / missions dans BoondManager avec filtres serveur.

⚠️ Utilisez les filtres structurés plutôt que la pagination intégrale. Les noms de paramètres sont ceux exacts de l'API.

Cas d'usage courants :
• **Mes projets** sans connaître son propre ID : `perimeterDynamic: ["data"]`. Pour "projets de X" : `perimeterManagers: [<X_id>]`.
• **États / types** : `projectStates: [<id>]` (dictionnaire `setting.state.project`), `projectTypes: [<id>]` (`setting.typeOf.project`). IDs entiers.
• **Société cliente** : `companies: [<companyId>]` (filtre les projets rattachés à ces sociétés).
• **Lié à un contact / opportunité / contrat / ressource / produit** : utiliser `keywords` avec préfixes — `"PRJ<id>"` (projet), `"CSOC<id>"` (société), `"CCON<id>"` (contact), `"AO<id>"` (opportunité), `"CTR<id>"` (contrat), `"COMP<id>"` (ressource), `"PROD<id>"` (produit), `"MIS<id>"` (livraison).
• **Périmètre orga** : `perimeterAgencies`, `perimeterPoles`, `perimeterBusinessUnits`. `narrowPerimeter: true` pour ET.
• **Métier** : `activityAreas`, `expertiseAreas`, `flags` (tags).
• **Période** : `period: "running"` (en cours), `"created"`, `"started"`, `"stopped"`, `"closed"`, `"updated"`, `"hasAdditionalDataOrPurchase"` + `startDate`/`endDate`. Ex: projets en cours en 2026 → `period: "running", startDate: "2026-01-01", endDate: "2026-12-31"`.

Pagination : `page`, `pageSize` (max 500). Tri : `sort: "startDate"|"endDate"|"reference"|"company.name"|"mainManager.lastName"` + `order`.

Returns : liste paginée des projets. Utiliser `boond_projects_get` ou les outils d'onglets pour le détail.

Input parameters:

- `activityAreas` (array): IDs de secteurs d'activité.
- `companies` (array): IDs de sociétés clientes : projets rattachés à ces sociétés.
- `endDate` (string): Date de fin (YYYY-MM-DD), à utiliser avec `period`.
- `expertiseAreas` (array): IDs de domaines d'expertise.
- `fields` (array): Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat (ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. Absent = résumé…
- `flags` (array): IDs de tags.
- `keywords` (string): Mots-clés. Pour cibler par ID préfixé : 'PRJnnn' (projet), 'CSOCnnn' (société), 'CCONnnn' (contact), 'AOnnn' (opportunité), 'COMPnnn' (ressource), 'CTRnnn' (contrat).
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `order` (string): Ordre de tri (asc/desc)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Filtre temporel : 'running' (en cours), 'created', 'started', 'stopped', 'closed', 'updated', 'hasAdditionalDataOrPurchase'. À combiner avec `startDate` + `endDate`.
- `projectStates` (array): IDs d'états de projet (dictionnaire setting.state.project).
- `projectTypes` (array): IDs de types de projet (dictionnaire setting.typeOf.project).
- `sort` (string): Champ de tri (ex: lastName, firstName, updateDate)
- `startDate` (string): Date de début (YYYY-MM-DD), à utiliser avec `period`.

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_projects_get` (~130 tokens)

Détails d'un(e) projet

Récupère les informations détaillées d'un(e) projet par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la projet
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_projects_create` (~180 tokens)

Créer un(e) projet

Crée un(e) nouvel(le) projet dans BoondManager.

Returns: Données du/de la projet créé(e) avec son ID.

Input parameters:

- `companyId` (string): ID de la société cliente
- `contactId` (string): ID du contact associé
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `name` (string, required): Nom du projet / mission
- `note` (string): Notes / description du projet
- `opportunityId` (string): ID de l'opportunité liée
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (integer): État du projet (0=en cours, 1=terminé, 2=archivé...)
- `typeOf` (integer): Type de projet (ID du dictionnaire setting.typeOf.project)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_projects_update` (~139 tokens)

Modifier un(e) projet

Met à jour un(e) projet existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la projet.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD)
- `id` (string, required): ID du projet à modifier
- `name` (string): Nom du projet
- `note` (string): Notes
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (integer): État du projet
- `typeOf` (integer): Type de projet (ID du dictionnaire setting.typeOf.project)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_projects_delete` (~88 tokens)

Supprimer un(e) projet

Supprime un(e) projet de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_projects_information` (~72 tokens)

Informations générales d'un projet

Récupère les informations générales d'un projet (client, dates, état, description, responsable...).

Args:
  \- id (string): ID du projet

Returns: Données générales du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_actions` (~74 tokens)

Actions liées à un projet

Récupère les actions (appels, emails, RDV, notes) associées à un projet.

Args:
  \- id (string): ID du projet

Returns: Liste des actions liées au projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_simulation` (~75 tokens)

Simulation financière d'un projet

Récupère la simulation financière d'un projet (marge, CA, coûts, rentabilité...).

Args:
  \- id (string): ID du projet

Returns: Données de simulation financière du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_deliveries_groupments` (~75 tokens)

Livraisons d'un projet

Récupère les livraisons (CRA) et groupements associés à un projet.

Args:
  \- id (string): ID du projet

Returns: Liste des livraisons du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_orders` (~65 tokens)

Bons de commande d'un projet

Récupère les bons de commande associés à un projet.

Args:
  \- id (string): ID du projet

Returns: Liste des bons de commande du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_purchases` (~68 tokens)

Achats/sous-traitance d'un projet

Récupère les achats et la sous-traitance associés à un projet.

Args:
  \- id (string): ID du projet

Returns: Liste des achats du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_projects_productivity` (~74 tokens)

Productivité d'un projet

Récupère les données de productivité d'un projet (temps passé, jours consommés...).

Args:
  \- id (string): ID du projet

Returns: Données de productivité du projet.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_invoices_search` (~159 tokens)

Rechercher des factures

Recherche des factures dans BoondManager avec filtres par societe, projet et periode.

Input parameters:

- `companyId` (string): Filtrer par ID société
- `endDate` (string): Date de fin de période (YYYY-MM-DD)
- `keywords` (string): Mots-clés de recherche (référence, société...)
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `period` (string): Type de période (created, updated, expectedPayment, performedPayment, period)
- `projectId` (string): Filtrer par ID projet
- `startDate` (string): Date de début de période (YYYY-MM-DD)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_invoices_get` (~48 tokens)

Détails d'un(e) facture

Récupère les informations détaillées d'un(e) facture par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_invoices_create` (~180 tokens)

Créer un(e) facture

Crée un(e) nouvel(le) facture dans BoondManager.

Returns: Données du/de la facture créé(e) avec son ID.

Input parameters:

- `amountExcludingTax` (number): Montant HT
- `expectedPaymentDate` (string): Date d'échéance/paiement attendu (YYYY-MM-DD)
- `invoiceDate` (string): Date de facturation (YYYY-MM-DD)
- `invoicePayments` (array): Paiements client de la facture
- `invoiceRecords` (array): Lignes de facture Boond
- `note` (string): Notes / commentaires
- `orderId` (string): ID du bon de commande associé
- `reference` (string): Référence de la facture
- `state` (integer): État de la facture
- `taxRate` (number): Taux de TVA (%)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_invoices_update` (~186 tokens)

Modifier un(e) facture

Met à jour un(e) facture existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la facture.

Input parameters:

- `amountExcludingTax` (number): Montant HT
- `expectedPaymentDate` (string): Date d'échéance/paiement attendu (YYYY-MM-DD)
- `id` (string, required): ID de la facture à modifier
- `invoiceDate` (string): Date de facturation (YYYY-MM-DD)
- `invoicePayments` (array): Paiements client de la facture
- `invoiceRecords` (array): Lignes de facture Boond
- `note` (string): Notes
- `reference` (string): Référence de la facture
- `state` (integer): État de la facture
- `taxRate` (number): Taux de TVA (%)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_invoices_delete` (~67 tokens)

Supprimer une facture

Supprime une facture de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_orders_search` (~148 tokens)

Rechercher des bons de commande

Recherche des bons de commande dans BoondManager avec filtres par société et projet.

Args:
  \- keywords (string, optional): Termes de recherche
  \- companyId, projectId (string, optional): Filtrer par entité liée
  \- page, pageSize: Pagination

Returns: Liste des bons de commande correspondants.

Input parameters:

- `companyId` (string): Filtrer par ID société
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `projectId` (string): Filtrer par ID projet

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_orders_get` (~49 tokens)

Détails d'un(e) bon de commande

Récupère les informations détaillées d'un(e) bon de commande par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_orders_create` (~193 tokens)

Créer un(e) bon de commande

Crée un(e) nouvel(le) bon de commande dans BoondManager.

Returns: Données du/de la bon de commande créé(e) avec son ID.

Input parameters:

- `amountExcludingTax` (number): Montant HT
- `companyId` (string): ID de la société
- `customerAgreement` (boolean): Accord client reçu
- `endDate` (string): Date de fin couverte (YYYY-MM-DD)
- `note` (string): Notes / commentaires
- `orderDate` (string): Date du bon de commande (YYYY-MM-DD)
- `projectId` (string): ID du projet associé
- `reference` (string): Référence du bon de commande
- `schedules` (array): Lignes/échéances de commande
- `startDate` (string): Date de début couverte (YYYY-MM-DD)
- `state` (integer): État du bon de commande

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_orders_update` (~178 tokens)

Modifier un(e) bon de commande

Met à jour un(e) bon de commande existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la bon de commande.

Input parameters:

- `amountExcludingTax` (number): Montant HT
- `customerAgreement` (boolean): Accord client reçu
- `endDate` (string): Date de fin couverte (YYYY-MM-DD)
- `id` (string, required): ID du bon de commande à modifier
- `note` (string): Notes
- `orderDate` (string): Date (YYYY-MM-DD)
- `reference` (string): Référence
- `schedules` (array): Lignes/échéances de commande
- `startDate` (string): Date de début couverte (YYYY-MM-DD)
- `state` (integer): État

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_orders_delete` (~68 tokens)

Supprimer un bon de commande

Supprime un bon de commande de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_deliveries_create` (~198 tokens)

Creer une prestation/livraison

Cree une prestation Boond via POST /deliveries, liee a un projet et une ressource.

Input parameters:

- `averageDailyCost` (number): Cout journalier moyen
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `forceAverageDailyPriceExcludingTax` (boolean): Forcer le prix journalier HT
- `note` (string): Notes, mappees vers informationComments
- `projectId` (string, required): ID du projet
- `quantity` (number): Nombre de jours / quantite
- `resourceId` (string, required): ID de la ressource portee par la prestation
- `startDate` (string): Date de debut (YYYY-MM-DD)
- `state` (integer): Etat
- `title` (string): Titre de la prestation/livraison
- `typeOf` (integer): Type de prestation
- `unitPrice` (number): Prix journalier HT

### `boond_deliveries_search` (~213 tokens)

Rechercher des livraisons / CRA

Recherche des livraisons (comptes rendus d'activite) dans BoondManager avec filtres par projet, societe et periode.

Args:
  \- keywords (string, optional): Termes de recherche
  \- projectId, companyId (string, optional): Filtrer par entite liee
  \- startDate, endDate (string, optional): Periode (YYYY-MM-DD)
  \- page, pageSize: Pagination

Returns: Liste des livraisons correspondantes.

Input parameters:

- `companyId` (string): Filtrer par ID société
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `projectId` (string): Filtrer par ID projet
- `startDate` (string): Date de début (YYYY-MM-DD)

### `boond_deliveries_get` (~49 tokens)

Details d'une livraison / CRA

Recupere les informations detaillees d'une livraison (CRA) par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_absences_search` (~176 tokens)

Rechercher des demandes d'absence

Recherche des demandes d'absence dans BoondManager.

Args:
  \- keywords (string, optional): Termes de recherche. resourceId est converti en COMP<id>.
  \- startMonth, endMonth (string, optional): Periode au format YYYY-MM.
  \- page, pageSize: Pagination

Returns: Liste des demandes d'absence correspondantes.

Input parameters:

- `endMonth` (string): Mois de fin de période (YYYY-MM)
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `resourceId` (string): Filtrer par ID ressource
- `startMonth` (string): Mois de début de période (YYYY-MM)

### `boond_absences_get` (~48 tokens)

Details d'une absence

Recupere les informations detaillees d'une demande d'absence par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_absences_create` (~197 tokens)

Creer une demande d'absence

Cree une demande d'absence Boond avec absencesPeriods.

Input parameters:

- `absencesPeriods` (array): Périodes d'absence Boond brutes
- `duration` (number): Durée en jours ; calculée automatiquement si absente
- `endDate` (string, required): Date de fin (YYYY-MM-DD)
- `note` (string): Commentaire / motif
- `resourceId` (string, required): ID de la ressource en absence
- `startDate` (string, required): Date de début (YYYY-MM-DD)
- `state` (integer): État de la demande (0=en attente, 1=validé, 2=refusé...)
- `typeOf` (string, required): Libellé de l'absence (congé payé, RTT, maladie, sans solde...)
- `workUnitTypeReference` (integer): Référence du type d'unité d'absence, défaut 1

### `boond_absences_update` (~98 tokens)

Modifier une absence

Met a jour une demande d'absence existante. Seuls les champs fournis sont modifies.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD)
- `id` (string, required): ID de l'absence à modifier
- `note` (string): Commentaire / motif
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (integer): État de la demande

### `boond_absences_delete` (~43 tokens)

Supprimer une absence

Supprime une absence de BoondManager. Action irreversible.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_expenses_search` (~203 tokens)

Rechercher des notes de frais

Recherche des notes de frais dans BoondManager avec filtres par ressource, projet et période.

Args:
  \- keywords (string, optional): Termes de recherche
  \- resourceId, projectId (string, optional): Filtrer par entité liée
  \- startDate, endDate (string, optional): Période (YYYY-MM-DD)
  \- page, pageSize: Pagination

Returns: Liste des notes de frais correspondantes.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD)
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `projectId` (string): Filtrer par ID projet
- `resourceId` (string): Filtrer par ID ressource
- `startDate` (string): Date de début (YYYY-MM-DD)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_expenses_get` (~50 tokens)

Détails d'un(e) note de frais

Récupère les informations détaillées d'un(e) note de frais par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_expenses_create` (~182 tokens)

Créer un(e) note de frais

Crée un(e) nouvel(le) note de frais dans BoondManager.

Returns: Données du/de la note de frais créé(e) avec son ID.

Input parameters:

- `amount` (number, required): Montant du frais
- `currency` (string): Devise (EUR, USD...)
- `exchangeRateAgency` (number): Taux de change agence
- `expenseDate` (string, required): Date du frais (YYYY-MM-DD)
- `note` (string): Description / justification
- `projectId` (string): ID du projet associé
- `resourceId` (string, required): ID de la ressource
- `state` (integer): État de la note de frais
- `term` (string): Période de la note de frais (YYYY-MM)
- `typeOf` (string): Type de frais (transport, repas, hébergement...)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_expenses_update` (~126 tokens)

Modifier un(e) note de frais

Met à jour un(e) note de frais existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la note de frais.

Input parameters:

- `amount` (number): Montant
- `exchangeRateAgency` (number): Taux de change agence
- `id` (string, required): ID de la note de frais à modifier
- `note` (string): Description
- `state` (integer): État
- `term` (string): Période de la note de frais (YYYY-MM)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_expenses_delete` (~69 tokens)

Supprimer une note de frais

Supprime une note de frais de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_products_search` (~169 tokens)

Rechercher des produits

Recherche des produits dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des produits correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_products_get` (~130 tokens)

Détails d'un(e) produit

Récupère les informations détaillées d'un(e) produit par son ID. Optionnellement un onglet spécifique (information, technical, financial, actions, contracts, documents).

Args:
  \- id (string): Identifiant unique du/de la produit
  \- tab (string, optional): Onglet spécifique à récupérer

Returns: Données JSON complètes de l'entité.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité (numérique)
- `tab` (string): Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)

### `boond_products_create` (~106 tokens)

Créer un(e) produit

Crée un(e) nouvel(le) produit dans BoondManager.

Returns: Données du/de la produit créé(e) avec son ID.

Input parameters:

- `name` (string, required): Nom du produit
- `note` (string): Description du produit
- `reference` (string): Référence du produit
- `state` (integer): État du produit
- `taxRate` (number): Taux de TVA (%)
- `unitPrice` (number): Prix unitaire HT

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_products_update` (~121 tokens)

Modifier un(e) produit

Met à jour un(e) produit existant(e) dans BoondManager. Seuls les champs fournis sont modifiés.

Returns: Données mises à jour du/de la produit.

Input parameters:

- `id` (string, required): ID du produit à modifier
- `name` (string): Nom du produit
- `note` (string): Description
- `reference` (string): Référence
- `state` (integer): État
- `taxRate` (number): Taux de TVA (%)
- `unitPrice` (number): Prix unitaire HT

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_products_delete` (~88 tokens)

Supprimer un(e) produit

Supprime un(e) produit de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée à l'utilisateur avant la suppression.

Args:
  \- id (string): Identifiant de l'entité à supprimer

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_positionings_search` (~455 tokens)

Rechercher des positionnements

Recherche des positionnements (placement de candidats/ressources sur des projets/opportunités) dans BoondManager.

L'API ne propose pas de paramètres de filtre dédiés : le filtrage par entité liée passe par des références dans `keywords` (AO<id>=opportunité, CAND<id>=candidat, COMP<id>=ressource, CSOC<id>=société, CCON<id>=contact, PROD<id>=produit). Les filtres *Id ci-dessous sont convertis automatiquement en ces références.

Args:
  \- keywords (string, optional): Termes de recherche (références d'entités acceptées)
  \- candidateId, resourceId, opportunityId, companyId, contactId, productId (string, optional): Filtrer par entité liée (convertis en références keywords)
  \- page, pageSize: Pagination

Returns: Liste des positionnements correspondants.

Input parameters:

- `candidateId` (string): Filtrer par ID candidat (envoyé à l'API comme référence keywords CAND<id>)
- `companyId` (string): Filtrer par ID société (envoyé à l'API comme référence keywords CSOC<id>)
- `contactId` (string): Filtrer par ID contact (envoyé à l'API comme référence keywords CCON<id>)
- `keywords` (string): Mots-clés de recherche. L'API y accepte aussi des références d'entités (AO<id>, CAND<id>, COMP<id>...) — les filtres *Id ci-dessous sont convertis automatiquement en de telles références.
- `opportunityId` (string): Filtrer par ID opportunité (envoyé à l'API comme référence keywords AO<id>)
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `productId` (string): Filtrer par ID produit (envoyé à l'API comme référence keywords PROD<id>)
- `resourceId` (string): Filtrer par ID ressource (envoyé à l'API comme référence keywords COMP<id>)

### `boond_positionings_get` (~47 tokens)

Détails d'un positionnement

Récupère les informations détaillées d'un positionnement par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_positionings_create` (~138 tokens)

Créer un positionnement

Crée un nouveau positionnement pour placer un candidat ou une ressource sur un projet ou une opportunité.

Input parameters:

- `candidateId` (string): ID du candidat positionné
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `note` (string): Notes / commentaires
- `opportunityId` (string): ID de l'opportunité
- `projectId` (string): ID du projet
- `resourceId` (string): ID de la ressource positionnée
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (integer): État du positionnement

### `boond_positionings_update` (~301 tokens)

Modifier un positionnement

Met à jour un positionnement existant dans BoondManager (PUT /positionings/{id}). Seuls les champs fournis sont modifiés.

Args:
  \- id (string): ID du positionnement
  \- state (number, optional): État du positionnement (ID du dictionnaire setting.state.positioning)
  \- stateReasonTypeOf, stateReasonDetail (optional): Motif d'état (repliés en stateReason {typeOf, detail})
  \- startDate, endDate (string, optional): Dates au format YYYY-MM-DD (chaîne vide pour effacer)
  \- informationComments (string, optional): Commentaires (max 250 caractères)

Returns: Données mises à jour du positionnement.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD, ou chaîne vide pour effacer)
- `id` (string, required): ID du positionnement à modifier
- `informationComments` (string): Commentaires (max 250 caractères)
- `startDate` (string): Date de début (YYYY-MM-DD, ou chaîne vide pour effacer)
- `state` (integer): État du positionnement : ID numérique du dictionnaire setting.state.positioning
- `stateReasonDetail` (string): Motif d'état : détail libre (stateReason.detail)
- `stateReasonTypeOf` (integer): Motif d'état : ID numérique du type de motif (stateReason.typeOf)

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_positionings_delete` (~68 tokens)

Supprimer un positionnement

Supprime un positionnement de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_payments_create` (~233 tokens)

Creer un paiement

Cree un paiement fournisseur lie a un achat. L'API Boond /payments requiert une relation purchase.

Input parameters:

- `amount` (number): Montant HT du paiement, mappe vers amountExcludingTax
- `amountExcludingTax` (number): Montant HT du paiement
- `endDate` (string): Date de fin couverte (YYYY-MM-DD)
- `expectedDate` (string): Date de paiement attendu (YYYY-MM-DD)
- `note` (string): Note interne, mappee vers informationComments
- `paymentDate` (string): Date du paiement (YYYY-MM-DD), mappee vers date
- `paymentMethod` (integer): Methode de paiement
- `performedDate` (string): Date de paiement effectif (YYYY-MM-DD)
- `purchaseId` (string, required): ID de l'achat regle
- `reference` (string): Reference bancaire ou reglement
- `startDate` (string): Date de debut couverte (YYYY-MM-DD)
- `state` (integer): Etat du paiement / achat
- `taxRates` (array): Taux de taxes Boond

### `boond_payments_search` (~272 tokens)

Rechercher des paiements

Recherche des paiements / reglements dans BoondManager.

Args:
  \- keywords (string, optional): Termes de recherche. Utiliser ACH<id>, CSOC<id>, PRJ<id> selon la doc Boond pour filtrer par achat, societe ou projet.
  \- invoiceId, companyId (string, optional): Conserves pour compatibilite, transmis comme query params si fournis.
  \- startDate, endDate (string, optional): Periode (YYYY-MM-DD)
  \- page, pageSize: Pagination

Returns: Liste des paiements correspondants.

Input parameters:

- `companyId` (string): Filtrer par ID société
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `invoiceId` (string): Filtrer par ID facture
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `projectId` (string): Filtrer par ID projet
- `purchaseId` (string): Filtrer par ID achat
- `resourceId` (string): Filtrer par ID ressource
- `startDate` (string): Date de début (YYYY-MM-DD)

### `boond_payments_get` (~48 tokens)

Details d'un paiement

Recupere les informations detaillees d'un paiement / reglement par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_advantages_search` (~142 tokens)

Rechercher des avantages

Recherche des avantages (tickets restaurant, mutuelle, véhicule, primes...) dans BoondManager, avec filtre optionnel par ressource.

Args:
  \- keywords (string, optional): Termes de recherche
  \- resourceId (string, optional): Filtrer par ID ressource
  \- page, pageSize: Pagination

Returns: Liste des avantages correspondants.

Input parameters:

- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `resourceId` (string): Filtrer par ID ressource

### `boond_advantages_get` (~46 tokens)

Détails d'un avantage

Récupère les informations détaillées d'un avantage par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_application_dictionary` (~423 tokens)

Récupérer un dictionnaire BoondManager

Récupère un dictionnaire de référence BoondManager (états, types, pays, devises, langues, outils, expertises, ...).

L'API expose un seul endpoint `/application/dictionary` qui renvoie tout — le serveur le cache (TTL 1h, configurable via `BOOND_DICTIONARY_TTL_MS`) et extrait un sous-arbre par chemin dotté.

Args:
  \- dictionaryType (string): Chemin dans la réponse (relatif à `data`). Exemples :
    - "setting.state.{resource,candidate,contact,company,opportunity,project,invoice,order,positioning}" → états par entité
    - "setting.typeOf.{resource,contact,project}" → types par entité
    - "setting.action.{candidate,resource,opportunity,project,...}" → actions disponibles
    - "setting.tool" → outils / technos (Java, AWS...)
    - "setting.expertiseArea" → domaines d'expertise
    - "setting.experience" → niveaux d'expérience
    - "setting.languageSpoken" → langues parlées
    - "setting.activityArea" → secteurs d'activité
    - "setting.mobilityArea" → mobilités géographiques
    - "setting.currency" → devises
    - "setting.civility" → civilités
    - "country" → pays
    - "languages" → langues d'interface (fr, en, es)

Note : l'ancienne forme "states/resources" (slash) n'est pas valide — utilisez "setting.state.resource".

Retourne le sous-arbre (souvent un tableau `{id, value, ...}`) ou `isError: true` si le chemin est introuvable.

Input parameters:

- `dictionaryType` (string, required): Type de dictionnaire (ex: typeOf/actions, typeOf/absences, states/candidates, states/resources, states/opportunities, states/projects, states/invoices, countries, currencies, languages...)

### `boond_application_current_user` (~47 tokens)

Utilisateur courant BoondManager

Récupère les informations de l'utilisateur actuellement connecté à l'API BoondManager (profil, permissions, agence...).

Returns: Données JSON de l'utilisateur courant.

### `boond_contracts_get` (~46 tokens)

Détails d'un contrat

Récupère les informations détaillées d'un contrat par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_contracts_create` (~97 tokens)

Créer un contrat

Crée un nouveau contrat de travail dans BoondManager.

Input parameters:

- `endDate` (string): Date de fin (YYYY-MM-DD)
- `note` (string): Notes / commentaires
- `resourceId` (string): ID de la ressource associée
- `startDate` (string): Date de début (YYYY-MM-DD)
- `typeOf` (string): Type de contrat (CDI, CDD, freelance...)

### `boond_purchases_search` (~125 tokens)

Rechercher des achats/sous-traitance

Recherche des achats et sous-traitances dans BoondManager.

Args:
  \- keywords, companyId, projectId: Filtres
  \- page, pageSize: Pagination

Returns: Liste des achats correspondants.

Input parameters:

- `companyId` (string): Filtrer par ID société
- `keywords` (string): Mots-clés de recherche
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Résultats par page
- `projectId` (string): Filtrer par ID projet

### `boond_purchases_get` (~46 tokens)

Détails d'un achat/sous-traitance

Récupère les informations détaillées d'un achat par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_purchases_create` (~132 tokens)

Créer un achat/sous-traitance

Crée un nouvel achat ou sous-traitance dans BoondManager.

Input parameters:

- `companyId` (string): ID de la société fournisseur
- `contactId` (string): ID du contact fournisseur
- `endDate` (string): Date de fin (YYYY-MM-DD)
- `note` (string): Notes / commentaires
- `projectId` (string): ID du projet associé
- `startDate` (string): Date de début (YYYY-MM-DD)
- `state` (integer): État de l'achat
- `title` (string): Titre de l'achat/sous-traitance

### `boond_purchases_delete` (~67 tokens)

Supprimer un achat/sous-traitance

Supprime un achat de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_provider_invoices_create` (~230 tokens)

Creer une facture fournisseur

Cree une facture fournisseur Boond avec resource, providerCompany et providerContact.

Input parameters:

- `amountExcludingTax` (number): Montant HT
- `amountIncludingTax` (number): Montant TTC
- `companyId` (string): ID de la societe fournisseur, mappe vers providerCompany
- `contactId` (string): ID du contact fournisseur, mappe vers providerContact
- `currency` (number): Devise Boond
- `currencyAgency` (number): Devise agence
- `endDate` (string, required): Date de fin de periode (YYYY-MM-DD)
- `exchangeRate` (number): Taux de change
- `exchangeRateAgency` (number): Taux de change agence
- `invoiceDate` (string): Date de facture (YYYY-MM-DD)
- `reference` (string, required): Reference de la facture fournisseur
- `resourceId` (string, required): ID de la ressource portee par la facture fournisseur
- `startDate` (string, required): Date de debut de periode (YYYY-MM-DD)
- `state` (integer): Etat de la facture fournisseur

### `boond_provider_invoices_search` (~97 tokens)

Rechercher des factures fournisseur

Recherche des factures fournisseur dans BoondManager.

Input parameters:

- `companyId` (string): Filtrer par ID societe fournisseur
- `keywords` (string): Mots-cles de recherche
- `page` (integer): Numero de page (max: 100)
- `pageSize` (integer): Resultats par page
- `resourceId` (string): Filtrer par ID ressource via mot-cle COMP<id>

### `boond_provider_invoices_get` (~47 tokens)

Details d'une facture fournisseur

Recupere les informations detaillees d'une facture fournisseur par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_accounts_search` (~171 tokens)

Rechercher des comptes utilisateurs

Recherche des comptes utilisateurs dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des comptes utilisateurs correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_accounts_get` (~48 tokens)

Détails d'un(e) compte utilisateur

Récupère les informations détaillées d'un(e) compte utilisateur par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_agencies_search` (~170 tokens)

Rechercher des agences

Recherche des agences dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des agences correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_agencies_get` (~48 tokens)

Détails d'un(e) agence

Récupère les informations détaillées d'un(e) agence par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_business_units_search` (~172 tokens)

Rechercher des business units

Recherche des business units dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des business units correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_business_units_get` (~49 tokens)

Détails d'un(e) business unit

Récupère les informations détaillées d'un(e) business unit par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_roles_search` (~171 tokens)

Rechercher des rôles

Recherche des rôles dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des rôles correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_roles_get` (~47 tokens)

Détails d'un(e) rôle

Récupère les informations détaillées d'un(e) rôle par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_logs_search` (~100 tokens)

Rechercher des logs

Recherche des logs d'audit dans BoondManager (historique des actions utilisateurs).

Returns: Liste des logs correspondants.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_logs_get` (~47 tokens)

Détails d'un(e) log

Récupère les informations détaillées d'un(e) log par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_notifications_search` (~221 tokens)

Rechercher des notifications

Recherche des notifications dans BoondManager.

⚠️ Le paramètre `category` est REQUIS par l'API (singulier, pas de tableau).

Args:
  \- category (string, requis): 'activity' | 'thread' | 'corporate'
  \- state (string, optional): 'new' | 'read'
  \- parentType (string[], optional): types de modules parents (ex: 'contract', 'global')

Returns: Liste des notifications correspondantes.

Input parameters:

- `category` (string, required): Catégorie (requis): 'activity' (notifications d'activité), 'thread' (messages), 'corporate' (annonces).
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `parentType` (array): Types de modules parents (ex: 'contract', 'global', 'project'...).
- `state` (string): Filtrer par état de lecture.

### `boond_notifications_get` (~45 tokens)

Détails d'une notification

Récupère les informations détaillées d'une notification par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_threads_search` (~173 tokens)

Rechercher des fils de discussion

Recherche des fils de discussion dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des fils de discussion correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_threads_get` (~49 tokens)

Détails d'un(e) fil de discussion

Récupère les informations détaillées d'un(e) fil de discussion par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_todolists_search` (~175 tokens)

Rechercher des todolists

Recherche des todolists dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des todolists correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_todolists_get` (~50 tokens)

Détails d'un(e) todolist

Récupère les informations détaillées d'un(e) todolist par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_flags_search` (~173 tokens)

Rechercher des drapeaux

Recherche des drapeaux dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des drapeaux correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_flags_get` (~48 tokens)

Détails d'un(e) drapeau

Récupère les informations détaillées d'un(e) drapeau par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_calendars_search` (~173 tokens)

Rechercher des calendriers

Recherche des calendriers dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des calendriers correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_calendars_get` (~49 tokens)

Détails d'un(e) calendrier

Récupère les informations détaillées d'un(e) calendrier par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_webhooks_search` (~172 tokens)

Rechercher des webhooks

Recherche des webhooks dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des webhooks correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_webhooks_get` (~48 tokens)

Détails d'un(e) webhook

Récupère les informations détaillées d'un(e) webhook par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_validations_search` (~356 tokens)

Rechercher des validations

Recherche des validations en attente dans BoondManager (absences, notes de frais, feuilles de temps...).

⚠️ `startMonth` et `endMonth` (YYYY-MM) sont requis par l'API.

Args:
  \- startMonth (string, requis): YYYY-MM (ex: '2025-01')
  \- endMonth (string, requis): YYYY-MM
  \- documentTypes (string[], optional): 'absencesReport' | 'timesReport' | 'expensesReport'
  \- validationStates (string[], optional): 'waitingForValidation' | 'validated' | 'rejected'
  \- resourceTypes (number[], optional)
  \- keywords (string, optional): préfixes 'TPS', 'EXP', 'ABS', 'COMP'

Returns: Liste des validations correspondantes.

Input parameters:

- `documentTypes` (array): Types de documents à valider.
- `endMonth` (string, required): Mois de fin YYYY-MM. Requis.
- `keywords` (string): Mots-clés. Préfixes acceptés : 'TPS' (CRA), 'EXP' (frais), 'ABS' (absence), 'COMP' (ressource).
- `page` (integer): Numéro de page (max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `resourceTypes` (array): IDs de types de ressource (dictionnaire setting.typeOf.resource).
- `startMonth` (string, required): Mois de début YYYY-MM. Requis.
- `validationAlerts` (boolean): Filtrer sur les validations avec alertes.
- `validationStates` (array): États de validation.

### `boond_validations_get` (~46 tokens)

Détails d'une validation

Récupère les informations détaillées d'une validation par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_poles_search` (~172 tokens)

Rechercher des pôles

Recherche des pôles dans BoondManager par mots-clés avec pagination.

Args:
  \- keywords (string, optional): Termes de recherche (nom, email, compétences...)
  \- page (number): Numéro de page (défaut: 1)
  \- pageSize (number): Résultats par page (défaut: 20, max: 100)

Returns: Liste des pôles correspondants avec leur ID, nom et détails principaux.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

Output parameters:

- `count` (number): Nombre d'éléments retournés sur cette page
- `items` (array)
- `total` (number): Nombre total de résultats côté BoondManager

### `boond_poles_get` (~49 tokens)

Détails d'un(e) pôle

Récupère les informations détaillées d'un(e) pôle par son ID.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_reporting_companies` (~744 tokens)

Reporting sociétés

Reporting des sociétés (CA, marge, activité...).
⚠️ `startDate` + `endDate` (YYYY-MM-DD) sont REQUIS par l'API.

Filtres clés : périmètre (perimeterDynamic/perimeterManagers/perimeterAgencies...), période (period, periodDynamic), companiesStates, companies, maxCompanies, showPercentage.
Les états/types sont des IDs entiers issus de boond_application_dictionary. Sans filtre de périmètre, le reporting porte sur tout le périmètre autorisé.

Returns: Données de reporting.

Input parameters:

- `companies` (array): Filtrer sur ces IDs de sociétés.
- `companiesStates` (array): IDs d'états de sociétés (dictionnaire setting.state.company).
- `endDate` (string, required): Date de fin (YYYY-MM-DD). Requis par l'API.
- `keywords` (string): Mots-clés.
- `maxCompanies` (integer): Nombre de sociétés par page (1-10, défaut 1). Le nombre de résultats = sociétés × indicateurs.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `periodDynamic` (string): Période dynamique relative à aujourd'hui (avec period='dynamicPeriod') : today, thisWeek, thisMonth, thisTrimester, thisSemester, thisYear, thisFiscalYear, yesterday, lastWeek, lastMonth, lastTrimest…
- `periodDynamicParameters` (string): Paramètres de la période personnalisée (utilisé avec periodDynamic=lastCustomPeriod/nextCustomPeriod).
- `scorecards` (array): IDs des scorecards (indicateurs) à retourner.
- `showPercentage` (boolean): Afficher les valeurs en pourcentage plutôt qu'en valeur réelle.
- `startDate` (string, required): Date de début (YYYY-MM-DD). Requis par l'API.
- `useCache` (string): Cache de reporting : 'withCache' (valeurs mises en cache) ou 'withoutCache' (recalcul, défaut).

### `boond_reporting_projects` (~753 tokens)

Reporting projets

Reporting des projets (CA, marge, rentabilité...).

Filtres clés : périmètre (perimeterDynamic/perimeterManagers/perimeterAgencies...), période (period, periodDynamic), projectTypes, projectStates, resources, projects, contacts, companies, maxProjects.
Les états/types sont des IDs entiers issus de boond_application_dictionary. Sans filtre de périmètre, le reporting porte sur tout le périmètre autorisé.

Returns: Données de reporting.

Input parameters:

- `companies` (array): Filtrer sur ces IDs de sociétés.
- `contacts` (array): Filtrer sur ces IDs de contacts.
- `endDate` (string): Date de fin (YYYY-MM-DD).
- `keywords` (string): Mots-clés.
- `maxProjects` (integer): Nombre de projets par page (1-10, défaut 1). Le nombre de résultats = projets × indicateurs.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `periodDynamic` (string): Période dynamique relative à aujourd'hui (avec period='dynamicPeriod') : today, thisWeek, thisMonth, thisTrimester, thisSemester, thisYear, thisFiscalYear, yesterday, lastWeek, lastMonth, lastTrimest…
- `periodDynamicParameters` (string): Paramètres de la période personnalisée (utilisé avec periodDynamic=lastCustomPeriod/nextCustomPeriod).
- `projectStates` (array): IDs d'états de projets (dictionnaire setting.state.project).
- `projectTypes` (array): IDs de types de projets (dictionnaire setting.typeOf.project).
- `projects` (array): Filtrer sur ces IDs de projets.
- `resources` (array): Filtrer sur ces IDs de ressources.
- `scorecards` (array): IDs des scorecards (indicateurs) à retourner.
- `startDate` (string): Date de début (YYYY-MM-DD).
- `useCache` (string): Cache de reporting : 'withCache' (valeurs mises en cache) ou 'withoutCache' (recalcul, défaut).

### `boond_reporting_resources` (~859 tokens)

Reporting ressources

Reporting des ressources (taux d'occupation, CA, productivité...).

Filtres clés : périmètre (perimeterDynamic/perimeterManagers/perimeterAgencies...), période (period, periodDynamic), reportingCategory, resourceTypes, resourceStates, period, resources/projects/contacts/companies, maxResources.
Les états/types sont des IDs entiers issus de boond_application_dictionary. Sans filtre de périmètre, le reporting porte sur tout le périmètre autorisé.

Returns: Données de reporting.

Input parameters:

- `companies` (array): Filtrer sur ces IDs de sociétés.
- `contacts` (array): Filtrer sur ces IDs de contacts.
- `endDate` (string): Date de fin (YYYY-MM-DD).
- `keywords` (string): Mots-clés.
- `maxResources` (integer): Nombre de ressources par page (1-10, défaut 1). Le nombre de résultats = ressources × indicateurs.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Découpage temporel : 'onePeriod' (unique, entre startDate/endDate), 'dynamicPeriod' (selon periodDynamic), 'monthly' (6 mois depuis startDate), 'quarterly', 'semiAnnual', 'annual'. La synthèse accept…
- `periodDynamic` (string): Période dynamique relative à aujourd'hui (avec period='dynamicPeriod') : today, thisWeek, thisMonth, thisTrimester, thisSemester, thisYear, thisFiscalYear, yesterday, lastWeek, lastMonth, lastTrimest…
- `periodDynamicParameters` (string): Paramètres de la période personnalisée (utilisé avec periodDynamic=lastCustomPeriod/nextCustomPeriod).
- `projects` (array): Filtrer sur ces IDs de projets.
- `reportingCategory` (string): Vue : 'showByResources' (défaut, sans returnedPeriod) ou 'showByPeriods' (returnedPeriod requis).
- `resourceStates` (array): IDs d'états de ressources (dictionnaire setting.state.resource).
- `resourceTypes` (array): IDs de types de ressources (dictionnaire setting.typeOf.resource).
- `resources` (array): Filtrer sur ces IDs de ressources.
- `scorecards` (array): IDs des scorecards (indicateurs) à retourner.
- `startDate` (string): Date de début (YYYY-MM-DD).
- `useCache` (string): Cache de reporting : 'withCache' (valeurs mises en cache) ou 'withoutCache' (recalcul, défaut).

### `boond_reporting_synthesis` (~905 tokens)

Reporting synthèse

Reporting de synthèse globale (commercial, RH, recrutement, facturation...).
⚠️ `startDate` + `endDate` (YYYY-MM-DD) sont REQUIS par l'API.

Filtres clés : périmètre (perimeterDynamic/perimeterManagers/perimeterAgencies...), période (period, periodDynamic), reportingType, reportingCategory, period, resources/projects/contacts/companies, compareIndicators.
Les états/types sont des IDs entiers issus de boond_application_dictionary. Sans filtre de périmètre, le reporting porte sur tout le périmètre autorisé.

Returns: Données de reporting.

Input parameters:

- `companies` (array): Filtrer sur ces IDs de sociétés.
- `compareIndicators` (array): Indicateurs à comparer entre deux périodes.
- `compareIndicatorsPeriod` (string): Période de comparaison des indicateurs (défaut 'period').
- `contacts` (array): Filtrer sur ces IDs de contacts.
- `endDate` (string): Date de fin (YYYY-MM-DD).
- `keywords` (string): Mots-clés.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `period` (string): Découpage temporel : 'onePeriod' (unique, entre startDate/endDate), 'dynamicPeriod' (selon periodDynamic), 'monthly' (6 mois depuis startDate), 'quarterly', 'semiAnnual', 'annual'. La synthèse accept…
- `periodDynamic` (string): Période dynamique relative à aujourd'hui (avec period='dynamicPeriod') : today, thisWeek, thisMonth, thisTrimester, thisSemester, thisYear, thisFiscalYear, yesterday, lastWeek, lastMonth, lastTrimest…
- `periodDynamicParameters` (string): Paramètres de la période personnalisée (utilisé avec periodDynamic=lastCustomPeriod/nextCustomPeriod).
- `projects` (array): Filtrer sur ces IDs de projets.
- `reportingCategory` (string): Catégorie de synthèse (défaut 'commercialSynthesis') : commercial, RH, recrutement, activité & frais, facturation, ou globale. `resources` n'est pas disponible hors d'une vue par ressources.
- `reportingType` (string): Type de données : 'realData' (défaut, réel) ou 'targetsData' (objectifs).
- `resources` (array): Filtrer sur ces IDs de ressources.
- `scorecards` (array): IDs des scorecards (indicateurs) à retourner.
- `startDate` (string, required): Date de début (YYYY-MM-DD). Requis par l'API.
- `useCache` (string): Cache de reporting : 'withCache' (valeurs mises en cache) ou 'withoutCache' (recalcul, défaut).

### `boond_reporting_production_plans` (~826 tokens)

Reporting plans de production

Reporting des plans de production (disponibilités, positionnements...).
⚠️ `startDate` + `endDate` (YYYY-MM-DD) sont REQUIS par l'API.

Filtres clés : périmètre (perimeterDynamic/perimeterManagers/perimeterAgencies...), période (period, periodDynamic), resourceTypes, resourceStates, positioningStates, positioningPeriod, showContracts, projects/contacts/companies.
Les états/types sont des IDs entiers issus de boond_application_dictionary. Sans filtre de périmètre, le reporting porte sur tout le périmètre autorisé.

Returns: Données de reporting.

Input parameters:

- `companies` (array): Filtrer sur ces IDs de sociétés.
- `contacts` (array): Filtrer sur ces IDs de contacts.
- `endDate` (string, required): Date de fin (YYYY-MM-DD). Requis par l'API.
- `keywords` (string): Mots-clés.
- `narrowPerimeter` (boolean): Si true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)
- `perimeterAgencies` (array): IDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
- `perimeterBusinessUnits` (array): IDs de business units. Conserve les entités dont le responsable appartient à ces BU.
- `perimeterDynamic` (array): Périmètre dynamique relatif à l'utilisateur courant (raccourci sans avoir à connaître son propre ID). Valeurs : 'data' (mes propres données), 'managers' (mon équipe / mes N-1), 'agencies' (mes agence…
- `perimeterManagers` (array): IDs des managers (ressources). Conserve les entités dont le responsable est l'un de ces managers. Pour 'mon équipe / N-1 d'une personne X', passer [X_id]. Obtenir son propre ID via boond_application_…
- `perimeterPoles` (array): IDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
- `periodDynamic` (string): Période dynamique relative à aujourd'hui (avec period='dynamicPeriod') : today, thisWeek, thisMonth, thisTrimester, thisSemester, thisYear, thisFiscalYear, yesterday, lastWeek, lastMonth, lastTrimest…
- `periodDynamicParameters` (string): Paramètres de la période personnalisée (utilisé avec periodDynamic=lastCustomPeriod/nextCustomPeriod).
- `positioningPeriod` (string): 'created' (positionnements créés entre les dates, défaut) ou 'running' (en cours sur la période).
- `positioningStates` (array): IDs d'états de positionnement (dictionnaire setting.state.positioning).
- `projects` (array): Filtrer sur ces IDs de projets.
- `resourceStates` (array): IDs d'états de ressources (dictionnaire setting.state.resource).
- `resourceTypes` (array): IDs de types de ressources (dictionnaire setting.typeOf.resource).
- `scorecards` (array): IDs des scorecards (indicateurs) à retourner.
- `showContracts` (boolean): Afficher les contrats associés.
- `startDate` (string, required): Date de début (YYYY-MM-DD). Requis par l'API.
- `useCache` (string): Cache de reporting : 'withCache' (valeurs mises en cache) ou 'withoutCache' (recalcul, défaut).

### `boond_planning_absences_search` (~104 tokens)

Rechercher le planning des absences

Recherche le planning des absences dans BoondManager (vue globale des absences prévues).

Returns: Planning des absences.

Input parameters:

- `keywords` (string): Mots-clés de recherche (nom, email, compétences...)
- `page` (integer): Numéro de page (défaut: 1, max: 100)
- `pageSize` (integer): Nombre de résultats par page (max: 500, défaut: 30)

### `boond_documents_get` (~175 tokens)

Télécharger un document

Télécharge le contenu d'un document BoondManager (CV de candidat/ressource, justificatif, contrat, facture...) par son ID.

Où trouver les IDs de documents : dans les onglets des entités — ex. boond_candidates_information expose les relations 'resumes' (CV) et 'files' (dossier administratif).

Le contenu est retourné en ressource MCP embarquée (base64 pour les binaires type PDF/DOCX, texte brut pour les fichiers texte). Taille max: 5 Mo — à n'utiliser que lorsque le contenu du fichier est réellement nécessaire (un CV en base64 occupe beaucoup de contexte).

Args:
  \- id (string): Identifiant du document

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

### `boond_documents_create` (~237 tokens)

Téléverser un document

Attache un document à une entité BoondManager à partir d'une URL (l'API BoondManager télécharge elle-même le fichier — aucun fichier local n'est lu).

Cas d'usage typiques : attacher un CV à un candidat (parentType=candidateResume, parsing=true pour lancer l'analyse IA Boond), joindre un justificatif à une note de frais (expensesReport), un document à un projet/une société...

Returns: Métadonnées du document créé (ID).

Input parameters:

- `fileUrl` (string, required): URL (https) du fichier à téléverser — BoondManager télécharge le fichier depuis cette URL.
- `parentId` (integer, required): ID de l'entité parente
- `parentType` (string, required): Type d'entité parente. Notables : 'candidateResume' (CV de candidat), 'resourceResume' (CV de ressource), 'candidate'/'resource' (dossier administratif), 'company', 'project', 'invoice'...
- `parsing` (boolean): Lancer le parsing IA du CV après upload (uniquement pour parentType=candidateResume).

Output parameters:

- `id` (string): Identifiant de l'entité créée/modifiée
- `type` (string)

### `boond_documents_delete` (~66 tokens)

Supprimer un document

Supprime un document de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.

Input parameters:

- `id` (string, required): Identifiant unique de l'entité BoondManager (numérique)

Output parameters:

- `deleted` (boolean)
- `id` (string)
- `reason` (string): Présent quand la suppression n'a pas eu lieu (ex: refus utilisateur)

### `boond_workflow_synthese_equipe` (~201 tokens)

Synthèse d'une équipe

Produit un état d'équipe : qui est sur quoi, qui est absent, qui est disponible. Si manager_id est omis, utilise l'utilisateur courant comme manager. Équivalent en outil du prompt MCP `synthese_equipe` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `manager_id` (string): Manager ciblé. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, l'outil `boond_application_current_user` est appelé pour…
- `periode` (string): Période d'analyse libre (ex: 'cette semaine', 'avril 2026'). Défaut: mois en cours.

### `boond_workflow_pipeline_commercial` (~189 tokens)

Pipeline commercial sur une période

Analyse les opportunités commerciales avec closing prévu dans la période donnée : répartition par état, CA pondéré, top opportunités. Équivalent en outil du prompt MCP `pipeline_commercial` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `date_debut` (string, required): Début de période (YYYY-MM-DD).
- `date_fin` (string, required): Fin de période (YYYY-MM-DD).
- `manager_id` (string): Commercial ciblé. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, scope = équipe de l'utilisateur courant via `perimete…

### `boond_workflow_factures_a_relancer` (~149 tokens)

Factures impayées à relancer

Liste les factures impayées avec date d'échéance dépassée, regroupées par société. Optionnellement filtrable sur une société spécifique. Équivalent en outil du prompt MCP `factures_a_relancer` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `society_id` (string): Société ciblée pour la relance. Accepte soit l'ID numérique, soit le nom de la société (résolution auto via `boond_companies_search`).

### `boond_workflow_candidats_pour_opportunite` (~148 tokens)

Candidats correspondant à une opportunité

À partir d'une opportunité (ses outils, expertise, mobilité), trouve les candidats actifs qui matchent. Équivalent en outil du prompt MCP `candidats_pour_opportunite` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `opportunity_id` (string, required): Opportunité à pourvoir. Accepte soit l'ID numérique, soit l'intitulé de l'opportunité (résolution auto via `boond_opportunities_search`).

### `boond_workflow_fiche_consultant` (~141 tokens)

Fiche complète d'un collaborateur

Vue 360° d'une ressource : info, profil technique, positionnements, absences, CRA récents. Équivalent en outil du prompt MCP `fiche_consultant` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `resource_id` (string, required): Ressource ciblée. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`).

### `boond_workflow_staffing_disponible` (~257 tokens)

Consultants disponibles pour un staffing

Identifie les ressources internes disponibles pour un staffing sur une fenêtre donnée, avec filtres optionnels par compétences (texte libre) et périmètre. Trie par date de disponibilité croissante et propose les profils prioritaires à activer. Équivalent en outil du prompt MCP `staffing_disponible` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `competences` (string): Compétences recherchées en texte libre (ex: 'Java Spring AWS'). Le modèle les mappera vers `tools` via le dictionnaire.
- `end_date` (string, required): Fin de fenêtre de staffing (YYYY-MM-DD).
- `manager_id` (string): Manager pour restreindre à son équipe. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, scope = mon équipe via `perimete…
- `start_date` (string, required): Début de fenêtre de staffing (YYYY-MM-DD).

### `boond_workflow_fin_de_mission` (~203 tokens)

Anticipation des fins de mission

Liste les ressources dont la mission se termine dans les prochains jours, pour anticiper le repositionnement. Met en évidence les fins imminentes sans relais identifié. Équivalent en outil du prompt MCP `fin_de_mission` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `horizon_jours` (string): Nombre de jours à anticiper (défaut: 60). Ex: '30' pour ne voir que les fins très proches.
- `manager_id` (string): Manager pour restreindre à son équipe. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, scope = mon équipe via `perimete…

### `boond_workflow_cartographie_competences` (~254 tokens)

Cartographie des compétences d'un périmètre

Produit une cartographie des compétences techniques d'un périmètre (équipe, agence, …) : top compétences, compétences rares (risque bus-factor) et compétences manquantes vs opportunités ouvertes. Équivalent en outil du prompt MCP `cartographie_competences` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `agency_id` (string): Agence pour cartographier toute une agence (alternatif à `manager_id`). Accepte soit l'ID numérique, soit le nom de l'agence (résolution auto via `boond_agencies_search`).
- `manager_id` (string): Manager pour cibler son équipe. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, scope = mon équipe via `perimeterDynami…
- `top_n` (string): Nombre de compétences à mettre en avant dans le top (défaut: 20).

### `boond_workflow_cvs_a_mettre_a_jour` (~215 tokens)

Audit fraîcheur des CV / dossiers techniques

Identifie les ressources dont le CV ou le dossier technique est obsolète, incomplet, ou manquant. Priorise celles bientôt sur le marché (en intercontrat ou disponibles à court terme). Équivalent en outil du prompt MCP `cvs_a_mettre_a_jour` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `manager_id` (string): Manager pour cibler son équipe. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Si absent, scope = mon équipe via `perimeterDynami…
- `seuil_mois` (string): Un dossier technique non touché depuis plus de N mois est considéré obsolète (défaut: 12).

### `boond_workflow_recherche_profil_competences` (~327 tokens)

Recherche multi-source d'un profil par compétences

Recherche un profil correspondant à un mix de compétences libres, en croisant ressources internes et candidats. Sortie classée par adéquation. Utile en amont d'un staffing ou d'une opportunité non encore qualifiée. Équivalent en outil du prompt MCP `recherche_profil_competences` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `competences` (string, required): Compétences recherchées en texte libre (ex: 'Java Spring AWS Kubernetes', '.NET Azure DevOps').
- `dispo_avant` (string): Disponibilité requise au plus tard à cette date (YYYY-MM-DD). Si fourni, applique `period: 'available'` + `endDate`.
- `experience_min` (string): Niveau d'expérience minimum en texte libre (ex: '5 ans', 'senior'). Le modèle le mappera vers `experiences` via le dictionnaire.
- `inclure_candidats` (string): 'oui' (défaut) pour inclure aussi les candidats actifs ; 'non' pour ne chercher que dans les ressources internes.
- `manager_id` (string): Manager pour restreindre le scope ressources internes. Accepte soit l'ID numérique, soit « Prénom Nom » (le serveur résoudra automatiquement via `boond_resources_search`). Sinon scope ouvert (toute l…

### `boond_workflow_recap_hebdo` (~137 tokens)

Récap hebdomadaire (moi + mon équipe)

Compile en une vue ce qui s'est passé / va se passer cette semaine pour moi et mon équipe : opportunités, projets, absences, CRA. Équivalent en outil du prompt MCP `recap_hebdo` (utile pour les clients qui ne gèrent pas correctement les prompts MCP, ex: claude.ai). Retourne un runbook texte que le modèle doit ensuite exécuter en appelant les outils Boond référencés.

Input parameters:

- `semaine` (string): Semaine ciblée (ex: 'cette semaine', 'la semaine prochaine'). Défaut: cette semaine.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server#diagnostics

## Score history

- 2026-08-03: 75
- 2026-08-02: 75
- 2026-08-01: 25
- 2026-07-31: 5
- 2026-07-30: 51
- 2026-07-28: 51
- 2026-07-27: 51

## Links

- npm package: https://www.npmjs.com/package/boondmanager-mcp-server
- Socket report: https://socket.dev/npm/package/boondmanager-mcp-server
- Repository: https://github.com/fauguste/boondmanager-mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/fauguste-boondmanager-mcp-server/boondmanager-mcp-server
