@wilnertech/halopsa-mcp-server 1.4.0 → 1.6.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.
- package/README.md +8 -1
- package/dist/api/client.d.ts +51 -2
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +124 -9
- package/dist/api/client.js.map +1 -1
- package/dist/api/errors.d.ts +16 -3
- package/dist/api/errors.d.ts.map +1 -1
- package/dist/api/errors.js +107 -30
- package/dist/api/errors.js.map +1 -1
- package/dist/cache/memory-cache.d.ts +1 -0
- package/dist/cache/memory-cache.d.ts.map +1 -1
- package/dist/cache/memory-cache.js +6 -0
- package/dist/cache/memory-cache.js.map +1 -1
- package/dist/cache/prewarm.d.ts +1 -0
- package/dist/cache/prewarm.d.ts.map +1 -1
- package/dist/cache/prewarm.js +8 -0
- package/dist/cache/prewarm.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/tools/batch-operations.js +10 -10
- package/dist/tools/batch-operations.js.map +1 -1
- package/dist/tools/budgets.d.ts.map +1 -1
- package/dist/tools/budgets.js +7 -4
- package/dist/tools/budgets.js.map +1 -1
- package/dist/tools/milestones.d.ts.map +1 -1
- package/dist/tools/milestones.js +12 -9
- package/dist/tools/milestones.js.map +1 -1
- package/dist/tools/registrations.d.ts +8 -3
- package/dist/tools/registrations.d.ts.map +1 -1
- package/dist/tools/registrations.js +21 -12
- package/dist/tools/registrations.js.map +1 -1
- package/dist/tools/ticket-actions.d.ts +46 -0
- package/dist/tools/ticket-actions.d.ts.map +1 -1
- package/dist/tools/ticket-actions.js +236 -32
- package/dist/tools/ticket-actions.js.map +1 -1
- package/dist/tools/ticket-reference-data.d.ts +70 -1
- package/dist/tools/ticket-reference-data.d.ts.map +1 -1
- package/dist/tools/ticket-reference-data.js +340 -11
- package/dist/tools/ticket-reference-data.js.map +1 -1
- package/dist/tools/tickets.d.ts +53 -0
- package/dist/tools/tickets.d.ts.map +1 -1
- package/dist/tools/tickets.js +394 -22
- package/dist/tools/tickets.js.map +1 -1
- package/dist/types/tickets.d.ts +127 -0
- package/dist/types/tickets.d.ts.map +1 -1
- package/dist/utils/formatter.d.ts +18 -0
- package/dist/utils/formatter.d.ts.map +1 -1
- package/dist/utils/formatter.js +108 -22
- package/dist/utils/formatter.js.map +1 -1
- package/package.json +1 -1
package/dist/tools/tickets.d.ts
CHANGED
|
@@ -98,6 +98,8 @@ export declare const CreateTicketArgsSchema: z.ZodObject<{
|
|
|
98
98
|
estimate: z.ZodOptional<z.ZodNumber>;
|
|
99
99
|
estimatedays: z.ZodOptional<z.ZodNumber>;
|
|
100
100
|
milestone_id: z.ZodOptional<z.ZodNumber>;
|
|
101
|
+
asset_id: z.ZodOptional<z.ZodNumber>;
|
|
102
|
+
asset_ids: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
|
|
101
103
|
format_options: z.ZodOptional<z.ZodObject<{
|
|
102
104
|
format: z.ZodOptional<z.ZodEnum<{
|
|
103
105
|
compact: "compact";
|
|
@@ -132,6 +134,8 @@ export declare const UpdateTicketArgsSchema: z.ZodObject<{
|
|
|
132
134
|
estimate: z.ZodOptional<z.ZodNumber>;
|
|
133
135
|
estimatedays: z.ZodOptional<z.ZodNumber>;
|
|
134
136
|
milestone_id: z.ZodOptional<z.ZodNumber>;
|
|
137
|
+
asset_id: z.ZodOptional<z.ZodNumber>;
|
|
138
|
+
asset_ids: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
|
|
135
139
|
format_options: z.ZodOptional<z.ZodObject<{
|
|
136
140
|
format: z.ZodOptional<z.ZodEnum<{
|
|
137
141
|
compact: "compact";
|
|
@@ -145,12 +149,26 @@ export declare const UpdateTicketArgsSchema: z.ZodObject<{
|
|
|
145
149
|
export declare const CloseTicketArgsSchema: z.ZodObject<{
|
|
146
150
|
ticket_id: z.ZodNumber;
|
|
147
151
|
resolution_note: z.ZodOptional<z.ZodString>;
|
|
152
|
+
resolution_outcome_id: z.ZodOptional<z.ZodNumber>;
|
|
148
153
|
}, z.core.$strip>;
|
|
149
154
|
export declare const DeleteTicketArgsSchema: z.ZodObject<{
|
|
150
155
|
ticket_id: z.ZodNumber;
|
|
151
156
|
reason: z.ZodString;
|
|
152
157
|
confirm_destructive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
153
158
|
}, z.core.$strip>;
|
|
159
|
+
export declare const ValidateCreateTicketArgsSchema: z.ZodObject<{
|
|
160
|
+
tickettype_id: z.ZodNumber;
|
|
161
|
+
fields: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
162
|
+
format_options: z.ZodOptional<z.ZodObject<{
|
|
163
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
164
|
+
compact: "compact";
|
|
165
|
+
standard: "standard";
|
|
166
|
+
detailed: "detailed";
|
|
167
|
+
}>>;
|
|
168
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
169
|
+
omit_empty: z.ZodOptional<z.ZodBoolean>;
|
|
170
|
+
}, z.core.$strip>>;
|
|
171
|
+
}, z.core.$strip>;
|
|
154
172
|
export declare function listTickets(client: HaloPSAAPIClient, args: z.infer<typeof ListTicketsArgsSchema>): Promise<string>;
|
|
155
173
|
export declare function getTicket(client: HaloPSAAPIClient, args: z.infer<typeof GetTicketArgsSchema>): Promise<string>;
|
|
156
174
|
export declare function searchTickets(client: HaloPSAAPIClient, args: z.infer<typeof SearchTicketsArgsSchema>): Promise<string>;
|
|
@@ -182,6 +200,40 @@ export declare function updateTicket(client: HaloPSAAPIClient, args: z.infer<typ
|
|
|
182
200
|
*/
|
|
183
201
|
export declare function deleteTicket(client: HaloPSAAPIClient, args: z.infer<typeof DeleteTicketArgsSchema>): Promise<string>;
|
|
184
202
|
export declare function closeTicket(client: HaloPSAAPIClient, args: z.infer<typeof CloseTicketArgsSchema>): Promise<string>;
|
|
203
|
+
/**
|
|
204
|
+
* Map a Halo-internal field name to the equivalent MCP parameter name.
|
|
205
|
+
*
|
|
206
|
+
* Halo uses `category2`..`category6` internally while the MCP exposes
|
|
207
|
+
* `category_1`..`category_5`. Custom fields (CF* names) are not mapped to a
|
|
208
|
+
* standard param — they are returned in a separate `required_customfields`
|
|
209
|
+
* array. All other names are returned unchanged.
|
|
210
|
+
*
|
|
211
|
+
* Returns null for custom fields (CF* prefix) — callers handle these
|
|
212
|
+
* separately.
|
|
213
|
+
*/
|
|
214
|
+
export declare function mcpParamForHaloField(haloName: string): string | null;
|
|
215
|
+
/**
|
|
216
|
+
* Pure-local validation of a proposed ticket payload against the cached
|
|
217
|
+
* tickettype schema. No write is performed — this is a dry-run helper.
|
|
218
|
+
*
|
|
219
|
+
* Required-field detection logic:
|
|
220
|
+
* Halo's TicketType details response includes a `fields[]` array where each
|
|
221
|
+
* entry has a `fieldinfo` sub-object. The `mandatory` flag on `fieldinfo`
|
|
222
|
+
* indicates a required field. Additionally, `technew` on `fieldinfo` where
|
|
223
|
+
* the value equals 3 indicates "required for tech/API create". When either
|
|
224
|
+
* condition is true, the field is counted as required.
|
|
225
|
+
*
|
|
226
|
+
* Fields nested inside `group.fields[]` or `fields[]` (both group-nesting
|
|
227
|
+
* shapes Halo uses across versions) are also walked — not just top-level.
|
|
228
|
+
*
|
|
229
|
+
* Halo-internal category field names (category2..category6) are translated
|
|
230
|
+
* to MCP equivalents (category_1..category_5). Custom fields (CF* prefix)
|
|
231
|
+
* are reported in a separate `required_customfields` array.
|
|
232
|
+
*
|
|
233
|
+
* Standard ticket fields (summary, client_id, tickettype_id) are always
|
|
234
|
+
* required regardless of the tickettype schema.
|
|
235
|
+
*/
|
|
236
|
+
export declare function validateCreateTicket(client: HaloPSAAPIClient, args: z.infer<typeof ValidateCreateTicketArgsSchema>): Promise<string>;
|
|
185
237
|
export declare const listTicketsTool: ZodToolDefinition;
|
|
186
238
|
export declare const getTicketTool: ZodToolDefinition;
|
|
187
239
|
export declare const searchTicketsTool: ZodToolDefinition;
|
|
@@ -189,4 +241,5 @@ export declare const createTicketTool: ZodToolDefinition;
|
|
|
189
241
|
export declare const updateTicketTool: ZodToolDefinition;
|
|
190
242
|
export declare const closeTicketTool: ZodToolDefinition;
|
|
191
243
|
export declare const deleteTicketTool: ZodToolDefinition;
|
|
244
|
+
export declare const validateCreateTicketTool: ZodToolDefinition;
|
|
192
245
|
//# sourceMappingURL=tickets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.d.ts","sourceRoot":"","sources":["../../src/tools/tickets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"tickets.d.ts","sourceRoot":"","sources":["../../src/tools/tickets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAiCvD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwChC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;iBAUlC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6CjC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmCjC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;iBAOhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;iBAQjC,CAAC;AAGH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;iBAMzC,CAAC;AA0HH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC1C,OAAO,CAAC,MAAM,CAAC,CA2CjB;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GACxC,OAAO,CAAC,MAAM,CAAC,CAcjB;AAED,wBAAsB,aAAa,CACjC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,GAC5C,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC,CAoDjB;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC,CAmIjB;AAgBD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC,CA8HjB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC1C,OAAO,CAAC,MAAM,CAAC,CA+IjB;AA+BD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBpE;AA8FD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,GACnD,OAAO,CAAC,MAAM,CAAC,CAkFjB;AAMD,eAAO,MAAM,eAAe,EAAE,iBAK7B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,iBAK3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,iBAK/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,iBAK9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,iBAK9B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,iBAK7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,iBAK9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,iBAMtC,CAAC"}
|