@convertcom/mcp-server 0.0.1-beta.6 → 0.0.1-beta.8

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.
@@ -1 +1 @@
1
- export {};
1
+ export declare const API_BASE_URL: string;
@@ -1,35 +1,29 @@
1
1
  import axios from 'axios';
2
2
  import crypto from 'crypto';
3
+ export const API_BASE_URL = process.env.API_BASE_URL || 'https://api.convert.com/api/v2';
3
4
  axios.defaults.headers.post['Content-Type'] = 'application/json';
4
5
  axios.defaults.headers.put['Content-Type'] = 'application/json';
5
- //axios.defaults.headers.get['Content-Type'] = 'application/json';
6
6
  axios.defaults.transformRequest = [
7
7
  function (data, headers) {
8
- //console.warn('data', data);
9
8
  if (!data) {
10
9
  data = {};
11
10
  }
12
11
  return JSON.stringify(data);
13
12
  },
14
13
  ];
15
- // Add a request interceptor to set the 'x-convert-nonce' header
16
14
  axios.interceptors.request.use((config) => {
17
- let applicationID = process.env.CONVERT_API_KEY;
18
- let applicationSecretKey = process.env.CONVERT_API_SECRET;
19
- let expires = 60; // In seconds. Request lifetime. If your requests take much time, try to increase this value
20
- // URL already includes query string from executor.ts - use it directly for signing
21
- let requestURL = config.url;
22
- // It's already stringified in raw body in Postman but make sure it stringified correctly without whitespaces etc
23
- let requestBody = config.data ? JSON.stringify(config.data) : '{}';
24
- //let expiresTimestamp = '1747916037.342'; //Date.now() / 1000 + expires;
25
- let expiresTimestamp = Date.now() / 1000 + expires;
26
- let signString = applicationID + '\n' + expiresTimestamp + '\n' + requestURL + '\n' + requestBody;
27
- let hash = crypto.createHmac('sha256', applicationSecretKey).update(signString).digest('hex');
28
- let authorization = 'Convert-HMAC-SHA256 Signature=' + hash;
15
+ const applicationID = process.env.CONVERT_API_KEY;
16
+ const applicationSecretKey = process.env.CONVERT_API_SECRET;
17
+ const expires = 60;
18
+ const requestURL = config.url;
19
+ const requestBody = config.data ? JSON.stringify(config.data) : '{}';
20
+ const expiresTimestamp = Date.now() / 1000 + expires;
21
+ const signString = applicationID + '\n' + expiresTimestamp + '\n' + requestURL + '\n' + requestBody;
22
+ const hash = crypto.createHmac('sha256', applicationSecretKey).update(signString).digest('hex');
23
+ const authorization = 'Convert-HMAC-SHA256 Signature=' + hash;
29
24
  config.headers['Convert-Application-ID'] = applicationID;
30
25
  config.headers['Expires'] = expiresTimestamp;
31
26
  config.headers['Authorization'] = authorization;
32
- // console.warn('config.headers:', config.headers);
33
27
  return config;
34
28
  }, (error) => {
35
29
  return Promise.reject(error);
@@ -1 +1 @@
1
- {"version":3,"file":"api-config.js","sourceRoot":"","sources":["../src/api-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;AACjE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;AAChE,kEAAkE;AAClE,KAAK,CAAC,QAAQ,CAAC,gBAAgB,GAAG;IAChC,UAAU,IAAS,EAAE,OAAY;QAC/B,6BAA6B;QAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC;AAEF,gEAAgE;AAChE,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAC5B,CAAC,MAAM,EAAE,EAAE;IACT,IAAI,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAChD,IAAI,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,kBAA4B,CAAC;IACpE,IAAI,OAAO,GAAG,EAAE,CAAC,CAAC,4FAA4F;IAE9G,mFAAmF;IACnF,IAAI,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;IAE5B,iHAAiH;IACjH,IAAI,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,yEAAyE;IACzE,IAAI,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,OAAO,CAAC;IAEnD,IAAI,UAAU,GACZ,aAAa,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,GAAG,WAAW,CAAC;IAEnF,IAAI,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9F,IAAI,aAAa,GAAG,gCAAgC,GAAG,IAAI,CAAC;IAE5D,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,aAAa,CAAC;IACzD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC;IAC7C,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;IAEhD,mDAAmD;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;IACR,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"api-config.js","sourceRoot":"","sources":["../src/api-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,gCAAgC,CAAC;AAEzF,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;AACjE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;AAChE,KAAK,CAAC,QAAQ,CAAC,gBAAgB,GAAG;IAChC,UAAU,IAAS,EAAE,OAAY;QAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC;AAEF,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAC5B,CAAC,MAAM,EAAE,EAAE;IACT,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAClD,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,kBAA4B,CAAC;IACtE,MAAM,OAAO,GAAG,EAAE,CAAC;IAEnB,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;IAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,OAAO,CAAC;IAErD,MAAM,UAAU,GACd,aAAa,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,GAAG,WAAW,CAAC;IAEnF,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChG,MAAM,aAAa,GAAG,gCAAgC,GAAG,IAAI,CAAC;IAE9D,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,aAAa,CAAC;IACzD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC;IAC7C,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;IAEhD,OAAO,MAAM,CAAC;AAChB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;IACR,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CACF,CAAC"}
@@ -1,5 +1,3 @@
1
1
  import { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
2
- import './api-config.js';
3
- type JsonObject = Record<string, any>;
2
+ import { type JsonObject } from './shared.js';
4
3
  export declare function executeToolByName(toolName: string, toolArgs: JsonObject): Promise<CallToolResult>;
5
- export {};
package/build/executor.js CHANGED
@@ -1,33 +1,58 @@
1
- import { z, ZodError } from 'zod';
2
- import { jsonSchemaToZod } from 'json-schema-to-zod';
3
1
  import axios from 'axios';
2
+ import { Ajv2020 } from 'ajv/dist/2020.js';
4
3
  import { toolDefinitionMap } from './tools.js';
5
- import './api-config.js';
4
+ import { API_BASE_URL } from './api-config.js';
5
+ import { JSON_SCHEMA_DRAFT_2020_12, pathParamsFromTemplate } from './shared.js';
6
+ const MAX_API_ERROR_DETAIL_LEN = 2000;
7
+ const MAX_SCHEMA_ERRORS_TO_SHOW = 8;
8
+ const validatorCache = new Map();
9
+ const ajv = new Ajv2020({
10
+ allErrors: true,
11
+ strict: false,
12
+ allowUnionTypes: true,
13
+ validateFormats: false,
14
+ });
15
+ function resolvePathTemplate(pathTemplate, args) {
16
+ const params = pathParamsFromTemplate(pathTemplate);
17
+ let resolvedPath = pathTemplate;
18
+ const missing = [];
19
+ for (const name of params) {
20
+ const value = args[name];
21
+ if (typeof value === 'undefined' || value === null) {
22
+ missing.push(name);
23
+ continue;
24
+ }
25
+ resolvedPath = resolvedPath.replace(`{${name}}`, encodeURIComponent(String(value)));
26
+ }
27
+ return { resolvedPath, missing };
28
+ }
6
29
  export async function executeToolByName(toolName, toolArgs) {
7
30
  const toolDefinition = toolDefinitionMap.get(toolName);
8
31
  if (!toolDefinition) {
9
- return { content: [{ type: 'text', text: 'Error: Unknown tool requested: ' + toolName }] };
32
+ return {
33
+ isError: true,
34
+ content: [{ type: 'text', text: 'Error: Unknown tool requested: ' + toolName }],
35
+ structuredContent: { error: `Unknown tool: ${toolName}` },
36
+ };
10
37
  }
11
38
  return await executeApiTool(toolName, toolDefinition, toolArgs);
12
39
  }
13
40
  async function executeApiTool(toolName, definition, toolArgs) {
14
41
  try {
15
- let validatedArgs;
16
- try {
17
- const zodSchema = getZodSchemaFromJsonSchema(definition.inputSchema, toolName);
18
- const argsToParse = (typeof toolArgs === 'object' && toolArgs !== null) ? toolArgs : {};
19
- validatedArgs = zodSchema.parse(argsToParse);
20
- }
21
- catch (error) {
22
- if (error instanceof ZodError) {
23
- const validationErrorMessage = 'Invalid arguments. Common issue: Array parameters (like "include", "expand") must be passed as arrays, even for single values. Example: {"query": {"include": ["goals"]}} not {"query": {"include": "goals"}}. Details: ' + JSON.stringify(error.errors, null, 2);
24
- return { content: [{ type: 'text', text: validationErrorMessage }] };
25
- }
26
- else {
27
- const errorMessage = error instanceof Error ? error.message : String(error);
28
- return { content: [{ type: 'text', text: 'Internal error during validation setup: ' + errorMessage }] };
29
- }
42
+ const argsToValidate = (typeof toolArgs === 'object' && toolArgs !== null) ? toolArgs : {};
43
+ const validation = validateToolArgs(toolName, definition.inputSchema, argsToValidate);
44
+ if (!validation.ok) {
45
+ return {
46
+ isError: true,
47
+ content: [{ type: 'text', text: validation.message }],
48
+ structuredContent: {
49
+ error: 'InvalidArguments',
50
+ tool: toolName,
51
+ issues: validation.errors,
52
+ },
53
+ };
30
54
  }
55
+ const validatedArgs = argsToValidate;
31
56
  let urlPath = definition.pathTemplate;
32
57
  const queryParams = {};
33
58
  const headers = { 'Accept': 'application/json' };
@@ -53,11 +78,14 @@ async function executeApiTool(toolName, definition, toolArgs) {
53
78
  }
54
79
  }
55
80
  });
56
- if (urlPath.includes('{')) {
57
- throw new Error(`Failed to resolve path parameters: ${urlPath}`);
81
+ const resolved = resolvePathTemplate(urlPath, validatedArgs);
82
+ urlPath = resolved.resolvedPath;
83
+ if (resolved.missing.length) {
84
+ const availableArgKeys = Object.keys(validatedArgs).sort().join(', ') || '(none)';
85
+ throw new Error(`Failed to resolve path parameters: missing ${resolved.missing.join(', ')} for template ${definition.pathTemplate}. Provided keys: ${availableArgKeys}`);
58
86
  }
59
87
  // Build full URL with query string directly - don't rely on axios params serialization
60
- let fullUrl = (process.env.API_BASE_URL || 'https://api.convert.com/api/v2') + urlPath;
88
+ let fullUrl = API_BASE_URL + urlPath;
61
89
  if (Object.keys(queryParams).length > 0) {
62
90
  // Serialize query params with bracket notation for arrays
63
91
  const parts = [];
@@ -87,7 +115,8 @@ async function executeApiTool(toolName, definition, toolArgs) {
87
115
  const response = await axios(config);
88
116
  let responseText = '';
89
117
  const contentType = response.headers['content-type']?.toLowerCase() || '';
90
- if (contentType.includes('application/json') && typeof response.data === 'object' && response.data !== null) {
118
+ const isJsonResponse = contentType.includes('application/json') && typeof response.data === 'object' && response.data !== null;
119
+ if (isJsonResponse) {
91
120
  try {
92
121
  responseText = JSON.stringify(response.data, null, 2);
93
122
  }
@@ -104,7 +133,12 @@ async function executeApiTool(toolName, definition, toolArgs) {
104
133
  else {
105
134
  responseText = `(Status: ${response.status} - No body content)`;
106
135
  }
107
- return { content: [{ type: 'text', text: `API Response (Status: ${response.status}):\n${responseText}` }] };
136
+ return {
137
+ content: [{ type: 'text', text: `API Response (Status: ${response.status}):\n${responseText}` }],
138
+ structuredContent: isJsonResponse
139
+ ? { status: response.status, data: response.data }
140
+ : { status: response.status },
141
+ };
108
142
  }
109
143
  catch (error) {
110
144
  let errorMessage;
@@ -118,29 +152,30 @@ async function executeApiTool(toolName, definition, toolArgs) {
118
152
  errorMessage = `Unexpected error: ${String(error)}`;
119
153
  }
120
154
  console.error(`Error during execution: ${errorMessage}`);
121
- return { content: [{ type: 'text', text: errorMessage }] };
155
+ return {
156
+ isError: true,
157
+ content: [{ type: 'text', text: errorMessage }],
158
+ structuredContent: { error: errorMessage },
159
+ };
122
160
  }
123
161
  }
124
162
  function formatApiError(error) {
125
163
  let message = 'API request failed.';
126
164
  if (error.response) {
127
- message = `API Error: Status ${error.response.status} (${error.response.statusText || 'Status text not available'}). `;
128
- const responseData = error.response.data;
129
- const MAX_LEN = 200;
130
- if (typeof responseData === 'string') {
131
- message += `Response: ${responseData.substring(0, MAX_LEN)}${responseData.length > MAX_LEN ? '...' : ''}`;
165
+ const method = error.config?.method?.toUpperCase() || 'UNKNOWN_METHOD';
166
+ const url = error.config?.url || 'UNKNOWN_URL';
167
+ const statusText = error.response.statusText || 'Status text not available';
168
+ const requestId = getRequestId(error.response.headers);
169
+ message = `API Error: ${method} ${url} -> Status ${error.response.status} (${statusText}).`;
170
+ if (requestId) {
171
+ message += ` Request ID: ${requestId}.`;
132
172
  }
133
- else if (responseData) {
134
- try {
135
- const jsonString = JSON.stringify(responseData);
136
- message += `Response: ${jsonString.substring(0, MAX_LEN)}${jsonString.length > MAX_LEN ? '...' : ''}`;
137
- }
138
- catch {
139
- message += 'Response: [Could not serialize data]';
140
- }
173
+ const responseDetails = extractApiErrorDetails(error.response.data);
174
+ if (responseDetails) {
175
+ message += ` Details: ${responseDetails}`;
141
176
  }
142
177
  else {
143
- message += 'No response body received.';
178
+ message += ' No response body received.';
144
179
  }
145
180
  }
146
181
  else if (error.request) {
@@ -149,25 +184,174 @@ function formatApiError(error) {
149
184
  message += ` (Code: ${error.code})`;
150
185
  }
151
186
  else {
152
- message += `API Request Setup Error: ${error.message}`;
187
+ message = `API Request Setup Error: ${error.message}`;
153
188
  }
154
189
  return message;
155
190
  }
156
- function getZodSchemaFromJsonSchema(jsonSchema, toolName) {
157
- if (typeof jsonSchema !== 'object' || jsonSchema === null) {
158
- return z.object({}).passthrough();
191
+ function validateToolArgs(toolName, rawSchema, args) {
192
+ const validator = getOrCreateValidator(toolName, rawSchema);
193
+ if (!validator) {
194
+ return {
195
+ ok: false,
196
+ errors: [],
197
+ message: `Internal schema error: could not compile input schema for tool "${toolName}".`,
198
+ };
159
199
  }
200
+ const valid = validator(args);
201
+ if (valid)
202
+ return { ok: true };
203
+ const errors = (validator.errors || []);
204
+ const issueSummary = summarizeSchemaErrors(errors);
205
+ const arrayHint = hasIncludeExpandArrayIssue(errors)
206
+ ? '\nHint: Array parameters (like "include" and "expand") must be arrays, even for single values. Example: {"query":{"include":["goals"],"expand":["goals"]}}.'
207
+ : '';
208
+ return {
209
+ ok: false,
210
+ errors,
211
+ message: `Invalid arguments for tool "${toolName}".\n${issueSummary}${arrayHint}`,
212
+ };
213
+ }
214
+ function getOrCreateValidator(toolName, rawSchema) {
215
+ const cached = validatorCache.get(toolName);
216
+ if (cached)
217
+ return cached;
218
+ const fallbackSchema = {
219
+ $schema: JSON_SCHEMA_DRAFT_2020_12,
220
+ type: 'object',
221
+ additionalProperties: true,
222
+ };
223
+ const normalized = normalizeSchema(rawSchema);
224
+ const schema = (normalized && typeof normalized === 'object') ? normalized : fallbackSchema;
225
+ if (!schema.$schema)
226
+ schema.$schema = JSON_SCHEMA_DRAFT_2020_12;
160
227
  try {
161
- const zodSchemaString = jsonSchemaToZod(jsonSchema);
162
- const zodSchema = eval(zodSchemaString);
163
- if (typeof zodSchema?.parse !== 'function') {
164
- throw new Error('Eval did not produce a valid Zod schema.');
228
+ const validator = ajv.compile(schema);
229
+ validatorCache.set(toolName, validator);
230
+ return validator;
231
+ }
232
+ catch (error) {
233
+ const message = error instanceof Error ? error.message : String(error);
234
+ console.error(`Failed to compile JSON schema for '${toolName}': ${message}`);
235
+ return null;
236
+ }
237
+ }
238
+ function normalizeSchema(input) {
239
+ const seen = new WeakMap();
240
+ function walk(node) {
241
+ if (!node || typeof node !== 'object')
242
+ return node;
243
+ if (seen.has(node))
244
+ return seen.get(node);
245
+ if (Array.isArray(node)) {
246
+ const arr = [];
247
+ seen.set(node, arr);
248
+ for (const item of node)
249
+ arr.push(walk(item));
250
+ return arr;
251
+ }
252
+ const out = {};
253
+ seen.set(node, out);
254
+ for (const [key, value] of Object.entries(node)) {
255
+ out[key] = walk(value);
256
+ }
257
+ if (out.nullable === true) {
258
+ const type = out.type;
259
+ if (typeof type === 'string') {
260
+ out.type = [type, 'null'];
261
+ }
262
+ else if (Array.isArray(type)) {
263
+ const typeSet = new Set(type);
264
+ typeSet.add('null');
265
+ out.type = [...typeSet];
266
+ }
267
+ else if (Array.isArray(out.oneOf)) {
268
+ out.oneOf = [...out.oneOf, { type: 'null' }];
269
+ }
270
+ else if (Array.isArray(out.anyOf)) {
271
+ out.anyOf = [...out.anyOf, { type: 'null' }];
272
+ }
273
+ delete out.nullable;
165
274
  }
166
- return zodSchema;
275
+ return out;
276
+ }
277
+ return walk(input);
278
+ }
279
+ function summarizeSchemaErrors(errors) {
280
+ if (!errors.length)
281
+ return 'Validation failed with no issue details.';
282
+ const lines = errors.slice(0, MAX_SCHEMA_ERRORS_TO_SHOW).map((issue) => {
283
+ return `- ${errorPath(issue)}: ${issue.message || 'Invalid value'}`;
284
+ });
285
+ if (errors.length > MAX_SCHEMA_ERRORS_TO_SHOW) {
286
+ lines.push(`- ... ${errors.length - MAX_SCHEMA_ERRORS_TO_SHOW} more issue(s)`);
167
287
  }
168
- catch (err) {
169
- console.error(`Failed to generate/evaluate Zod schema for '${toolName}':`, err);
170
- return z.object({}).passthrough();
288
+ return lines.join('\n');
289
+ }
290
+ function errorPath(issue) {
291
+ const pointerPath = issue.instancePath ? issue.instancePath.slice(1).replace(/\//g, '.') : '(root)';
292
+ if (issue.keyword === 'required') {
293
+ const missing = issue.params.missingProperty;
294
+ if (missing) {
295
+ return pointerPath === '(root)' ? missing : `${pointerPath}.${missing}`;
296
+ }
297
+ }
298
+ return pointerPath;
299
+ }
300
+ function hasIncludeExpandArrayIssue(errors) {
301
+ return errors.some((issue) => {
302
+ const missing = issue.keyword === 'required'
303
+ ? issue.params.missingProperty
304
+ : undefined;
305
+ const requiredPath = missing ? `${issue.instancePath}/${missing}` : issue.instancePath;
306
+ return /\/(include|expand)(\/|$)/.test(requiredPath || '');
307
+ });
308
+ }
309
+ function getRequestId(headers) {
310
+ if (!headers || typeof headers !== 'object')
311
+ return null;
312
+ const candidates = ['x-request-id', 'x-correlation-id', 'request-id'];
313
+ for (const key of candidates) {
314
+ const value = headers[key];
315
+ if (typeof value === 'string' && value.trim())
316
+ return value.trim();
317
+ if (Array.isArray(value) && value.length > 0 && typeof value[0] === 'string')
318
+ return value[0].trim();
319
+ }
320
+ return null;
321
+ }
322
+ function truncate(value, maxLen) {
323
+ if (value.length <= maxLen)
324
+ return value;
325
+ return `${value.slice(0, maxLen)}...`;
326
+ }
327
+ function extractApiErrorDetails(responseData) {
328
+ if (typeof responseData === 'undefined' || responseData === null)
329
+ return null;
330
+ if (typeof responseData === 'string')
331
+ return truncate(responseData, MAX_API_ERROR_DETAIL_LEN);
332
+ if (typeof responseData === 'object') {
333
+ const data = responseData;
334
+ const preferredKeys = ['message', 'error', 'errors', 'details', 'validation_errors'];
335
+ for (const key of preferredKeys) {
336
+ const value = data[key];
337
+ if (typeof value === 'string' && value.trim())
338
+ return truncate(value.trim(), MAX_API_ERROR_DETAIL_LEN);
339
+ if (Array.isArray(value) || (value && typeof value === 'object')) {
340
+ try {
341
+ return truncate(JSON.stringify(value), MAX_API_ERROR_DETAIL_LEN);
342
+ }
343
+ catch {
344
+ return '[Could not serialize error details]';
345
+ }
346
+ }
347
+ }
348
+ try {
349
+ return truncate(JSON.stringify(data), MAX_API_ERROR_DETAIL_LEN);
350
+ }
351
+ catch {
352
+ return '[Could not serialize error response]';
353
+ }
171
354
  }
355
+ return truncate(String(responseData), MAX_API_ERROR_DETAIL_LEN);
172
356
  }
173
357
  //# sourceMappingURL=executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -3,16 +3,8 @@
3
3
  * MCP Server generated from OpenAPI spec for convert-api v2.0.0
4
4
  * Generated on: 2025-06-05T16:52:41.275Z
5
5
  */
6
- import './api-config.js';
7
6
  /**
8
7
  * Server configuration
9
8
  */
10
9
  export declare const SERVER_NAME = "convert-api";
11
10
  export declare const SERVER_VERSION = "2.0.0";
12
- export declare const API_BASE_URL = "https://api.convert.com/api/v2";
13
- /**
14
- * Formats API errors for better readability
15
- *
16
- * @param error Axios error
17
- * @returns Formatted error message
18
- */