@j0hanz/fetch-url-mcp 1.12.3 → 1.12.4
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/dist/lib/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAmB,MAAM,QAAQ,CAAC;AAYhD,OAAO,EAOL,KAAK,eAAe,EAGrB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAmB,MAAM,QAAQ,CAAC;AAYhD,OAAO,EAOL,KAAK,eAAe,EAGrB,MAAM,UAAU,CAAC;AAsvClB,UAAU,qBAAqB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAoKD,UAAU,YAAY;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AA6ND,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE/C;AACD,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAEA;AACD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEjE;AACD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAE9D;AACD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AACD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACb,qBAAqB,CAEvB;AACD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,QAAQ,EAClB,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CAEN;AACD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,MAAM,GACd,IAAI,CAEN;AACD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAE7D;AACD,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CASzC;AACD,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,CAEjB;AACD,wBAAsB,wBAAwB,CAC5C,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC;IACT,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAED"}
|
package/dist/lib/http.js
CHANGED
|
@@ -234,7 +234,9 @@ function isBinaryContent(buffer, encoding) {
|
|
|
234
234
|
return hasNullByte(buffer, BINARY_SCAN_LIMIT);
|
|
235
235
|
}
|
|
236
236
|
function createBinaryContentError(url) {
|
|
237
|
-
return new FetchError('
|
|
237
|
+
return new FetchError('Binary content detected', url, 500, {
|
|
238
|
+
reason: 'binary_content_detected',
|
|
239
|
+
});
|
|
238
240
|
}
|
|
239
241
|
// ═══════════════════════════════════════════════════════════════════
|
|
240
242
|
// FETCH ERRORS
|
|
@@ -258,13 +260,15 @@ function parseRetryAfter(header) {
|
|
|
258
260
|
function createFetchError(input, url) {
|
|
259
261
|
switch (input.kind) {
|
|
260
262
|
case 'canceled':
|
|
261
|
-
return new FetchError('Request
|
|
263
|
+
return new FetchError('Request canceled', url, 499, {
|
|
262
264
|
reason: 'aborted',
|
|
263
265
|
});
|
|
264
266
|
case 'aborted':
|
|
265
|
-
return new FetchError('Request
|
|
267
|
+
return new FetchError('Request aborted during response read', url, 499, {
|
|
268
|
+
reason: 'aborted',
|
|
269
|
+
});
|
|
266
270
|
case 'timeout':
|
|
267
|
-
return new FetchError(`Request
|
|
271
|
+
return new FetchError(`Request timed out after ${input.timeout}ms`, url, 504, { timeout: input.timeout });
|
|
268
272
|
case 'rate-limited':
|
|
269
273
|
return new FetchError('Too many requests', url, 429, {
|
|
270
274
|
retryAfter: parseRetryAfter(input.retryAfter),
|
|
@@ -274,9 +278,11 @@ function createFetchError(input, url) {
|
|
|
274
278
|
case 'too-many-redirects':
|
|
275
279
|
return new FetchError('Too many redirects', url);
|
|
276
280
|
case 'missing-redirect-location':
|
|
277
|
-
return new FetchError('Redirect
|
|
281
|
+
return new FetchError('Redirect missing Location header', url);
|
|
278
282
|
case 'network':
|
|
279
|
-
return new FetchError(
|
|
283
|
+
return new FetchError('Network error', url, undefined, {
|
|
284
|
+
message: input.message,
|
|
285
|
+
});
|
|
280
286
|
case 'unknown':
|
|
281
287
|
return new FetchError(input.message ?? 'Unexpected error', url);
|
|
282
288
|
default: {
|
package/dist/lib/mcp-interop.js
CHANGED
|
@@ -133,8 +133,8 @@ export function handleToolError(error, url, fallbackMessage = 'Operation failed'
|
|
|
133
133
|
}
|
|
134
134
|
const code = isAbortError(error) ? 'ABORTED' : 'FETCH_ERROR';
|
|
135
135
|
const message = error instanceof Error
|
|
136
|
-
?
|
|
137
|
-
: `${fallbackMessage}:
|
|
136
|
+
? error.message
|
|
137
|
+
: `${fallbackMessage}: unknown error`;
|
|
138
138
|
return createToolErrorResponse(message, url, { code });
|
|
139
139
|
}
|
|
140
140
|
function getNestedRecord(value, key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-contract.d.ts","sourceRoot":"","sources":["../../src/tasks/call-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;iBA4BzC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;AAE7E,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,GACf,uBAAuB,
|
|
1
|
+
{"version":3,"file":"call-contract.d.ts","sourceRoot":"","sources":["../../src/tasks/call-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;iBA4BzC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;AAE7E,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,GACf,uBAAuB,CAKzB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,CAAC,EAAE,mBAAmB,GACzB,mBAAmB,GAAG,SAAS,CAMjC;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,mBAAmB,GACzB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKzB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,YAAY,CAQd"}
|
|
@@ -35,7 +35,7 @@ export function parseExtendedCallToolRequest(request) {
|
|
|
35
35
|
const parsed = extendedCallToolRequestSchema.safeParse(request);
|
|
36
36
|
if (parsed.success)
|
|
37
37
|
return parsed.data;
|
|
38
|
-
throw createMcpError(ErrorCode.InvalidParams,
|
|
38
|
+
throw createMcpError(ErrorCode.InvalidParams, formatZodError(parsed.error));
|
|
39
39
|
}
|
|
40
40
|
export function sanitizeToolCallMeta(meta) {
|
|
41
41
|
if (!meta)
|
package/dist/tools/fetch-url.js
CHANGED
|
@@ -279,7 +279,7 @@ function createTaskCapableDescriptor() {
|
|
|
279
279
|
parseArguments: (args) => {
|
|
280
280
|
const parsed = TOOL_DEFINITION.inputSchema.safeParse(args);
|
|
281
281
|
if (!parsed.success) {
|
|
282
|
-
throw createMcpError(ErrorCode.InvalidParams,
|
|
282
|
+
throw createMcpError(ErrorCode.InvalidParams, formatZodError(parsed.error));
|
|
283
283
|
}
|
|
284
284
|
return parsed.data;
|
|
285
285
|
},
|
package/package.json
CHANGED