@teamso/teamso-mcp 0.0.0-stage → 1.2.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 (112) hide show
  1. package/CHANGELOG.md +121 -0
  2. package/LICENSE +21 -0
  3. package/README.md +516 -2
  4. package/dist/client.d.ts +215 -0
  5. package/dist/client.d.ts.map +1 -0
  6. package/dist/client.js +797 -0
  7. package/dist/client.js.map +1 -0
  8. package/dist/index.d.ts +3 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +32 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/prompts/index.d.ts +12 -0
  13. package/dist/prompts/index.d.ts.map +1 -0
  14. package/dist/prompts/index.js +58 -0
  15. package/dist/prompts/index.js.map +1 -0
  16. package/dist/server.d.ts +28 -0
  17. package/dist/server.d.ts.map +1 -0
  18. package/dist/server.js +58 -0
  19. package/dist/server.js.map +1 -0
  20. package/dist/tools/account.d.ts +4 -0
  21. package/dist/tools/account.d.ts.map +1 -0
  22. package/dist/tools/account.js +34 -0
  23. package/dist/tools/account.js.map +1 -0
  24. package/dist/tools/api.d.ts +13 -0
  25. package/dist/tools/api.d.ts.map +1 -0
  26. package/dist/tools/api.js +980 -0
  27. package/dist/tools/api.js.map +1 -0
  28. package/dist/tools/approvals.d.ts +5 -0
  29. package/dist/tools/approvals.d.ts.map +1 -0
  30. package/dist/tools/approvals.js +120 -0
  31. package/dist/tools/approvals.js.map +1 -0
  32. package/dist/tools/communication.d.ts +4 -0
  33. package/dist/tools/communication.d.ts.map +1 -0
  34. package/dist/tools/communication.js +39 -0
  35. package/dist/tools/communication.js.map +1 -0
  36. package/dist/tools/employees.d.ts +5 -0
  37. package/dist/tools/employees.d.ts.map +1 -0
  38. package/dist/tools/employees.js +113 -0
  39. package/dist/tools/employees.js.map +1 -0
  40. package/dist/tools/help.d.ts +6 -0
  41. package/dist/tools/help.d.ts.map +1 -0
  42. package/dist/tools/help.js +171 -0
  43. package/dist/tools/help.js.map +1 -0
  44. package/dist/tools/index.d.ts +86 -0
  45. package/dist/tools/index.d.ts.map +1 -0
  46. package/dist/tools/index.js +118 -0
  47. package/dist/tools/index.js.map +1 -0
  48. package/dist/tools/leave-support.d.ts +60 -0
  49. package/dist/tools/leave-support.d.ts.map +1 -0
  50. package/dist/tools/leave-support.js +185 -0
  51. package/dist/tools/leave-support.js.map +1 -0
  52. package/dist/tools/leave.d.ts +14 -0
  53. package/dist/tools/leave.d.ts.map +1 -0
  54. package/dist/tools/leave.js +386 -0
  55. package/dist/tools/leave.js.map +1 -0
  56. package/dist/tools/payroll.d.ts +5 -0
  57. package/dist/tools/payroll.d.ts.map +1 -0
  58. package/dist/tools/payroll.js +101 -0
  59. package/dist/tools/payroll.js.map +1 -0
  60. package/dist/tools/performance.d.ts +13 -0
  61. package/dist/tools/performance.d.ts.map +1 -0
  62. package/dist/tools/performance.js +592 -0
  63. package/dist/tools/performance.js.map +1 -0
  64. package/dist/tools/schemas.d.ts +2079 -0
  65. package/dist/tools/schemas.d.ts.map +1 -0
  66. package/dist/tools/schemas.js +460 -0
  67. package/dist/tools/schemas.js.map +1 -0
  68. package/dist/tools/shared.d.ts +20 -0
  69. package/dist/tools/shared.d.ts.map +1 -0
  70. package/dist/tools/shared.js +64 -0
  71. package/dist/tools/shared.js.map +1 -0
  72. package/dist/types.d.ts +545 -0
  73. package/dist/types.d.ts.map +1 -0
  74. package/dist/types.js +7 -0
  75. package/dist/types.js.map +1 -0
  76. package/dist/utils/api-endpoints.d.ts +130 -0
  77. package/dist/utils/api-endpoints.d.ts.map +1 -0
  78. package/dist/utils/api-endpoints.js +459 -0
  79. package/dist/utils/api-endpoints.js.map +1 -0
  80. package/dist/utils/dates.d.ts +27 -0
  81. package/dist/utils/dates.d.ts.map +1 -0
  82. package/dist/utils/dates.js +102 -0
  83. package/dist/utils/dates.js.map +1 -0
  84. package/dist/utils/format.d.ts +8 -0
  85. package/dist/utils/format.d.ts.map +1 -0
  86. package/dist/utils/format.js +26 -0
  87. package/dist/utils/format.js.map +1 -0
  88. package/dist/utils/help-search.d.ts +25 -0
  89. package/dist/utils/help-search.d.ts.map +1 -0
  90. package/dist/utils/help-search.js +93 -0
  91. package/dist/utils/help-search.js.map +1 -0
  92. package/dist/utils/json-schema-dialect.d.ts +12 -0
  93. package/dist/utils/json-schema-dialect.d.ts.map +1 -0
  94. package/dist/utils/json-schema-dialect.js +146 -0
  95. package/dist/utils/json-schema-dialect.js.map +1 -0
  96. package/dist/utils/results.d.ts +27 -0
  97. package/dist/utils/results.d.ts.map +1 -0
  98. package/dist/utils/results.js +88 -0
  99. package/dist/utils/results.js.map +1 -0
  100. package/dist/utils/structured.d.ts +89 -0
  101. package/dist/utils/structured.d.ts.map +1 -0
  102. package/dist/utils/structured.js +307 -0
  103. package/dist/utils/structured.js.map +1 -0
  104. package/dist/utils/text.d.ts +12 -0
  105. package/dist/utils/text.d.ts.map +1 -0
  106. package/dist/utils/text.js +46 -0
  107. package/dist/utils/text.js.map +1 -0
  108. package/dist/version.d.ts +3 -0
  109. package/dist/version.d.ts.map +1 -0
  110. package/dist/version.js +6 -0
  111. package/dist/version.js.map +1 -0
  112. package/package.json +86 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,460 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Output schemas (zod raw shapes) for every tool. MCP clients validate
