Skip to main content
Glama
silamir

boondmanager-mcp-server

by silamir

Rechercher des contrats de travail

boond_contracts_search
Read-onlyIdempotent

Search work contracts (permanent, fixed-term, freelance) across a resource perimeter. Filter by contract type and date period to identify contracts ending, starting, or probation periods expiring.

Instructions

Recherche les contrats de travail (CDI, CDD, freelance…) des ressources d'un périmètre, avec filtres de type et de période (fins de contrat, périodes d'essai qui expirent).

Quand : pour « contrats qui se terminent ce mois », « périodes d'essai qui expirent », « CDD à renouveler », ou les contrats d'une ressource. Plutôt que : boond_resources_contracts pour les contrats d'une seule ressource connue, boond_contracts_get pour la fiche complète d'un contrat.

  • Recherche composée : BoondManager n'a pas de liste de contrats (GET /contracts n'existe pas). L'outil sélectionne les ressources (keywords, perimeter*, resourceStates ; page / pageSize portent sur les ressources parcourues) puis lit l'onglet administratif de chacune : une requête par ressource — préférer des pages modestes —, progression notifiée.

  • contractTypes et period + startDate / endDate sont appliqués côté serveur sur les contrats lus ; un contrat sans endDate compte comme en cours.

  • resourceId court-circuite la sélection : seuls les contrats de cette ressource sont lus.

Returns : une ligne par contrat (ressource, type, dates, fin de période d'essai, motif de fin) et structuredContent.items[] ; total = nombre de contrats retenus.

  • fields : projection côté MCP, jamais transmise à l'API — remplace le résumé par les seuls attributs listés (noms inconnus ignorés). À utiliser sur les grosses pages.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoNuméro de page (défaut: 1, max: 100)
fieldsNoProjection : attributs à afficher par résultat (ex: ['title','updateDate']). Absent = résumé standard. Noms inconnus ignorés.
periodNoFenêtre `startDate` / `endDate` appliquée côté serveur : running (contrat en cours sur la fenêtre), ending (fin de contrat dans la fenêtre), starting (début dans la fenêtre), probationEnding (fin de période d'essai — `probationEndDate` ou `renewalProbationEndDate` — dans la fenêtre).
endDateNoDate de fin (YYYY-MM-DD), à utiliser avec `period`.
keywordsNoMots-clés de la recherche de ressources (nom, prénom…).
pageSizeNoNombre de résultats par page (max: 500, défaut: 30)
startDateNoDate de début (YYYY-MM-DD), à utiliser avec `period`.
resourceIdNoID d'une ressource : ne lit que ses contrats (aucune recherche de ressources).
contractTypesNoIDs de types de contrat à retenir — `boond://dictionary/typeOf/contracts` (CDI, CDD…).
resourceTypesNoIDs de types de ressource — `boond://dictionary/typeOf/resources`.
perimeterPolesNoIDs de pôles. Conserve les entités dont le responsable appartient à ces pôles.
resourceStatesNoIDs d'états de ressource à parcourir — `boond://dictionary/states/resources`.
narrowPerimeterNoSi true, jointure ET entre les filtres `perimeter*` (au lieu de OU par défaut).
perimeterDynamicNoPé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 agences), 'poles' (mes pôles), 'businessUnits' (mes BU). Combinable.
perimeterAgenciesNoIDs d'agences. Conserve les entités dont le responsable appartient à ces agences.
perimeterManagersNoIDs 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_current_user.
perimeterBusinessUnitsNoIDs de business units. Conserve les entités dont le responsable appartient à ces BU.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYesNombre d'éléments retournés sur cette page
itemsYes
totalNoNombre total de résultats côté BoondManager

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.17.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even with read-only/idempotent annotations, the description reveals important non-obvious behavior: BoondManager has no GET /contracts endpoint, the search is composite (one API request per selected resource), page/pageSize apply to resources, filters are applied server-side, and fields is a local projection never sent to the API. None of this contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every section earns its place, and it is front-loaded: purpose, usage, alternatives, then behavioral details, return shape, and fields. Bullets and short headings keep the non-obvious compound-search mechanics scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 17-parameter composite search tool, the description covers the resource-selection pipeline, server-side vs MCP-side filtering, output shape, progress notification, and the shortcut path via resourceId. An output schema exists and the return description is enough; the only tiny omission (resourceTypes not listed in the resource-selection parenthesis) is already covered by the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description goes beyond it by explaining relationships: page/pageSize count resources traversed, contractTypes/period/startDate/endDate act on the contracts read, resourceId short-circuits the selection, and fields is a local projection. It still relies on the schema for individual parameter syntax, hence 4 rather than 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence names a specific verb and resource ('Recherche les contrats de travail ... des ressources d'un périmètre') and enumerates filterable dimensions. It then explicitly distances itself from boond_resources_contracts and boond_contracts_get, so an agent can select it from the large sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Quand' paragraph gives concrete natural-language triggers (contracts ending this month, probation expiring, CDD to renew), and the 'Plutôt que' sentence names the two alternatives and their narrower scopes. This is explicit when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools