boondmanager-mcp-server 2.14.1 → 2.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/constants.d.ts +1 -0
  2. package/dist/constants.d.ts.map +1 -1
  3. package/dist/constants.js +33 -0
  4. package/dist/constants.js.map +1 -1
  5. package/dist/tools/absences.d.ts.map +1 -1
  6. package/dist/tools/absences.js +31 -4
  7. package/dist/tools/absences.js.map +1 -1
  8. package/dist/tools/actions.d.ts.map +1 -1
  9. package/dist/tools/actions.js +10 -2
  10. package/dist/tools/actions.js.map +1 -1
  11. package/dist/tools/advantages.d.ts.map +1 -1
  12. package/dist/tools/advantages.js +5 -1
  13. package/dist/tools/advantages.js.map +1 -1
  14. package/dist/tools/application.js +1 -1
  15. package/dist/tools/application.js.map +1 -1
  16. package/dist/tools/candidates.d.ts.map +1 -1
  17. package/dist/tools/candidates.js +18 -53
  18. package/dist/tools/candidates.js.map +1 -1
  19. package/dist/tools/companies.d.ts.map +1 -1
  20. package/dist/tools/companies.js +26 -78
  21. package/dist/tools/companies.js.map +1 -1
  22. package/dist/tools/contacts.d.ts.map +1 -1
  23. package/dist/tools/contacts.js +18 -59
  24. package/dist/tools/contacts.js.map +1 -1
  25. package/dist/tools/contracts.d.ts.map +1 -1
  26. package/dist/tools/contracts.js +23 -6
  27. package/dist/tools/contracts.js.map +1 -1
  28. package/dist/tools/crud-factory.d.ts +3 -0
  29. package/dist/tools/crud-factory.d.ts.map +1 -1
  30. package/dist/tools/crud-factory.js +11 -32
  31. package/dist/tools/crud-factory.js.map +1 -1
  32. package/dist/tools/deliveries.d.ts.map +1 -1
  33. package/dist/tools/deliveries.js +16 -2
  34. package/dist/tools/deliveries.js.map +1 -1
  35. package/dist/tools/description-builders.d.ts +135 -0
  36. package/dist/tools/description-builders.d.ts.map +1 -0
  37. package/dist/tools/description-builders.js +152 -0
  38. package/dist/tools/description-builders.js.map +1 -0
  39. package/dist/tools/documents.d.ts.map +1 -1
  40. package/dist/tools/documents.js +7 -3
  41. package/dist/tools/documents.js.map +1 -1
  42. package/dist/tools/expenses.d.ts.map +1 -1
  43. package/dist/tools/expenses.js +6 -1
  44. package/dist/tools/expenses.js.map +1 -1
  45. package/dist/tools/invoices.d.ts.map +1 -1
  46. package/dist/tools/invoices.js +9 -2
  47. package/dist/tools/invoices.js.map +1 -1
  48. package/dist/tools/notifications.d.ts.map +1 -1
  49. package/dist/tools/notifications.js +5 -1
  50. package/dist/tools/notifications.js.map +1 -1
  51. package/dist/tools/opportunities.d.ts.map +1 -1
  52. package/dist/tools/opportunities.js +20 -55
  53. package/dist/tools/opportunities.js.map +1 -1
  54. package/dist/tools/orders.d.ts.map +1 -1
  55. package/dist/tools/orders.js +6 -1
  56. package/dist/tools/orders.js.map +1 -1
  57. package/dist/tools/parameter-disclosure.d.ts +5 -0
  58. package/dist/tools/parameter-disclosure.d.ts.map +1 -0
  59. package/dist/tools/parameter-disclosure.js +71 -0
  60. package/dist/tools/parameter-disclosure.js.map +1 -0
  61. package/dist/tools/payments.d.ts.map +1 -1
  62. package/dist/tools/payments.js +15 -2
  63. package/dist/tools/payments.js.map +1 -1
  64. package/dist/tools/positionings.d.ts.map +1 -1
  65. package/dist/tools/positionings.js +20 -3
  66. package/dist/tools/positionings.js.map +1 -1
  67. package/dist/tools/projects.d.ts.map +1 -1
  68. package/dist/tools/projects.js +24 -67
  69. package/dist/tools/projects.js.map +1 -1
  70. package/dist/tools/provider-invoices.d.ts.map +1 -1
  71. package/dist/tools/provider-invoices.js +25 -3
  72. package/dist/tools/provider-invoices.js.map +1 -1
  73. package/dist/tools/purchases.d.ts.map +1 -1
  74. package/dist/tools/purchases.js +20 -3
  75. package/dist/tools/purchases.js.map +1 -1
  76. package/dist/tools/registration-decorators.d.ts +6 -1
  77. package/dist/tools/registration-decorators.d.ts.map +1 -1
  78. package/dist/tools/registration-decorators.js +8 -1
  79. package/dist/tools/registration-decorators.js.map +1 -1
  80. package/dist/tools/reporting.d.ts.map +1 -1
  81. package/dist/tools/reporting.js +25 -7
  82. package/dist/tools/reporting.js.map +1 -1
  83. package/dist/tools/resources.d.ts.map +1 -1
  84. package/dist/tools/resources.js +44 -87
  85. package/dist/tools/resources.js.map +1 -1
  86. package/dist/tools/tab-tools.d.ts +23 -0
  87. package/dist/tools/tab-tools.d.ts.map +1 -0
  88. package/dist/tools/tab-tools.js +48 -0
  89. package/dist/tools/tab-tools.js.map +1 -0
  90. package/dist/tools/timesheets.d.ts.map +1 -1
  91. package/dist/tools/timesheets.js +11 -1
  92. package/dist/tools/timesheets.js.map +1 -1
  93. package/dist/tools/usage-guidance.d.ts +45 -0
  94. package/dist/tools/usage-guidance.d.ts.map +1 -0
  95. package/dist/tools/usage-guidance.js +235 -0
  96. package/dist/tools/usage-guidance.js.map +1 -0
  97. package/dist/tools/validations.d.ts.map +1 -1
  98. package/dist/tools/validations.js +5 -1
  99. package/dist/tools/validations.js.map +1 -1
  100. package/dist/tools/workflows.d.ts.map +1 -1
  101. package/dist/tools/workflows.js +13 -4
  102. package/dist/tools/workflows.js.map +1 -1
  103. package/manifest.json +1 -1
  104. package/package.json +1 -1
@@ -4,6 +4,7 @@ export declare const DEFAULT_PAGE_SIZE = 30;
4
4
  export declare const MAX_PAGE_SIZE = 500;
5
5
  export declare const ROUTE_MAX_RESULTS: Record<string, number>;
6
6
  export declare const DEFAULT_MAX_RESULTS = 500;
7
+ export declare const TOOLS_IGNORING_PAGINATION: ReadonlySet<string>;
7
8
  export declare const MAX_SEARCH_PAGE = 100;
8
9
  export declare const MAX_DOCUMENT_BYTES: number;
9
10
  export declare const MAX_RESOURCE_BYTES: number;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,oCAAoC,CAAC;AAClE,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,aAAa,MAAM,CAAC;AAUjC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEpD,CAAC;AACF,eAAO,MAAM,mBAAmB,MAAgB,CAAC;AAKjD,eAAO,MAAM,eAAe,MAAM,CAAC;AAMnC,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AASlD,eAAO,MAAM,kBAAkB,QAAa,CAAC;AAK7C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAK9C,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAM/C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CZ,CAAC;AAOX,eAAO,MAAM,kBAAkB,+fAuCrB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAG7D,eAAO,MAAM,WAAW;;;;;;;;;CAsCd,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,oCAAoC,CAAC;AAClE,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,aAAa,MAAM,CAAC;AAUjC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEpD,CAAC;AACF,eAAO,MAAM,mBAAmB,MAAgB,CAAC;AA6BjD,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAKxD,CAAC;AAKH,eAAO,MAAM,eAAe,MAAM,CAAC;AAMnC,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AASlD,eAAO,MAAM,kBAAkB,QAAa,CAAC;AAK7C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAK9C,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAM/C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CZ,CAAC;AAOX,eAAO,MAAM,kBAAkB,+fAuCrB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAG7D,eAAO,MAAM,WAAW;;;;;;;;;CAsCd,CAAC"}
package/dist/constants.js CHANGED
@@ -15,6 +15,39 @@ export const ROUTE_MAX_RESULTS = {
15
15
  "/actions": 100,
16
16
  };
17
17
  export const DEFAULT_MAX_RESULTS = MAX_PAGE_SIZE;
18
+ // Search tools whose endpoint *ignores* `maxResults` and always returns its
19
+ // whole table. Verified against the live API on 2026-09-09 by requesting
20
+ // `maxResults=2` directly:
21
+ //
22
+ // /poles HTTP 200, 73 rows (meta.totals.rows 73)
23
+ // /agencies HTTP 200, 11 rows (meta.totals.rows 11)
24
+ // /calendars HTTP 200, 249 rows (no meta.totals.rows)
25
+ // /webhooks HTTP 200, 3 rows (meta.totals.rows 3)
26
+ //
27
+ // The server does send the parameter; BoondManager discards it on these
28
+ // reference routes. So `pageSize` and `page` are inert there, and a description
29
+ // promising "`pageSize` 1–500, `page` 1–100 — beyond that: rejected" would be
30
+ // telling a model something the endpoint does not do. That is the same class of
31
+ // defect as the hand-typed "défaut: 20, max: 100" this catalogue just removed,
32
+ // so these tools get their own wording instead (see `parameter-disclosure.ts`).
33
+ //
34
+ // Keyed by tool name, not API path: the disclosure runs in the registration
35
+ // Proxy, which sees the tool name and the schema, never the `apiPath`.
36
+ //
37
+ // Not an operational risk, and worth saying so: these are small reference
38
+ // tables (3–249 rows, ~18 KB of tool result at the largest) — far under
39
+ // CHARACTER_LIMIT. The problem is accuracy, not volume.
40
+ //
41
+ // Deliberately *not* extended by guesswork. `/business-units`, `/products`,
42
+ // `/threads` and `/todolists` returned 0 rows on the tenant probed, so their
43
+ // behaviour is unknown; a route belongs here only once it has been observed
44
+ // returning more rows than it was asked for.
45
+ export const TOOLS_IGNORING_PAGINATION = new Set([
46
+ "boond_poles_search",
47
+ "boond_agencies_search",
48
+ "boond_calendars_search",
49
+ "boond_webhooks_search",
50
+ ]);
18
51
  // Cap the page number on search tools (openWorldHint) to prevent runaway
19
52
  // iterations. At 500 results/page, page 100 = 50k records — well beyond
20
53
  // typical interactive exploration. The model can refine filters instead.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"absences.d.ts","sourceRoot":"","sources":["../../src/tools/absences.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAYzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyI5D"}
1
+ {"version":3,"file":"absences.d.ts","sourceRoot":"","sources":["../../src/tools/absences.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAazE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmK5D"}
@@ -1,6 +1,7 @@
1
1
  import { AbsenceSearchSchema, AbsenceCreateSchema, AbsenceUpdateSchema, IdSchema } from "../schemas/index.js";
2
2
  import { apiRequest, buildSearchQuery, formatListResponse, formatDetailResponse } from "../services/boond-client.js";
3
3
  import { buildJsonApiBody, registerDeleteTool } from "./crud-factory.js";
4
+ import { composeDescription, defaultDeleteDescription, defaultGetDescription } from "./description-builders.js";
4
5
  function inclusiveDays(startDate, endDate) {
5
6
  const start = new Date(`${startDate}T00:00:00Z`);
6
7
  const end = new Date(`${endDate}T00:00:00Z`);
@@ -41,7 +42,10 @@ Returns: Liste des demandes d'absence correspondantes.`,
41
42
  });
42
43
  server.registerTool("boond_absences_get", {
43
44
  title: "Details d'une absence",
44
- description: "Recupere les informations detaillees d'une demande d'absence par son ID.",
45
+ description: defaultGetDescription({
46
+ ...{ entityName: "demande d'absence", entityNamePlural: "demandes d'absence", prefix: "boond_absences" },
47
+ withTab: false,
48
+ }),
45
49
  inputSchema: IdSchema,
46
50
  annotations: {
47
51
  readOnlyHint: true,
@@ -57,7 +61,17 @@ Returns: Liste des demandes d'absence correspondantes.`,
57
61
  });
58
62
  server.registerTool("boond_absences_create", {
59
63
  title: "Creer une demande d'absence",
60
- description: "Cree une demande d'absence Boond avec absencesPeriods.",
64
+ description: composeDescription({
65
+ purpose: "Crée une demande d'absence (congés, RTT, maladie…) pour une ressource.",
66
+ when: "pour poser une absence au nom d'une ressource identifiée par son ID.",
67
+ instead: "`boond_absences_update` pour modifier une demande déjà déposée.",
68
+ behaviour: [
69
+ "Le détail est porté par `absencesPeriods` ; si le tableau est omis, une période unique est déduite de `startDate`/`endDate`.",
70
+ "`state` est soumis au workflow de validation BoondManager : la demande part dans son état initial, elle n'est pas validée par cet appel.",
71
+ "Écriture non idempotente — l'API ne déduplique pas deux demandes sur les mêmes dates.",
72
+ ],
73
+ returns: "confirmation et fiche de la demande créée.",
74
+ }),
61
75
  inputSchema: AbsenceCreateSchema,
62
76
  annotations: {
63
77
  readOnlyHint: false,
@@ -97,7 +111,16 @@ Returns: Liste des demandes d'absence correspondantes.`,
97
111
  });
98
112
  server.registerTool("boond_absences_update", {
99
113
  title: "Modifier une absence",
100
- description: "Met a jour une demande d'absence existante. Seuls les champs fournis sont modifies.",
114
+ description: composeDescription({
115
+ purpose: "Met à jour une demande d'absence existante, identifiée par son ID.",
116
+ when: "pour corriger les dates, le motif ou le commentaire d'une demande déjà déposée.",
117
+ instead: "`boond_absences_create` si la demande n'existe pas encore.",
118
+ behaviour: [
119
+ "Mise à jour partielle : seuls les champs fournis sont écrits.",
120
+ "`absencesPeriods` fait exception — le tableau fourni **remplace** l'intégralité des périodes existantes.",
121
+ ],
122
+ returns: "confirmation et fiche mise à jour.",
123
+ }),
101
124
  inputSchema: AbsenceUpdateSchema,
102
125
  annotations: {
103
126
  readOnlyHint: false,
@@ -120,7 +143,11 @@ Returns: Liste des demandes d'absence correspondantes.`,
120
143
  });
121
144
  registerDeleteTool(server, { entityName: "absence", entityNamePlural: "absences", apiPath: "/absences-reports", prefix: "boond_absences" }, {
122
145
  title: "Supprimer une absence",
123
- description: "Supprime une absence de BoondManager. Action irreversible.",
146
+ description: defaultDeleteDescription({
147
+ entityName: "demande d'absence",
148
+ entityNamePlural: "demandes d'absence",
149
+ prefix: "boond_absences",
150
+ }),
124
151
  });
125
152
  }
126
153
  //# sourceMappingURL=absences.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"absences.js","sourceRoot":"","sources":["../../src/tools/absences.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"absences.js","sourceRoot":"","sources":["../../src/tools/absences.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAqCzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAiO3D"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsCzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwO3D"}
@@ -3,6 +3,7 @@ import { apiRequest, apiSearch, buildSearchQuery, formatListResponse, formatDeta
3
3
  import { progressReporterFrom } from "../services/progress.js";
4
4
  import { buildJsonApiBody, registerDeleteTool, MutationOutputSchema } from "./crud-factory.js";
5
5
  import { availableLabels, formatOverridesSummary, resolveLabel } from "../config/dictionary-overrides.js";
6
+ import { defaultDeleteDescription, defaultGetDescription } from "./description-builders.js";
6
7
  /** Display labels for the five entities an action can be attached to. */
7
8
  const ACTION_ENTITY_LABELS = [
8
9
  ["Contact", "contact"],
@@ -58,7 +59,10 @@ Returns: Liste des actions correspondantes.`,
58
59
  // Get action details
59
60
  server.registerTool("boond_actions_get", {
60
61
  title: "Détails d'une action",
61
- description: `Récupère les détails d'une action par son ID.`,
62
+ description: defaultGetDescription({
63
+ ...{ entityName: "action", entityNamePlural: "actions", prefix: "boond_actions" },
64
+ withTab: false,
65
+ }),
62
66
  inputSchema: IdSchema,
63
67
  annotations: {
64
68
  readOnlyHint: true,
@@ -223,7 +227,11 @@ Returns: L'action mise à jour.`,
223
227
  // Delete action — via la factory pour l'élicitation de confirmation + structuredContent
224
228
  registerDeleteTool(server, { entityName: "action", entityNamePlural: "actions", apiPath: "/actions", prefix: "boond_actions" }, {
225
229
  title: "Supprimer une action",
226
- description: `Supprime une action de BoondManager. ⚠️ Action irréversible. Si le client MCP supporte l'élicitation, une confirmation est demandée avant la suppression.`,
230
+ description: defaultDeleteDescription({
231
+ entityName: "action",
232
+ entityNamePlural: "actions",
233
+ prefix: "boond_actions",
234
+ }),
227
235
  });
228
236
  }
229
237
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/tools/actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EACL,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC1G,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE5F,yEAAyE;AACzE,MAAM,oBAAoB,GAA6C;IACrE,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,UAAU,EAAE,WAAW,CAAC;IACzB,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,QAAQ,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,SAAS,4BAA4B,CAAC,IAAY;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,MAAM,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,GAAG,IAAI,6EAA6E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACjH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,iBAAiB;IACjB,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE;;;;;;;4CAOyB;QACtC,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;SACpB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,KAAc,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,wEAAwE;QACxE,2DAA2D;QAC3D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACjF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SAClG,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,qBAAqB;IACrB,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,qBAAqB,CAAC;YACjC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE;YACjF,OAAO,EAAE,KAAK;SACf,CAAC;QACF,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC3E,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,gBAAgB;IAChB,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,4BAA4B,CAAC;;;;;;;;;;qCAUA,CAAC;QAChC,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,GACxG,MAAM,CAAC;QACT,0EAA0E;QAC1E,wEAAwE;QACxE,0EAA0E;QAC1E,MAAM,mBAAmB,GAAoD;YAC3E,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE;YACtC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE;YACpC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE;YAC1C,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SACnC,CAAC;QACF,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,sSAAsS;qBAC7S;iBACF;aACF,CAAC;QACJ,CAAC;QACD,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YACtE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;gBACzD,MAAM,IAAI,GACR,MAAM,CAAC,MAAM,GAAG,CAAC;oBACf,CAAC,CAAC,2CAA2C,SAAS,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,wGAAwG;oBAC1L,CAAC,CAAC,mDAAmD,SAAS,CAAC,IAAI,+LAA+L,CAAC;gBACvQ,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,8BAA8B,KAAK,CAAC,MAAM,MAAM,IAAI,EAAE;yBAC7D;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,aAAa,GAA4B;YAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE;SAChE,CAAC;QACF,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9C,aAAa,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;QACvE,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,oEAAoE;QACpE,mEAAmE;QACnE,wDAAwD;QACxD,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,WAAW,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC;QACnF,CAAC;QACA,IAAgD,CAAC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACrF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC/E,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,oCAAoC,MAAM,EAAE,EAAE,OAAO,oBAAoB,CAAC,QAAQ,CAAC,EAAE;iBAC5F;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,4DAA4D;IAC5D,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE;;;;;;;;;;;+BAWY;QACzB,WAAW,EAAE,kBAAkB;QAC/B,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YACvD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,uGAAuG;qBAC9G;iBACF;aACF,CAAC;QACJ,CAAC;QACD,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC/E,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,aAAa,EAAE,oBAAoB,oBAAoB,CAAC,QAAQ,CAAC,EAAE;iBAC1E;aACF;YACD,iBAAiB,EAAE;gBACjB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;gBACd,GAAG,CAAC,MAAM,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrE;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,wFAAwF;IACxF,kBAAkB,CAChB,MAAM,EACN,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,EACnG;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,wBAAwB,CAAC;YACpC,UAAU,EAAE,QAAQ;YACpB,gBAAgB,EAAE,SAAS;YAC3B,MAAM,EAAE,eAAe;SACxB,CAAC;KACH,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"advantages.d.ts","sourceRoot":"","sources":["../../src/tools/advantages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoD9D"}
1
+ {"version":3,"file":"advantages.d.ts","sourceRoot":"","sources":["../../src/tools/advantages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAYzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuD9D"}
@@ -1,6 +1,7 @@
1
1
  import { AdvantageSearchSchema, IdSchema } from "../schemas/index.js";
2
2
  import { apiRequest, apiSearch, buildSearchQuery, formatListResponse, formatDetailResponse, } from "../services/boond-client.js";
3
3
  import { progressReporterFrom } from "../services/progress.js";
4
+ import { defaultGetDescription } from "./description-builders.js";
4
5
  export function registerAdvantageTools(server) {
5
6
  // Search advantages
6
7
  server.registerTool("boond_advantages_search", {
@@ -30,7 +31,10 @@ Returns: Liste des avantages correspondants.`,
30
31
  // Get advantage details
31
32
  server.registerTool("boond_advantages_get", {
32
33
  title: "Détails d'un avantage",
33
- description: `Récupère les informations détaillées d'un avantage par son ID.`,
34
+ description: defaultGetDescription({
35
+ ...{ entityName: "avantage", entityNamePlural: "avantages", prefix: "boond_advantages" },
36
+ withTab: false,
37
+ }),
34
38
  inputSchema: IdSchema,
35
39
  annotations: {
36
40
  readOnlyHint: true,
@@ -1 +1 @@
1
- {"version":3,"file":"advantages.js","sourceRoot":"","sources":["../../src/tools/advantages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,oBAAoB;IACpB,MAAM,CAAC,YAAY,CACjB,yBAAyB,EACzB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE;;;;;;;6CAO0B;QACvC,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;SACpB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,KAAc,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACpF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SACpG,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,eAAe,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC3E,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"advantages.js","sourceRoot":"","sources":["../../src/tools/advantages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,oBAAoB;IACpB,MAAM,CAAC,YAAY,CACjB,yBAAyB,EACzB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE;;;;;;;6CAO0B;QACvC,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;SACpB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,KAAc,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACpF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SACpG,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,qBAAqB,CAAC;YACjC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;YACxF,OAAO,EAAE,KAAK;SACf,CAAC;QACF,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,eAAe,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC3E,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -35,7 +35,7 @@ Args:
35
35
 
36
36
  Note : l'ancienne forme "states/resources" (slash) n'est pas valide — utilisez "setting.state.resource".
37
37
 
38
- Retourne le sous-arbre (souvent un tableau \`{id, value, ...}\`) ou \`isError: true\` si le chemin est introuvable.`,
38
+ Returns : le sous-arbre demandé (souvent un tableau \`{id, value, …}\`), ou \`isError: true\` avec le chemin fautif s'il est introuvable.`,
39
39
  inputSchema: DictionaryGetSchema,
40
40
  annotations: {
41
41
  readOnlyHint: true,
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/tools/application.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,SAAS,oBAAoB,CAAC,IAAa;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,2BAA2B,CAAC;IAC1E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,iBAAiB;IACjB,MAAM,CAAC,YAAY,CACjB,8BAA8B,EAC9B;QACE,KAAK,EAAE,wCAAwC;QAC/C,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;oHAsBiG;QAC9G,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAA0B,EAAE,EAAE;QACnC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QACnE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,WAAW,MAAM,CAAC,cAAc,mOAAmO;qBAC1Q;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;SACvE,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,sCAAsC;IACtC,MAAM,CAAC,YAAY,CACjB,gCAAgC,EAChC;QACE,KAAK,EAAE,kCAAkC;QACzC,WAAW,EAAE;;gDAE6B;QAC1C,WAAW,EAAE,EAAE;QACf,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,2BAA2B,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/tools/application.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,SAAS,oBAAoB,CAAC,IAAa;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,2BAA2B,CAAC;IAC1E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,iBAAiB;IACjB,MAAM,CAAC,YAAY,CACjB,8BAA8B,EAC9B;QACE,KAAK,EAAE,wCAAwC;QAC/C,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;0IAsBuH;QACpI,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAA0B,EAAE,EAAE;QACnC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QACnE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,WAAW,MAAM,CAAC,cAAc,mOAAmO;qBAC1Q;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;SACvE,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,sCAAsC;IACtC,MAAM,CAAC,YAAY,CACjB,gCAAgC,EAChC;QACE,KAAK,EAAE,kCAAkC;QACzC,WAAW,EAAE;;gDAE6B;QAC1C,WAAW,EAAE,EAAE;QACf,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,IAAI,EAAE;QACT,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,2BAA2B,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"candidates.d.ts","sourceRoot":"","sources":["../../src/tools/candidates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2GzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+C9D"}
1
+ {"version":3,"file":"candidates.d.ts","sourceRoot":"","sources":["../../src/tools/candidates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+EzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6B9D"}
@@ -1,73 +1,52 @@
1
- import { CandidateCreateSchema, CandidateUpdateSchema, CandidateSearchSchema, IdSchema } from "../schemas/index.js";
1
+ import { CandidateCreateSchema, CandidateUpdateSchema, CandidateSearchSchema } from "../schemas/index.js";
2
2
  import { registerSearchTool, registerGetTool, registerCreateTool, registerUpdateTool, registerDeleteTool, buildJsonApiBody, } from "./crud-factory.js";
3
- import { apiRequest, formatTabResponse } from "../services/boond-client.js";
3
+ import { registerTabTools } from "./tab-tools.js";
4
4
  const OPTS = {
5
5
  entityName: "candidat",
6
6
  entityNamePlural: "candidats",
7
7
  apiPath: "/candidates",
8
8
  prefix: "boond_candidates",
9
9
  };
10
- const TAB_TOOL_ANNOTATIONS = {
11
- readOnlyHint: true,
12
- destructiveHint: false,
13
- idempotentHint: true,
14
- openWorldHint: false,
15
- };
16
10
  const CANDIDATE_TABS = [
17
11
  {
18
12
  name: "information",
19
13
  tab: "information",
20
14
  title: "Informations générales d'un candidat",
21
- description: `Récupère les informations générales d'un candidat (coordonnées, adresse, état civil, photo, tags, source...).
22
-
23
- Args:
24
- - id (string): ID du candidat
25
-
26
- Returns: Données personnelles et administratives du candidat.`,
15
+ subject: "les informations générales",
16
+ content: "coordonnées, adresse, état civil, photo, tags, source",
17
+ returns: "Bloc identité et coordonnées du candidat.",
27
18
  },
28
19
  {
29
20
  name: "technical_data",
30
21
  tab: "technical-data",
31
22
  title: "Compétences techniques d'un candidat",
32
- description: `Récupère le profil technique d'un candidat (compétences, expériences, formations, certifications, langues, CV...).
33
-
34
- Args:
35
- - id (string): ID du candidat
36
-
37
- Returns: Données techniques et compétences du candidat.`,
23
+ subject: "le profil technique",
24
+ content: "compétences, expériences, formations, certifications, langues, CV",
25
+ returns: "Profil technique du candidat. Les ID de documents (CV) qui s'y trouvent alimentent `boond_documents_get`.",
38
26
  },
39
27
  {
40
28
  name: "administrative",
41
29
  tab: "administrative",
42
30
  title: "Données administratives d'un candidat",
43
- description: `Récupère les informations administratives d'un candidat.
44
-
45
- Args:
46
- - id (string): ID du candidat
47
-
48
- Returns: Données administratives du candidat.`,
31
+ subject: "les données administratives",
32
+ content: "pièces justificatives, documents contractuels, informations RH",
33
+ returns: "Bloc administratif du candidat, avec les ID de documents exploitables par `boond_documents_get`.",
49
34
  },
50
35
  {
51
36
  name: "actions",
52
37
  tab: "actions",
53
38
  title: "Actions liées à un candidat",
54
- description: `Récupère les actions (appels, emails, RDV, notes) associées à un candidat.
55
-
56
- Args:
57
- - id (string): ID du candidat
58
-
59
- Returns: Liste des actions liées au candidat.`,
39
+ subject: "les actions",
40
+ content: "appels, emails, RDV, notes",
41
+ returns: "Liste des actions rattachées au candidat.",
60
42
  },
61
43
  {
62
44
  name: "positionings",
63
45
  tab: "positionings",
64
46
  title: "Positionnements d'un candidat",
65
- description: `Récupère les positionnements (placements sur des opportunités/projets) d'un candidat.
66
-
67
- Args:
68
- - id (string): ID du candidat
69
-
70
- Returns: Liste des positionnements du candidat.`,
47
+ subject: "les positionnements",
48
+ content: "placements du candidat sur des opportunités ou des projets",
49
+ returns: "Liste des positionnements du candidat.",
71
50
  },
72
51
  ];
73
52
  const CANDIDATE_SEARCH_DESCRIPTION = `Recherche des candidats dans BoondManager avec filtres serveur.
@@ -102,20 +81,6 @@ export function registerCandidateTools(server) {
102
81
  return buildJsonApiBody("candidate", attrs, id);
103
82
  }, { method: "PUT", pathSuffix: "information" });
104
83
  registerDeleteTool(server, OPTS);
105
- // Register one tool per candidate tab
106
- for (const tab of CANDIDATE_TABS) {
107
- server.registerTool(`boond_candidates_${tab.name}`, {
108
- title: tab.title,
109
- description: tab.description,
110
- inputSchema: IdSchema,
111
- annotations: TAB_TOOL_ANNOTATIONS,
112
- }, async (params) => {
113
- const response = await apiRequest(`/candidates/${params.id}/${tab.tab}`);
114
- const text = formatTabResponse(response);
115
- return {
116
- content: [{ type: "text", text }],
117
- };
118
- });
119
- }
84
+ registerTabTools(server, { ...OPTS, prefix: OPTS.prefix }, CANDIDATE_TABS);
120
85
  }
121
86
  //# sourceMappingURL=candidates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"candidates.js","sourceRoot":"","sources":["../../src/tools/candidates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"candidates.js","sourceRoot":"","sources":["../../src/tools/candidates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC1G,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,MAAM,IAAI,GAAG;IACX,UAAU,EAAE,UAAU;IACtB,gBAAgB,EAAE,WAAW;IAC7B,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEF,MAAM,cAAc,GAAoB;IACtC;QACE,IAAI,EAAE,aAAa;QACnB,GAAG,EAAE,aAAa;QAClB,KAAK,EAAE,sCAAsC;QAC7C,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,uDAAuD;QAChE,OAAO,EAAE,2CAA2C;KACrD;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,gBAAgB;QACrB,KAAK,EAAE,sCAAsC;QAC7C,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,mEAAmE;QAC5E,OAAO,EACL,2GAA2G;KAC9G;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,gBAAgB;QACrB,KAAK,EAAE,uCAAuC;QAC9C,OAAO,EAAE,6BAA6B;QACtC,OAAO,EAAE,gEAAgE;QACzE,OAAO,EAAE,kGAAkG;KAC5G;IACD;QACE,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,6BAA6B;QACpC,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,2CAA2C;KACrD;IACD;QACE,IAAI,EAAE,cAAc;QACpB,GAAG,EAAE,cAAc;QACnB,KAAK,EAAE,+BAA+B;QACtC,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE,wCAAwC;KAClD;CACF,CAAC;AAEF,MAAM,4BAA4B,GAAG;;;;;;;;;;;;;iHAa4E,CAAC;AAElH,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE;QAC/B,MAAM,EAAE,qBAAqB;QAC7B,WAAW,EAAE,4BAA4B;KAC1C,CAAC,CAAC;IACH,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE9B,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE;QACjE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;QAC5B,OAAO,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,+EAA+E;IAC/E,yEAAyE;IACzE,kBAAkB,CAChB,MAAM,EACN,IAAI,EACJ,qBAAqB,EACrB,CAAC,MAAM,EAAE,EAAE;QACT,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;QAChC,OAAO,gBAAgB,CAAC,WAAW,EAAE,KAAK,EAAE,EAAY,CAAC,CAAC;IAC5D,CAAC,EACD,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,CAC7C,CAAC;IAEF,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEjC,gBAAgB,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC,CAAC;AAC7E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"companies.d.ts","sourceRoot":"","sources":["../../src/tools/companies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAuJzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+C5D"}
1
+ {"version":3,"file":"companies.d.ts","sourceRoot":"","sources":["../../src/tools/companies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0GzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6B5D"}
@@ -1,117 +1,79 @@
1
- import { CompanyCreateSchema, CompanyUpdateSchema, CompanySearchSchema, IdSchema } from "../schemas/index.js";
1
+ import { CompanyCreateSchema, CompanyUpdateSchema, CompanySearchSchema } from "../schemas/index.js";
2
2
  import { registerSearchTool, registerGetTool, registerCreateTool, registerUpdateTool, registerDeleteTool, buildJsonApiBody, } from "./crud-factory.js";
3
- import { apiRequest, formatTabResponse } from "../services/boond-client.js";
3
+ import { registerTabTools } from "./tab-tools.js";
4
4
  const OPTS = {
5
5
  entityName: "société",
6
6
  entityNamePlural: "sociétés",
7
7
  apiPath: "/companies",
8
8
  prefix: "boond_companies",
9
9
  };
10
- const TAB_TOOL_ANNOTATIONS = {
11
- readOnlyHint: true,
12
- destructiveHint: false,
13
- idempotentHint: true,
14
- openWorldHint: false,
15
- };
16
10
  const COMPANY_TABS = [
17
11
  {
18
12
  name: "information",
19
13
  tab: "information",
20
14
  title: "Informations générales d'une société",
21
- description: `Récupère les informations générales d'une société (coordonnées, SIRET, site web, secteur, taille, tags...).
22
-
23
- Args:
24
- - id (string): ID de la société
25
-
26
- Returns: Données générales de la société.`,
15
+ subject: "les informations générales",
16
+ content: "coordonnées, SIRET, site web, secteur, taille, tags",
17
+ returns: "Fiche signalétique de la société.",
27
18
  },
28
19
  {
29
20
  name: "contacts",
30
21
  tab: "contacts",
31
22
  title: "Contacts d'une société",
32
- description: `Récupère les contacts associés à une société.
33
-
34
- Args:
35
- - id (string): ID de la société
36
-
37
- Returns: Liste des contacts de la société.`,
23
+ subject: "les contacts",
24
+ content: "interlocuteurs rattachés à la société",
25
+ returns: "Liste des contacts de la société.",
38
26
  },
39
27
  {
40
28
  name: "actions",
41
29
  tab: "actions",
42
30
  title: "Actions liées à une société",
43
- description: `Récupère les actions (appels, emails, RDV, notes) associées à une société.
44
-
45
- Args:
46
- - id (string): ID de la société
47
-
48
- Returns: Liste des actions liées à la société.`,
31
+ subject: "les actions",
32
+ content: "appels, emails, RDV, notes",
33
+ returns: "Liste des actions rattachées à la société.",
49
34
  },
50
35
  {
51
36
  name: "opportunities",
52
37
  tab: "opportunities",
53
38
  title: "Opportunités d'une société",
54
- description: `Récupère les opportunités commerciales d'une société.
55
-
56
- Args:
57
- - id (string): ID de la société
58
-
59
- Returns: Liste des opportunités de la société.`,
39
+ subject: "les opportunités commerciales",
40
+ returns: "Liste des opportunités de la société.",
60
41
  },
61
42
  {
62
43
  name: "projects",
63
44
  tab: "projects",
64
45
  title: "Projets d'une société",
65
- description: `Récupère les projets associés à une société.
66
-
67
- Args:
68
- - id (string): ID de la société
69
-
70
- Returns: Liste des projets de la société.`,
46
+ subject: "les projets",
47
+ returns: "Liste des projets de la société.",
71
48
  },
72
49
  {
73
50
  name: "orders",
74
51
  tab: "orders",
75
52
  title: "Bons de commande d'une société",
76
- description: `Récupère les bons de commande d'une société.
77
-
78
- Args:
79
- - id (string): ID de la société
80
-
81
- Returns: Liste des bons de commande de la société.`,
53
+ subject: "les bons de commande",
54
+ returns: "Liste des bons de commande de la société.",
82
55
  },
83
56
  {
84
57
  name: "invoices",
85
58
  tab: "invoices",
86
59
  title: "Factures d'une société",
87
- description: `Récupère les factures d'une société.
88
-
89
- Args:
90
- - id (string): ID de la société
91
-
92
- Returns: Liste des factures de la société.`,
60
+ subject: "les factures client",
61
+ returns: "Liste des factures de vente adressées à la société. Ne pas confondre avec `boond_companies_provider_invoices` (achat).",
93
62
  },
94
63
  {
95
64
  name: "purchases",
96
65
  tab: "purchases",
97
66
  title: "Achats d'une société",
98
- description: `Récupère les achats/sous-traitance d'une société.
99
-
100
- Args:
101
- - id (string): ID de la société
102
-
103
- Returns: Liste des achats de la société.`,
67
+ subject: "les achats et la sous-traitance",
68
+ returns: "Liste des achats engagés auprès de la société.",
104
69
  },
105
70
  {
106
71
  name: "provider_invoices",
107
- tab: "provider-invoices",
72
+ tab: "provider_invoices",
108
73
  title: "Factures fournisseur d'une société",
109
- description: `Récupère les factures fournisseur d'une société.
110
-
111
- Args:
112
- - id (string): ID de la société
113
-
114
- Returns: Liste des factures fournisseur de la société.`,
74
+ subject: "les factures fournisseur",
75
+ content: "factures reçues de la société en tant que prestataire",
76
+ returns: "Liste des factures d'achat. Ne pas confondre avec `boond_companies_invoices` (vente).",
115
77
  },
116
78
  ];
117
79
  const COMPANY_SEARCH_DESCRIPTION = `Recherche des sociétés (clients, prospects, fournisseurs…) dans BoondManager avec filtres serveur.
@@ -146,20 +108,6 @@ export function registerCompanyTools(server) {
146
108
  return buildJsonApiBody("company", attrs, id);
147
109
  }, { method: "PUT", pathSuffix: "information" });
148
110
  registerDeleteTool(server, OPTS);
149
- // Register one tool per company tab
150
- for (const tab of COMPANY_TABS) {
151
- server.registerTool(`boond_companies_${tab.name}`, {
152
- title: tab.title,
153
- description: tab.description,
154
- inputSchema: IdSchema,
155
- annotations: TAB_TOOL_ANNOTATIONS,
156
- }, async (params) => {
157
- const response = await apiRequest(`/companies/${params.id}/${tab.tab}`);
158
- const text = formatTabResponse(response);
159
- return {
160
- content: [{ type: "text", text }],
161
- };
162
- });
163
- }
111
+ registerTabTools(server, { ...OPTS, prefix: OPTS.prefix }, COMPANY_TABS);
164
112
  }
165
113
  //# sourceMappingURL=companies.js.map