4
+ * `structuredContent` against the JSON Schema generated from these, which
5
+ * forbids unknown keys, so projections in `utils/structured.ts` must produce
6
+ * exactly these fields.
7
+ */
8
+ export const nextActionSchema = z.object({
9
+ tool: z.string(),
10
+ arguments: z.record(z.string(), z.unknown()),
11
+ reason: z.string(),
12
+ });
13
+ const languageSchema = z.enum(['tr', 'en']);
14
+ // ------------------------------------------------------------------- help
15
+ export const helpArticleSummarySchema = z.object({
16
+ id: z.string(),
17
+ title: z.string(),
18
+ summary: z.string(),
19
+ module: z.string(),
20
+ roles: z.array(z.string()),
21
+ url: z.string(),
22
+ resource: z.string(),
23
+ });
24
+ export const helpSearchOutputSchema = {
25
+ lang: languageSchema,
26
+ query: z.string(),
27
+ results: z.array(helpArticleSummarySchema.extend({ score: z.number() })),
28
+ nextAction: nextActionSchema.optional(),
29
+ };
30
+ export const helpArticleOutputSchema = {
31
+ lang: languageSchema,
32
+ article: helpArticleSummarySchema.extend({
33
+ verified: z.string().optional(),
34
+ routes: z.array(z.string()),
35
+ related: z.array(z.string()),
36
+ }),
37
+ };
38
+ export const helpModulesOutputSchema = {
39
+ lang: languageSchema,
40
+ modules: z.array(z.object({
41
+ dir: z.string(),
42
+ title: z.string(),
43
+ description: z.string().optional(),
44
+ articles: z.array(z.object({ id: z.string(), title: z.string() })),
45
+ })),
46
+ };
47
+ // ---------------------------------------------------------------- account
48
+ const personRefSchema = z.object({
49
+ id: z.string(),
50
+ fullName: z.string(),
51
+ });
52
+ export const meOutputSchema = {
53
+ user: z.object({
54
+ id: z.string(),
55
+ fullName: z.string(),
56
+ name: z.string().optional(),
57
+ surname: z.string().optional(),
58
+ email: z.string().optional(),
59
+ personnelId: z.string().optional(),
60
+ company: z.object({ id: z.string().optional(), name: z.string().optional() }),
61
+ department: z.string().optional(),
62
+ position: z.string().optional(),
63
+ branch: z.string().optional(),
64
+ manager: personRefSchema.nullable(),
65
+ roles: z.array(z.string()),
66
+ permissions: z.array(z.string()),
67
+ payrollManager: z.boolean(),
68
+ }),
69
+ };
70
+ // ------------------------------------------------------------------ leave
71
+ const leavePolicySchema = z.object({
72
+ leavePolicyUserId: z.string(),
73
+ id: z.string().optional(),
74
+ name: z.string().optional(),
75
+ });
76
+ export const leaveTypeSchema = z.object({
77
+ id: z.string(),
78
+ name: z.string(),
79
+ remainingDays: z.number(),
80
+ isDefault: z.boolean(),
81
+ paid: z.boolean(),
82
+ limitation: z.string().optional(),
83
+ dayLimit: z.number().optional(),
84
+ minDaysPerRequest: z.number().optional(),
85
+ maxDaysPerRequest: z.number().optional(),
86
+ documentRequired: z.boolean(),
87
+ descriptionRequired: z.boolean(),
88
+ birthdayLeave: z.boolean(),
89
+ countsCalendarDays: z.boolean(),
90
+ });
91
+ export const leaveTypesOutputSchema = {
92
+ policy: leavePolicySchema,
93
+ leaveTypes: z.array(leaveTypeSchema),
94
+ };
95
+ export const leaveBalanceOutputSchema = {
96
+ policy: leavePolicySchema,
97
+ balances: z.array(z.object({
98
+ leaveTypeId: z.string(),
99
+ leaveTypeName: z.string(),
100
+ remainingDays: z.number(),
101
+ isDefault: z.boolean(),
102
+ })),
103
+ };
104
+ const leaveRequestDraftSchema = z.object({
105
+ leaveTypeId: z.string(),
106
+ leaveTypeName: z.string(),
107
+ start: z.string(),
108
+ end: z.string(),
109
+ workingDays: z.number(),
110
+ returnToWorkDate: z.string().optional(),
111
+ });
112
+ export const leaveCalculationOutputSchema = {
113
+ request: leaveRequestDraftSchema,
114
+ remainingDays: z.number(),
115
+ remainingAfterRequest: z.number(),
116
+ canRequest: z.boolean(),
117
+ problems: z.array(z.string()),
118
+ nextAction: nextActionSchema.optional(),
119
+ };
120
+ export const otpOutputSchema = {
121
+ sent: z.boolean(),
122
+ validForSeconds: z.number(),
123
+ message: z.string(),
124
+ nextAction: nextActionSchema,
125
+ };
126
+ export const leaveSummarySchema = z.object({
127
+ id: z.string(),
128
+ leaveTypeId: z.string().optional(),
129
+ leaveTypeName: z.string().optional(),
130
+ start: z.string().optional(),
131
+ end: z.string().optional(),
132
+ workingDays: z.number().optional(),
133
+ status: z.string(),
134
+ statusCode: z.number().optional(),
135
+ description: z.string().optional(),
136
+ answer: z.string().optional(),
137
+ createdAt: z.string().optional(),
138
+ });
139
+ export const leaveCreatedOutputSchema = {
140
+ created: z.boolean(),
141
+ request: leaveRequestDraftSchema,
142
+ leave: leaveSummarySchema.nullable(),
143
+ message: z.string(),
144
+ };
145
+ export const leaveListOutputSchema = {
146
+ leaves: z.array(leaveSummarySchema),
147
+ total: z.number(),
148
+ truncated: z.boolean(),
149
+ };
150
+ export const leaveCancelledOutputSchema = {
151
+ cancelled: z.boolean(),
152
+ leave: leaveSummarySchema,
153
+ closedPayrollPeriods: z.array(z.string()),
154
+ message: z.string(),
155
+ };
156
+ // -------------------------------------------------------------- approvals
157
+ export const pendingApprovalSchema = z.object({
158
+ leaveId: z.string(),
159
+ requester: personRefSchema.nullable(),
160
+ leaveTypeName: z.string().optional(),
161
+ start: z.string().optional(),
162
+ end: z.string().optional(),
163
+ workingDays: z.number().optional(),
164
+ description: z.string().optional(),
165
+ approvalStep: z.number().optional(),
166
+ createdAt: z.string().optional(),
167
+ });
168
+ export const pendingApprovalsOutputSchema = {
169
+ approvals: z.array(pendingApprovalSchema),
170
+ total: z.number(),
171
+ truncated: z.boolean(),
172
+ nextAction: nextActionSchema.optional(),
173
+ };
174
+ export const leaveDecisionOutputSchema = {
175
+ leaveId: z.string(),
176
+ decision: z.enum(['approved', 'rejected']),
177
+ status: z.string(),
178
+ statusCode: z.number().optional(),
179
+ reason: z.string().optional(),
180
+ closedPayrollPeriods: z.array(z.string()),
181
+ message: z.string(),
182
+ };
183
+ // -------------------------------------------------------------- employees
184
+ export const employeeSummarySchema = z.object({
185
+ id: z.string(),
186
+ fullName: z.string(),
187
+ email: z.string().optional(),
188
+ personnelId: z.string().optional(),
189
+ department: z.string().optional(),
190
+ position: z.string().optional(),
191
+ branch: z.string().optional(),
192
+ });
193
+ export const employeeSearchOutputSchema = {
194
+ query: z.string(),
195
+ source: z.enum(['directory', 'authorized_employees']),
196
+ employees: z.array(employeeSummarySchema),
197
+ total: z.number(),
198
+ nextAction: nextActionSchema.optional(),
199
+ };
200
+ export const employeeProfileOutputSchema = {
201
+ employee: z.object({
202
+ id: z.string(),
203
+ fullName: z.string(),
204
+ email: z.string().optional(),
205
+ phone: z.string().optional(),
206
+ branch: z.string().optional(),
207
+ department: z.string().optional(),
208
+ position: z.string().optional(),
209
+ manager: z.object({ id: z.string().optional(), fullName: z.string() }).nullable(),
210
+ workLocation: z.string().optional(),
211
+ workplace: z.string().optional(),
212
+ }),
213
+ };
214
+ // ------------------------------------------------------------ performance
215
+ export const performancePeriodSchema = z.object({
216
+ id: z.string(),
217
+ title: z.string(),
218
+ status: z.string().optional(),
219
+ startDate: z.string().optional(),
220
+ endDate: z.string().optional(),
221
+ targetEntryStartDate: z.string().optional(),
222
+ targetEntryEndDate: z.string().optional(),
223
+ targetEntryOpen: z.boolean(),
224
+ targetEntryLocked: z.boolean(),
225
+ goalEntryBy: z.string().optional(),
226
+ successCriteriaEntryBy: z.string().optional(),
227
+ minimumGoalCount: z.number().optional(),
228
+ employeeCanSelectOther: z.boolean(),
229
+ evaluationScale: z.array(z.object({
230
+ label: z.string(),
231
+ value: z.number().optional(),
232
+ minPercentage: z.number().optional(),
233
+ maxPercentage: z.number().optional(),
234
+ })),
235
+ });
236
+ export const performancePeriodsOutputSchema = {
237
+ periods: z.array(performancePeriodSchema),
238
+ };
239
+ export const goalSchema = z.object({
240
+ id: z.string(),
241
+ userId: z.string().optional(),
242
+ userFullName: z.string().optional(),
243
+ name: z.string(),
244
+ description: z.string().optional(),
245
+ type: z.string().optional(),
246
+ period: z.string().optional(),
247
+ status: z.string(),
248
+ weight: z.number().optional(),
249
+ scaleCriterion: z.string().optional(),
250
+ currency: z.string().optional(),
251
+ otherText: z.string().optional(),
252
+ targetValue: z.number().optional(),
253
+ actualValue: z.number().optional(),
254
+ actualText: z.string().optional(),
255
+ managerActualValue: z.number().optional(),
256
+ managerActualText: z.string().optional(),
257
+ achievementPercentage: z.number().optional(),
258
+ score: z.number().optional(),
259
+ weightedScore: z.number().optional(),
260
+ finalScore: z.number().optional(),
261
+ finalScoreText: z.string().optional(),
262
+ canApproveGoal: z.boolean(),
263
+ canReviseGoal: z.boolean(),
264
+ canEnterActualValue: z.boolean(),
265
+ canApproveEvaluation: z.boolean(),
266
+ });
267
+ export const goalListOutputSchema = {
268
+ period: z.string(),
269
+ canAddGoal: z.boolean(),
270
+ goals: z.array(goalSchema),
271
+ total: z.number(),
272
+ nextAction: nextActionSchema.optional(),
273
+ };
274
+ export const goalOutputSchema = {
275
+ goal: goalSchema,
276
+ message: z.string(),
277
+ nextAction: nextActionSchema.optional(),
278
+ };
279
+ export const goalsSentOutputSchema = {
280
+ goals: z.array(goalSchema),
281
+ message: z.string(),
282
+ };
283
+ export const evaluationApprovalOutputSchema = {
284
+ period: z.string(),
285
+ userId: z.string(),
286
+ newStatus: z.string().optional(),
287
+ finalScore: z.number().optional(),
288
+ finalScoreText: z.string().optional(),
289
+ goals: z.array(goalSchema),
290
+ message: z.string(),
291
+ };
292
+ // ---------------------------------------------------------- communication
293
+ export const announcementsOutputSchema = {
294
+ announcements: z.array(z.object({
295
+ id: z.string(),
296
+ type: z.string().optional(),
297
+ text: z.string(),
298
+ date: z.string().optional(),
299
+ sharedBy: z.string().optional(),
300
+ coverPhotoUrl: z.string().optional(),
301
+ })),
302
+ total: z.number(),
303
+ };
304
+ // ---------------------------------------------------------------- payroll
305
+ export const payslipSchema = z.object({
306
+ id: z.string(),
307
+ term: z.string().optional(),
308
+ status: z.string().optional(),
309
+ sentToEmployeeAt: z.string().optional(),
310
+ createdAt: z.string().optional(),
311
+ canAnswer: z.boolean(),
312
+ userAnswer: z.string().optional(),
313
+ managerAnswer: z.string().optional(),
314
+ });
315
+ export const payslipListOutputSchema = {
316
+ payslips: z.array(payslipSchema),
317
+ total: z.number(),
318
+ nextAction: nextActionSchema.optional(),
319
+ };
320
+ export const payslipPdfOutputSchema = {
321
+ payslipId: z.string(),
322
+ fileName: z.string(),
323
+ mimeType: z.string(),
324
+ sizeBytes: z.number(),
325
+ resourceUri: z.string(),
326
+ };
327
+ // ---------------------------------------------------------------- API catalog
328
+ const sideEffectSchema = z.enum(['read', 'write', 'delete', 'read_with_writes']);
329
+ const smsModeSchema = z.enum(['always', 'conditional', 'never']);
330
+ const httpMethodSchema = z.enum(['GET', 'POST', 'PUT', 'PATCH', 'DELETE']);
331
+ export const apiEndpointSummarySchema = z.object({
332
+ id: z.string(),
333
+ method: httpMethodSchema,
334
+ path: z.string(),
335
+ module: z.string().optional(),
336
+ moduleTitle: z.string().optional(),
337
+ summary: z.string().optional(),
338
+ sideEffect: sideEffectSchema,
339
+ smsCodeRequired: smsModeSchema,
340
+ fileResponse: z.boolean(),
341
+ multipart: z.boolean(),
342
+ access: z.string().optional(),
343
+ conditional: z.boolean().optional(),
344
+ });
345
+ const apiSmsSchema = z.object({
346
+ mode: smsModeSchema,
347
+ when: z.string().optional(),
348
+ preVerify: z.boolean(),
349
+ credits: z.string().optional(),
350
+ });
351
+ export const apiEndpointListOutputSchema = {
352
+ query: z.string().optional(),
353
+ module: z.string().optional(),
354
+ method: httpMethodSchema.optional(),
355
+ sideEffect: sideEffectSchema.optional(),
356
+ page: z.number(),
357
+ size: z.number(),
358
+ total: z.number(),
359
+ totalPages: z.number(),
360
+ endpoints: z.array(apiEndpointSummarySchema),
361
+ nextAction: nextActionSchema.optional(),
362
+ };
363
+ export const apiModulesOutputSchema = {
364
+ modules: z.array(z.object({
365
+ code: z.string(),
366
+ title: z.string(),
367
+ description: z.string().optional(),
368
+ endpointCount: z.number(),
369
+ allowedCount: z.number(),
370
+ })),
371
+ nextAction: nextActionSchema.optional(),
372
+ };
373
+ export const apiEndpointDescriptionOutputSchema = {
374
+ endpoint: apiEndpointSummarySchema.extend({
375
+ accessReason: z.string().optional(),
376
+ permission: z.string().optional(),
377
+ moduleDescription: z.string().optional(),
378
+ responseKind: z.string().optional(),
379
+ doc: z.string().optional(),
380
+ webScreens: z.array(z.string()),
381
+ }),
382
+ sms: apiSmsSchema.nullable(),
383
+ parameters: z.array(z.object({
384
+ name: z.string(),
385
+ in: z.string(),
386
+ required: z.boolean(),
387
+ schema: z.record(z.string(), z.unknown()),
388
+ })),
389
+ requestBody: z.object({
390
+ required: z.boolean(),
391
+ validated: z.boolean().optional(),
392
+ contentType: z.string(),
393
+ schema: z.record(z.string(), z.unknown()),
394
+ }).nullable(),
395
+ notes: z.array(z.string()),
396
+ related: z.array(z.string()),
397
+ example: z.object({
398
+ tool: z.enum(['call_api_read', 'call_api_write']),
399
+ arguments: z.record(z.string(), z.unknown()),
400
+ }),
401
+ nextAction: nextActionSchema,
402
+ };
403
+ const apiTruncationSchema = z.object({
404
+ originalChars: z.number(),
405
+ arrayPath: z.string().optional(),
406
+ originalItems: z.number().optional(),
407
+ returnedItems: z.number().optional(),
408
+ hint: z.string(),
409
+ });
410
+ const apiFileSchema = z.object({
411
+ fileName: z.string(),
412
+ mimeType: z.string(),
413
+ sizeBytes: z.number(),
414
+ resourceUri: z.string(),
415
+ });
416
+ const apiResponseFields = {
417
+ responseType: z.enum(['json', 'file']),
418
+ status: z.number(),
419
+ messageCode: z.string().optional(),
420
+ message: z.string().optional(),
421
+ result: z.unknown().optional(),
422
+ truncated: z.boolean(),
423
+ truncation: apiTruncationSchema.optional(),
424
+ resultPreview: z.string().optional(),
425
+ file: apiFileSchema.optional(),
426
+ };
427
+ const apiRequestSchema = z.object({
428
+ method: httpMethodSchema,
429
+ path: z.string(),
430
+ });
431
+ export const apiReadOutputSchema = {
432
+ endpoint: apiEndpointSummarySchema,
433
+ request: apiRequestSchema,
434
+ ...apiResponseFields,
435
+ warnings: z.array(z.string()),
436
+ };
437
+ export const apiWriteOutputSchema = {
438
+ mode: z.enum(['preview', 'executed']),
439
+ endpoint: apiEndpointSummarySchema,
440
+ request: apiRequestSchema,
441
+ summary: z.string(),
442
+ validation: z.object({
443
+ checked: z.boolean(),
444
+ valid: z.boolean(),
445
+ errors: z.array(z.string()),
446
+ }),
447
+ sms: apiSmsSchema.nullable(),
448
+ smsVerified: z.boolean().optional(),
449
+ body: z.unknown().optional(),
450
+ files: z.array(z.object({
451
+ field: z.string(),
452
+ filename: z.string(),
453
+ contentType: z.string(),
454
+ sizeBytes: z.number(),
455
+ })),
456
+ warnings: z.array(z.string()),
457
+ ...Object.fromEntries(Object.entries(apiResponseFields).map(([key, schema]) => [key, schema.optional()])),
458
+ nextAction: nextActionSchema.optional(),
459
+ };
460
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ToolAnnotations } from '@modelcontextprotocol/sdk/types.js';
2
+ import { z } from 'zod';
3
+ /** Reads Teamso data; safe to retry. */
4
+ export declare const READ_ONLY: ToolAnnotations;
5
+ /** Creates something new or moves a workflow forward; never removes data. */
6
+ export declare const ADDITIVE_WRITE: ToolAnnotations;
7
+ /** Overwrites, deletes or irreversibly decides something. Confirm with the user first. */
8
+ export declare const DESTRUCTIVE_WRITE: ToolAnnotations;
9
+ export declare const otpCodeSchema: z.ZodString;
10
+ export declare const leaveDateSchema: (edge: "start" | "end") => z.ZodString;
11
+ /**
12
+ * Teamso record ids (UUIDs and similar). They travel as URL path segments, so
13
+ * anything beyond letters, digits, `-` and `_` (dot segments, slashes) is
14
+ * refused before a request is made.
15
+ */
16
+ export declare const idSchema: (description: string) => z.ZodString;
17
+ export declare const periodSchema: z.ZodString;
18
+ export declare const GOAL_STATUSES: readonly ["PENDING", "WAITING_APPROVAL", "APPROVED", "REVISED_AND_APPROVED", "IN_PROGRESS", "EVALUATING", "EVALUATED", "EVALUATION_WAITING_APPROVAL", "EVALUATION_IN_APPROVAL", "COMPLETED", "NOT_INCLUDED"];
19
+ export declare const SCALE_CRITERIA: readonly ["POINTS", "QUANTITY", "DAYS", "CURRENCY", "PERCENTAGE", "OTHER"];
20
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,wCAAwC;AACxC,eAAO,MAAM,SAAS,EAAE,eAKvB,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,cAAc,EAAE,eAK5B,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,iBAAiB,EAAE,eAK/B,CAAC;AAEF,eAAO,MAAM,aAAa,aAGiF,CAAC;AAE5G,eAAO,MAAM,eAAe,GAAI,MAAM,OAAO,GAAG,KAAK,gBAMuE,CAAC;AAE7H;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAa,MAAM,gBAKpB,CAAC;AAEzB,eAAO,MAAM,YAAY,aAIkF,CAAC;AAE5G,eAAO,MAAM,aAAa,8MAYhB,CAAC;AAEX,eAAO,MAAM,cAAc,4EAA6E,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { z } from 'zod';
2
+ /** Reads Teamso data; safe to retry. */
3
+ export const READ_ONLY = {
4
+ readOnlyHint: true,
5
+ destructiveHint: false,
6
+ idempotentHint: true,
7
+ openWorldHint: true,
8
+ };
9
+ /** Creates something new or moves a workflow forward; never removes data. */
10
+ export const ADDITIVE_WRITE = {
11
+ readOnlyHint: false,
12
+ destructiveHint: false,
13
+ idempotentHint: false,
14
+ openWorldHint: true,
15
+ };
16
+ /** Overwrites, deletes or irreversibly decides something. Confirm with the user first. */
17
+ export const DESTRUCTIVE_WRITE = {
18
+ readOnlyHint: false,
19
+ destructiveHint: true,
20
+ idempotentHint: false,
21
+ openWorldHint: true,
22
+ };
23
+ export const otpCodeSchema = z.string()
24
+ .trim()
25
+ .regex(/^\d{4,8}$/, 'otp_code must be the numeric code from the SMS')
26
+ .describe('The SMS verification code the user received after `request_leave_otp` (valid for 3 minutes).');
27
+ export const leaveDateSchema = (edge) => z.string()
28
+ .trim()
29
+ .min(10)
30
+ .max(25)
31
+ .describe(edge === 'start'
32
+ ? 'First day of leave, Turkey local time: `yyyy-MM-dd` (starts at the shift start, 09:00 by default) or `yyyy-MM-dd HH:mm`.'
33
+ : 'Last day of leave, Turkey local time: `yyyy-MM-dd` (ends at the shift end, 18:00 by default) or `yyyy-MM-dd HH:mm`.');
34
+ /**
35
+ * Teamso record ids (UUIDs and similar). They travel as URL path segments, so
36
+ * anything beyond letters, digits, `-` and `_` (dot segments, slashes) is
37
+ * refused before a request is made.
38
+ */
39
+ export const idSchema = (description) => z.string()
40
+ .trim()
41
+ .min(1)
42
+ .max(64)
43
+ .regex(/^[A-Za-z0-9][A-Za-z0-9_-]*$/, 'must be a Teamso id (letters, digits, - and _)')
44
+ .describe(description);
45
+ export const periodSchema = z.string()
46
+ .trim()
47
+ .min(1)
48
+ .max(200)
49
+ .describe('Performance period title exactly as returned by `list_performance_periods` (e.g. "Q4 2026").');
50
+ export const GOAL_STATUSES = [
51
+ 'PENDING',
52
+ 'WAITING_APPROVAL',
53
+ 'APPROVED',
54
+ 'REVISED_AND_APPROVED',
55
+ 'IN_PROGRESS',
56
+ 'EVALUATING',
57
+ 'EVALUATED',
58
+ 'EVALUATION_WAITING_APPROVAL',
59
+ 'EVALUATION_IN_APPROVAL',
60
+ 'COMPLETED',
61
+ 'NOT_INCLUDED',
62
+ ];
63
+ export const SCALE_CRITERIA = ['POINTS', 'QUANTITY', 'DAYS', 'CURRENCY', 'PERCENTAGE', 'OTHER'];
64
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,wCAAwC;AACxC,MAAM,CAAC,MAAM,SAAS,GAAoB;IACxC,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,KAAK;IACrB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE;KACpC,IAAI,EAAE;KACN,KAAK,CAAC,WAAW,EAAE,gDAAgD,CAAC;KACpE,QAAQ,CAAC,8FAA8F,CAAC,CAAC;AAE5G,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAqB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;KACjE,IAAI,EAAE;KACN,GAAG,CAAC,EAAE,CAAC;KACP,GAAG,CAAC,EAAE,CAAC;KACP,QAAQ,CAAC,IAAI,KAAK,OAAO;IACxB,CAAC,CAAC,0HAA0H;IAC5H,CAAC,CAAC,qHAAqH,CAAC,CAAC;AAE7H;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,WAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;KACxD,IAAI,EAAE;KACN,GAAG,CAAC,CAAC,CAAC;KACN,GAAG,CAAC,EAAE,CAAC;KACP,KAAK,CAAC,6BAA6B,EAAE,gDAAgD,CAAC;KACtF,QAAQ,CAAC,WAAW,CAAC,CAAC;AAEzB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE;KACnC,IAAI,EAAE;KACN,GAAG,CAAC,CAAC,CAAC;KACN,GAAG,CAAC,GAAG,CAAC;KACR,QAAQ,CAAC,8FAA8F,CAAC,CAAC;AAE5G,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,SAAS;IACT,kBAAkB;IAClB,UAAU;IACV,sBAAsB;IACtB,aAAa;IACb,YAAY;IACZ,WAAW;IACX,6BAA6B;IAC7B,wBAAwB;IACxB,WAAW;IACX,cAAc;CACN,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,CAAU,CAAC"}