agentfootprint 9.80.0 → 9.81.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/AGENTS.md +20 -0
- package/CHANGELOG.md +109 -0
- package/CLAUDE.md +2 -0
- package/dist/esm/lib/mcp/connectionRefusals.d.ts +30 -0
- package/dist/esm/lib/mcp/connectionRefusals.js +110 -0
- package/dist/esm/lib/mcp/connectionRefusals.js.map +1 -0
- package/dist/esm/lib/mcp/index.d.ts +3 -2
- package/dist/esm/lib/mcp/index.js +4 -0
- package/dist/esm/lib/mcp/index.js.map +1 -1
- package/dist/esm/lib/mcp/mcpClient.d.ts +18 -5
- package/dist/esm/lib/mcp/mcpClient.js +102 -38
- package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
- package/dist/esm/lib/mcp/mcpServe.js +45 -13
- package/dist/esm/lib/mcp/mcpServe.js.map +1 -1
- package/dist/esm/lib/mcp/sdkLoadFailure.d.ts +60 -0
- package/dist/esm/lib/mcp/sdkLoadFailure.js +74 -0
- package/dist/esm/lib/mcp/sdkLoadFailure.js.map +1 -0
- package/dist/esm/lib/mcp/throttleRetry.d.ts +20 -1
- package/dist/esm/lib/mcp/throttleRetry.js +20 -1
- package/dist/esm/lib/mcp/throttleRetry.js.map +1 -1
- package/dist/esm/lib/mcp/transportUrl.d.ts +30 -0
- package/dist/esm/lib/mcp/transportUrl.js +71 -0
- package/dist/esm/lib/mcp/transportUrl.js.map +1 -0
- package/dist/esm/lib/mcp/types.d.ts +143 -13
- package/dist/esm/tool-providers/index.d.ts +2 -2
- package/dist/esm/tool-providers/index.js +6 -1
- package/dist/esm/tool-providers/index.js.map +1 -1
- package/dist/lib/mcp/connectionRefusals.js +114 -0
- package/dist/lib/mcp/connectionRefusals.js.map +1 -0
- package/dist/lib/mcp/index.js +6 -1
- package/dist/lib/mcp/index.js.map +1 -1
- package/dist/lib/mcp/mcpClient.js +102 -38
- package/dist/lib/mcp/mcpClient.js.map +1 -1
- package/dist/lib/mcp/mcpServe.js +45 -13
- package/dist/lib/mcp/mcpServe.js.map +1 -1
- package/dist/lib/mcp/sdkLoadFailure.js +78 -0
- package/dist/lib/mcp/sdkLoadFailure.js.map +1 -0
- package/dist/lib/mcp/throttleRetry.js +20 -1
- package/dist/lib/mcp/throttleRetry.js.map +1 -1
- package/dist/lib/mcp/transportUrl.js +75 -0
- package/dist/lib/mcp/transportUrl.js.map +1 -0
- package/dist/tool-providers/index.js +6 -1
- package/dist/tool-providers/index.js.map +1 -1
- package/dist/types/lib/mcp/connectionRefusals.d.ts +31 -0
- package/dist/types/lib/mcp/connectionRefusals.d.ts.map +1 -0
- package/dist/types/lib/mcp/index.d.ts +3 -2
- package/dist/types/lib/mcp/index.d.ts.map +1 -1
- package/dist/types/lib/mcp/mcpClient.d.ts +18 -5
- package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
- package/dist/types/lib/mcp/mcpServe.d.ts.map +1 -1
- package/dist/types/lib/mcp/sdkLoadFailure.d.ts +61 -0
- package/dist/types/lib/mcp/sdkLoadFailure.d.ts.map +1 -0
- package/dist/types/lib/mcp/throttleRetry.d.ts +20 -1
- package/dist/types/lib/mcp/throttleRetry.d.ts.map +1 -1
- package/dist/types/lib/mcp/transportUrl.d.ts +31 -0
- package/dist/types/lib/mcp/transportUrl.d.ts.map +1 -0
- package/dist/types/lib/mcp/types.d.ts +143 -13
- package/dist/types/lib/mcp/types.d.ts.map +1 -1
- package/dist/types/tool-providers/index.d.ts +2 -2
- package/dist/types/tool-providers/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/lib/mcp/mcpServe.js
CHANGED
|
@@ -90,6 +90,7 @@ const types_js_1 = require("../../identity/types.js");
|
|
|
90
90
|
const capability_js_1 = require("../../artifacts/capability.js");
|
|
91
91
|
const wants_js_1 = require("../../artifacts/wants.js");
|
|
92
92
|
const lazyRequire_js_1 = require("../lazyRequire.js");
|
|
93
|
+
const sdkLoadFailure_js_1 = require("./sdkLoadFailure.js");
|
|
93
94
|
const toolExtras_js_1 = require("./toolExtras.js");
|
|
94
95
|
const runChain_js_1 = require("../../core/agent/middleware/runChain.js");
|
|
95
96
|
const DEFAULT_SERVER_NAME = 'agentfootprint';
|
|
@@ -426,15 +427,31 @@ function toolError(message) {
|
|
|
426
427
|
return { content: [{ type: 'text', text: message }], isError: true };
|
|
427
428
|
}
|
|
428
429
|
// ─── SDK construction (lazy require) ───────────────────────────────
|
|
430
|
+
/**
|
|
431
|
+
* What to say when the LOADER, not the package, is the thing that is missing.
|
|
432
|
+
*
|
|
433
|
+
* `mcpServe` has no browser-shaped answer to offer: it listens on stdio or on a
|
|
434
|
+
* Node HTTP socket, and neither exists in a browser. So the honest sentence
|
|
435
|
+
* names the runtime instead of inventing a seam — the point of the classifier
|
|
436
|
+
* is to stop telling people to install a package they already have, not to
|
|
437
|
+
* promise this direction is portable.
|
|
438
|
+
*/
|
|
439
|
+
const SERVE_IS_A_NODE_ROLE = 'mcpServe listens on stdio or on a Node HTTP socket, so this direction of MCP ' +
|
|
440
|
+
'cannot run in a browser at all.';
|
|
429
441
|
async function resolveServer(name, version) {
|
|
430
442
|
let mod;
|
|
431
443
|
try {
|
|
432
444
|
mod = (0, lazyRequire_js_1.lazyRequire)('@modelcontextprotocol/sdk/server/index.js');
|
|
433
445
|
}
|
|
434
|
-
catch {
|
|
435
|
-
throw new Error(
|
|
436
|
-
|
|
437
|
-
|
|
446
|
+
catch (err) {
|
|
447
|
+
throw new Error((0, sdkLoadFailure_js_1.sdkLoadFailure)(err, {
|
|
448
|
+
notInstalled: 'mcpServe requires @modelcontextprotocol/sdk.\n' +
|
|
449
|
+
' Install: npm install @modelcontextprotocol/sdk\n' +
|
|
450
|
+
' Or pass `_server` for test injection.',
|
|
451
|
+
caller: 'mcpServe',
|
|
452
|
+
specifier: '@modelcontextprotocol/sdk/server/index.js',
|
|
453
|
+
instead: `${SERVE_IS_A_NODE_ROLE} Pass \`_server\` to serve a server you built yourself.`,
|
|
454
|
+
}));
|
|
438
455
|
}
|
|
439
456
|
return new mod.Server({ name, version }, { capabilities: { tools: {} } });
|
|
440
457
|
}
|
|
@@ -451,9 +468,14 @@ async function resolveRequestSchemas(injected) {
|
|
|
451
468
|
try {
|
|
452
469
|
types = (0, lazyRequire_js_1.lazyRequire)('@modelcontextprotocol/sdk/types.js');
|
|
453
470
|
}
|
|
454
|
-
catch {
|
|
455
|
-
throw new Error(
|
|
456
|
-
'@modelcontextprotocol/sdk
|
|
471
|
+
catch (err) {
|
|
472
|
+
throw new Error((0, sdkLoadFailure_js_1.sdkLoadFailure)(err, {
|
|
473
|
+
notInstalled: 'mcpServe requires @modelcontextprotocol/sdk/types.js — check that ' +
|
|
474
|
+
'@modelcontextprotocol/sdk is installed at the latest version.',
|
|
475
|
+
caller: 'mcpServe',
|
|
476
|
+
specifier: '@modelcontextprotocol/sdk/types.js',
|
|
477
|
+
instead: SERVE_IS_A_NODE_ROLE,
|
|
478
|
+
}));
|
|
457
479
|
}
|
|
458
480
|
return { listSchema: types.ListToolsRequestSchema, callSchema: types.CallToolRequestSchema };
|
|
459
481
|
}
|
|
@@ -483,9 +505,14 @@ async function connectTransport(sdk, transport, opts, newServer) {
|
|
|
483
505
|
try {
|
|
484
506
|
stdioMod = (0, lazyRequire_js_1.lazyRequire)('@modelcontextprotocol/sdk/server/stdio.js');
|
|
485
507
|
}
|
|
486
|
-
catch {
|
|
487
|
-
throw new Error(
|
|
488
|
-
'
|
|
508
|
+
catch (err) {
|
|
509
|
+
throw new Error((0, sdkLoadFailure_js_1.sdkLoadFailure)(err, {
|
|
510
|
+
notInstalled: 'mcpServe(stdio) requires @modelcontextprotocol/sdk/server/stdio.js — ' +
|
|
511
|
+
'check that @modelcontextprotocol/sdk is installed at the latest version.',
|
|
512
|
+
caller: 'mcpServe(stdio)',
|
|
513
|
+
specifier: '@modelcontextprotocol/sdk/server/stdio.js',
|
|
514
|
+
instead: SERVE_IS_A_NODE_ROLE,
|
|
515
|
+
}));
|
|
489
516
|
}
|
|
490
517
|
await sdk.connect(new stdioMod.StdioServerTransport());
|
|
491
518
|
return NOTHING_TO_UNWIND;
|
|
@@ -516,9 +543,14 @@ async function connectHttp(transport, newServer) {
|
|
|
516
543
|
try {
|
|
517
544
|
httpMod = (0, lazyRequire_js_1.lazyRequire)('@modelcontextprotocol/sdk/server/streamableHttp.js');
|
|
518
545
|
}
|
|
519
|
-
catch {
|
|
520
|
-
throw new Error(
|
|
521
|
-
'
|
|
546
|
+
catch (err) {
|
|
547
|
+
throw new Error((0, sdkLoadFailure_js_1.sdkLoadFailure)(err, {
|
|
548
|
+
notInstalled: 'mcpServe(http) requires @modelcontextprotocol/sdk/server/streamableHttp.js — ' +
|
|
549
|
+
'check that @modelcontextprotocol/sdk is installed at the latest version.',
|
|
550
|
+
caller: 'mcpServe(http)',
|
|
551
|
+
specifier: '@modelcontextprotocol/sdk/server/streamableHttp.js',
|
|
552
|
+
instead: SERVE_IS_A_NODE_ROLE,
|
|
553
|
+
}));
|
|
522
554
|
}
|
|
523
555
|
const { createServer } = await Promise.resolve().then(() => __importStar(require('node:http')));
|
|
524
556
|
const serveOne = async (req, res) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpServe.js","sourceRoot":"","sources":["../../../src/lib/mcp/mcpServe.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcpServe.js","sourceRoot":"","sources":["../../../src/lib/mcp/mcpServe.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* sdkLoadFailure — say WHY the MCP SDK did not load, because there are two
|
|
4
|
+
* reasons and only one of them is "install it".
|
|
5
|
+
*
|
|
6
|
+
* ── The lie this exists to stop ──────────────────────────────────────────────
|
|
7
|
+
* Every SDK load in this module used to sit behind a BARE `catch`, and a bare
|
|
8
|
+
* catch cannot tell the two apart:
|
|
9
|
+
*
|
|
10
|
+
* 1. the package really is absent — `Cannot find module …`; and
|
|
11
|
+
* 2. the LOADER is absent — `lazyRequire` reaches for `createRequire`, which
|
|
12
|
+
* exists in Node and does not exist in a browser bundle, where a bundler
|
|
13
|
+
* has externalized `node:module` to a stub.
|
|
14
|
+
*
|
|
15
|
+
* Case 2 raises `TypeError: nodeModule.createRequire is not a function`, and a
|
|
16
|
+
* bare catch reported it as "install @modelcontextprotocol/sdk" — to a browser
|
|
17
|
+
* that had the SDK installed all along. The reader then installs a package they
|
|
18
|
+
* already have, watches nothing change, and concludes MCP does not work here.
|
|
19
|
+
*
|
|
20
|
+
* ── The contract ─────────────────────────────────────────────────────────────
|
|
21
|
+
* The absent-package message is passed IN and returned VERBATIM, so the message
|
|
22
|
+
* every release before this one produced is byte-identical to the one this one
|
|
23
|
+
* produces. Only the second arm is new, and it names the underlying failure and
|
|
24
|
+
* the seam that gets past it.
|
|
25
|
+
*
|
|
26
|
+
* Pattern: pure classifier. No I/O, no throwing, no vendor names beyond the
|
|
27
|
+
* package it reports on. Role: Layer-3 tool transport, shared by `mcpClient`
|
|
28
|
+
* and `mcpServe` so the two cannot drift into telling different stories.
|
|
29
|
+
*/
|
|
30
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
|
+
exports.sdkLoadFailure = void 0;
|
|
32
|
+
/**
|
|
33
|
+
* Which of the two failures happened, as a message.
|
|
34
|
+
*
|
|
35
|
+
* @param err whatever the `catch` bound — an `Error`, or anything else a
|
|
36
|
+
* loader can throw.
|
|
37
|
+
* @returns the absent-package message verbatim when the specifier could not be
|
|
38
|
+
* RESOLVED; otherwise a message naming the real failure and the way past it.
|
|
39
|
+
*/
|
|
40
|
+
function sdkLoadFailure(err, notes) {
|
|
41
|
+
const detail = detailOf(err);
|
|
42
|
+
if (isModuleNotFound(detail))
|
|
43
|
+
return notes.notInstalled;
|
|
44
|
+
return (`${notes.caller} could not load ${notes.specifier} through its Node loader.\n` +
|
|
45
|
+
` Underlying failure: ${detail}\n` +
|
|
46
|
+
' A browser bundle hits this: the Node `require` loader does not exist there,\n' +
|
|
47
|
+
' so the package being installed is not the question.\n' +
|
|
48
|
+
` ${notes.instead}`);
|
|
49
|
+
}
|
|
50
|
+
exports.sdkLoadFailure = sdkLoadFailure;
|
|
51
|
+
/**
|
|
52
|
+
* Did the loader fail to RESOLVE the specifier?
|
|
53
|
+
*
|
|
54
|
+
* Matched on the message rather than on a class, because the four runtimes that
|
|
55
|
+
* raise it disagree about the class: Node's CJS resolver throws `Error` with
|
|
56
|
+
* `code: 'MODULE_NOT_FOUND'`, its ESM resolver `ERR_MODULE_NOT_FOUND`, esbuild's
|
|
57
|
+
* `__require` shim a plain `Error`, and Vite a bare `TypeError` with neither.
|
|
58
|
+
* A message test is the one thing all four share.
|
|
59
|
+
*
|
|
60
|
+
* Deliberately CONSERVATIVE: anything unrecognised falls to the second arm,
|
|
61
|
+
* which prints the underlying failure. Guessing "not installed" is the failure
|
|
62
|
+
* mode this module exists to remove, so an unknown error must never land there.
|
|
63
|
+
*/
|
|
64
|
+
function isModuleNotFound(detail) {
|
|
65
|
+
return /Cannot find module|MODULE_NOT_FOUND|ERR_MODULE_NOT_FOUND|Failed to resolve|Dynamic require of/i.test(detail);
|
|
66
|
+
}
|
|
67
|
+
/** The failure as text. Never throws — this runs inside an error path. */
|
|
68
|
+
function detailOf(err) {
|
|
69
|
+
if (err instanceof Error)
|
|
70
|
+
return err.message;
|
|
71
|
+
try {
|
|
72
|
+
return String(err);
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return '(an error that could not be described)';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=sdkLoadFailure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdkLoadFailure.js","sourceRoot":"","sources":["../../../src/lib/mcp/sdkLoadFailure.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;AA0BH;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,GAAY,EAAE,KAA0B;IACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,gBAAgB,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IACxD,OAAO,CACL,GAAG,KAAK,CAAC,MAAM,mBAAmB,KAAK,CAAC,SAAS,6BAA6B;QAC9E,yBAAyB,MAAM,IAAI;QACnC,iFAAiF;QACjF,yDAAyD;QACzD,KAAK,KAAK,CAAC,OAAO,EAAE,CACrB,CAAC;AACJ,CAAC;AAVD,wCAUC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO,gGAAgG,CAAC,IAAI,CAC1G,MAAM,CACP,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,SAAS,QAAQ,CAAC,GAAY;IAC5B,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IAC7C,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,wCAAwC,CAAC;IAClD,CAAC;AACH,CAAC"}
|
|
@@ -66,9 +66,28 @@ function resolveConfig(config) {
|
|
|
66
66
|
* so a transport that passed no custom fetch keeps passing none and its
|
|
67
67
|
* behaviour is byte-identical to before this existed.
|
|
68
68
|
*
|
|
69
|
+
* ── Why this is public ───────────────────────────────────────────────────────
|
|
70
|
+
* `mcpClient({ transport })` applies it for you, ON by default. `mcpClient({
|
|
71
|
+
* connection })` cannot: the library builds no transport on that arm, so there
|
|
72
|
+
* is no `fetch` of its own to wrap — and a browser consumer, who is the main
|
|
73
|
+
* reason that arm exists, would silently lose the 429 handling Node gets for
|
|
74
|
+
* free. That asymmetry is invisible from the outside, which is why the answer
|
|
75
|
+
* is to hand over the same implementation rather than to document the gap:
|
|
76
|
+
*
|
|
77
|
+
* ```ts
|
|
78
|
+
* import { retryingFetch } from 'agentfootprint/providers';
|
|
79
|
+
* import { StreamableHTTPClientTransport }
|
|
80
|
+
* from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
81
|
+
*
|
|
82
|
+
* const transport = new StreamableHTTPClientTransport(new URL('/mcp', location.href), {
|
|
83
|
+
* fetch: retryingFetch(undefined, { maxAttempts: 5 }),
|
|
84
|
+
* });
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
69
87
|
* @param inner the fetch to wrap. `undefined` means the global `fetch`,
|
|
70
88
|
* resolved at CALL time so a later polyfill still wins.
|
|
71
|
-
* @
|
|
89
|
+
* @param config `true` / `undefined` for the defaults, `false` to get `inner`
|
|
90
|
+
* back unchanged, or an object to tune the ceilings.
|
|
72
91
|
*/
|
|
73
92
|
function retryingFetch(inner, config) {
|
|
74
93
|
const resolved = resolveConfig(config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttleRetry.js","sourceRoot":"","sources":["../../../src/lib/mcp/throttleRetry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;;;AAgEH,wEAAwE;AAExE,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,2DAA2D;AAC3D,MAAM,eAAe,GAAG,GAAG,CAAC;AAQ5B,+EAA+E;AAC/E,SAAS,aAAa,CAAC,MAAmC;IACxD,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,IAAI,GAAyB,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACzF,OAAO;QACL,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,IAAI,oBAAoB,CAAC;QAClE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,IAAI,mBAAmB,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,wEAAwE;AAExE
|
|
1
|
+
{"version":3,"file":"throttleRetry.js","sourceRoot":"","sources":["../../../src/lib/mcp/throttleRetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* transportUrl — read `transport.url` the way the runtime it is running in
|
|
4
|
+
* would read it.
|
|
5
|
+
*
|
|
6
|
+
* ── Why ──────────────────────────────────────────────────────────────────────
|
|
7
|
+
* `new URL('/py/mcp')` throws `TypeError: Invalid URL`. In Node that is the
|
|
8
|
+
* right answer: there is no document, so there is no base, and a path on its
|
|
9
|
+
* own names nothing. In a browser it is the wrong answer twice over — the page
|
|
10
|
+
* HAS a base, and `/py/mcp` is the single most ordinary way to name a sidecar
|
|
11
|
+
* behind the same origin (which is also how you avoid a CORS preflight
|
|
12
|
+
* entirely). Before this, a browser consumer's first attempt died on a
|
|
13
|
+
* `TypeError` from deep inside the transport constructor, with nothing in the
|
|
14
|
+
* message naming the URL or the fix.
|
|
15
|
+
*
|
|
16
|
+
* ── The rule ─────────────────────────────────────────────────────────────────
|
|
17
|
+
* An ABSOLUTE url takes the identical first branch it always took, so every
|
|
18
|
+
* existing caller is byte-identical. A relative one resolves against
|
|
19
|
+
* `globalThis.location.href` when there is one. With neither, the refusal says
|
|
20
|
+
* which of the two worlds it is in, because "Invalid URL" does not.
|
|
21
|
+
*
|
|
22
|
+
* Pattern: pure function. Role: Layer-3 tool transport.
|
|
23
|
+
*/
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.transportUrl = void 0;
|
|
26
|
+
/**
|
|
27
|
+
* Resolve a transport URL, honouring a document base when the runtime has one.
|
|
28
|
+
*
|
|
29
|
+
* @param raw the `url` from an `http` or `gateway` transport descriptor
|
|
30
|
+
* @param caller the function to name in the refusal, e.g. `'mcpClient'`
|
|
31
|
+
* @throws when `raw` is neither absolute nor resolvable against a base
|
|
32
|
+
*/
|
|
33
|
+
function transportUrl(raw, caller) {
|
|
34
|
+
try {
|
|
35
|
+
return new URL(raw);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// Not absolute. A browser can still resolve it; Node cannot.
|
|
39
|
+
}
|
|
40
|
+
const base = documentBase();
|
|
41
|
+
if (base !== undefined) {
|
|
42
|
+
try {
|
|
43
|
+
return new URL(raw, base);
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
// A base existed and still did not help — fall through to the refusal,
|
|
47
|
+
// which names both halves rather than blaming the url alone.
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
throw new Error(`${caller}: transport.url ${JSON.stringify(raw)} is not an absolute URL, and ` +
|
|
51
|
+
`${base === undefined
|
|
52
|
+
? 'this runtime has no document base to resolve it against (Node, a worker, a test)'
|
|
53
|
+
: `it does not resolve against the document base ${JSON.stringify(base)}`}. ` +
|
|
54
|
+
'Pass an absolute URL (for example `http://127.0.0.1:5230/mcp`); a path like ' +
|
|
55
|
+
'`/mcp` only resolves in a browser, against the page it was loaded from.');
|
|
56
|
+
}
|
|
57
|
+
exports.transportUrl = transportUrl;
|
|
58
|
+
/**
|
|
59
|
+
* The page's own URL, when there is a page.
|
|
60
|
+
*
|
|
61
|
+
* Read through `globalThis` and guarded, because every access here is on a
|
|
62
|
+
* host object this library does not own: `location` is absent in Node, present
|
|
63
|
+
* but href-less in some worker and test doubles, and a getter that throws in a
|
|
64
|
+
* sandboxed frame.
|
|
65
|
+
*/
|
|
66
|
+
function documentBase() {
|
|
67
|
+
try {
|
|
68
|
+
const href = globalThis.location?.href;
|
|
69
|
+
return typeof href === 'string' && href.length > 0 ? href : undefined;
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=transportUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transportUrl.js","sourceRoot":"","sources":["../../../src/lib/mcp/transportUrl.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;IACD,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;YACvE,6DAA6D;QAC/D,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CACb,GAAG,MAAM,mBAAmB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,+BAA+B;QAC5E,GACE,IAAI,KAAK,SAAS;YAChB,CAAC,CAAC,kFAAkF;YACpF,CAAC,CAAC,iDAAiD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAC3E,IAAI;QACJ,8EAA8E;QAC9E,yEAAyE,CAC5E,CAAC;AACJ,CAAC;AAzBD,oCAyBC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY;IACnB,IAAI,CAAC;QACH,MAAM,IAAI,GAAI,UAAgD,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC9E,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
* symbols, one door. Import from the door.
|
|
50
50
|
*/
|
|
51
51
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
52
|
-
exports.AGENTCORE_SIGV4_SERVICE = exports.AGENTCORE_POLICY_SESSION_HEADER = exports.AGENTCORE_GATEWAY_SEARCH_TOOL = exports.hasGatewaySearch = exports.gatewaySearchTool = exports.agentCoreGatewayUrl = exports.agentCoreGatewayTransport = exports.MCP_TOOL_EXTRAS_KEY = exports.GatewayAuthorizationRequiredError = exports.gatewayTransport = exports.mockMcpClient = exports.mcpServe = exports.mcpClient = exports.SKILL_SCOPED_TOOLS_ID_PREFIX = exports.skillScopedToolsTarget = exports.skillScopedTools = exports.gatedTools = exports.staticTools = void 0;
|
|
52
|
+
exports.AGENTCORE_SIGV4_SERVICE = exports.AGENTCORE_POLICY_SESSION_HEADER = exports.AGENTCORE_GATEWAY_SEARCH_TOOL = exports.hasGatewaySearch = exports.gatewaySearchTool = exports.agentCoreGatewayUrl = exports.agentCoreGatewayTransport = exports.retryingFetch = exports.MCP_TOOL_EXTRAS_KEY = exports.GatewayAuthorizationRequiredError = exports.gatewayTransport = exports.mockMcpClient = exports.mcpServe = exports.mcpClient = exports.SKILL_SCOPED_TOOLS_ID_PREFIX = exports.skillScopedToolsTarget = exports.skillScopedTools = exports.gatedTools = exports.staticTools = void 0;
|
|
53
53
|
var staticTools_js_1 = require("./staticTools.js");
|
|
54
54
|
Object.defineProperty(exports, "staticTools", { enumerable: true, get: function () { return staticTools_js_1.staticTools; } });
|
|
55
55
|
var gatedTools_js_1 = require("./gatedTools.js");
|
|
@@ -73,6 +73,11 @@ Object.defineProperty(exports, "GatewayAuthorizationRequiredError", { enumerable
|
|
|
73
73
|
// directions (9.71.0). Public so a server this library did not write can
|
|
74
74
|
// speak it, and so a client can read a bag it received.
|
|
75
75
|
Object.defineProperty(exports, "MCP_TOOL_EXTRAS_KEY", { enumerable: true, get: function () { return index_js_1.MCP_TOOL_EXTRAS_KEY; } });
|
|
76
|
+
// The 429 retry `mcpClient({ transport })` applies for you (9.81.0). Public
|
|
77
|
+
// so `mcpClient({ connection })` — the arm a browser takes, where the library
|
|
78
|
+
// builds no transport — can wrap its own `fetch` with the same code rather
|
|
79
|
+
// than quietly doing without it.
|
|
80
|
+
Object.defineProperty(exports, "retryingFetch", { enumerable: true, get: function () { return index_js_1.retryingFetch; } });
|
|
76
81
|
// Reaching an AWS Bedrock AgentCore Gateway (9.66.0). A configuration of
|
|
77
82
|
// `gatewayTransport` plus the four facts that are AgentCore's alone — kept in
|
|
78
83
|
// the vendor's own file so the transport above stays able to say, truthfully,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool-providers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;;;AAEH,mDAA+C;AAAtC,6GAAA,WAAW,OAAA;AACpB,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AACnB,6DAM+B;AAL7B,uHAAA,gBAAgB,OAAA;AAChB,kFAAkF;AAClF,kFAAkF;AAClF,6HAAA,sBAAsB,OAAA;AACtB,mIAAA,4BAA4B,OAAA;AAI9B,uEAAuE;AACvE,wEAAwE;AACxE,0CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool-providers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;;;AAEH,mDAA+C;AAAtC,6GAAA,WAAW,OAAA;AACpB,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AACnB,6DAM+B;AAL7B,uHAAA,gBAAgB,OAAA;AAChB,kFAAkF;AAClF,kFAAkF;AAClF,6HAAA,sBAAsB,OAAA;AACtB,mIAAA,4BAA4B,OAAA;AAI9B,uEAAuE;AACvE,wEAAwE;AACxE,0CAA0C;AAC1C,gDAe6B;AAd3B,qGAAA,SAAS,OAAA;AACT,oGAAA,QAAQ,OAAA;AACR,yGAAA,aAAa,OAAA;AACb,4GAAA,gBAAgB,OAAA;AAChB,6HAAA,iCAAiC,OAAA;AACjC,2EAA2E;AAC3E,yEAAyE;AACzE,wDAAwD;AACxD,+GAAA,mBAAmB,OAAA;AACnB,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,iCAAiC;AACjC,yGAAA,aAAa,OAAA;AAEf,yEAAyE;AACzE,8EAA8E;AAC9E,8EAA8E;AAC9E,yCAAyC;AACzC,6DAQsC;AAPpC,yHAAA,yBAAyB,OAAA;AACzB,mHAAA,mBAAmB,OAAA;AACnB,iHAAA,iBAAiB,OAAA;AACjB,gHAAA,gBAAgB,OAAA;AAChB,6HAAA,6BAA6B,OAAA;AAC7B,+HAAA,+BAA+B,OAAA;AAC/B,uHAAA,uBAAuB,OAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* connectionRefusals — the two arms of `mcpClient` refuse to be mixed, at
|
|
3
|
+
* CONSTRUCTION, in words that name where the behaviour went.
|
|
4
|
+
*
|
|
5
|
+
* ── Why refuse rather than ignore ────────────────────────────────────────────
|
|
6
|
+
* `mcpClient({ connection })` hands over a client somebody else built, so this
|
|
7
|
+
* library builds no transport on that arm — and every option consumed INSIDE a
|
|
8
|
+
* transport therefore has nothing to act on. `retryOnThrottle` is the sharp
|
|
9
|
+
* one: it is ON by default, it is consumed by `retryingFetch` around the
|
|
10
|
+
* transport's `fetch`, and accepting it here would leave a caller holding an
|
|
11
|
+
* option that NAMES a behaviour which no longer happens. A knob that lies about
|
|
12
|
+
* what it does is worse than one that is absent, so these throw.
|
|
13
|
+
*
|
|
14
|
+
* The type union refuses the same combinations at compile time
|
|
15
|
+
* (`McpConnectionOptions` declares each of them `?: undefined`). This is the
|
|
16
|
+
* runtime half, and it is not redundant: excess-property checking does not
|
|
17
|
+
* survive a spread, and JavaScript callers have no compiler at all.
|
|
18
|
+
*
|
|
19
|
+
* Pattern: pure guard. Role: Layer-3 tool integration.
|
|
20
|
+
*/
|
|
21
|
+
import type { McpClientOptions, McpConnectionOptions } from './types.js';
|
|
22
|
+
/**
|
|
23
|
+
* Refuse a mixed or malformed options object before anything connects.
|
|
24
|
+
*
|
|
25
|
+
* @param opts what the caller passed, before any defaulting
|
|
26
|
+
* @param name the client's logical name, so a multi-server app knows which one
|
|
27
|
+
* @throws naming the two options that cannot travel together, or the member the
|
|
28
|
+
* connection is missing
|
|
29
|
+
*/
|
|
30
|
+
export declare function refuseConflictingOptions(opts: McpClientOptions | McpConnectionOptions, name: string): void;
|
|
31
|
+
//# sourceMappingURL=connectionRefusals.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectionRefusals.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/connectionRefusals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKzE;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,gBAAgB,GAAG,oBAAoB,EAC7C,IAAI,EAAE,MAAM,GACX,IAAI,CA6BN"}
|
|
@@ -9,6 +9,7 @@ export { mcpServe } from './mcpServe.js';
|
|
|
9
9
|
export { MCP_TOOL_EXTRAS_KEY, type McpToolExtras } from './toolExtras.js';
|
|
10
10
|
export { mockMcpClient, type MockMcpClientOptions, type MockMcpTool } from './mockMcpClient.js';
|
|
11
11
|
export { gatewayTransport, GatewayAuthorizationRequiredError, type GatewayTransportOptions, } from './gatewayTransport.js';
|
|
12
|
-
export
|
|
13
|
-
export type {
|
|
12
|
+
export { retryingFetch } from './throttleRetry.js';
|
|
13
|
+
export type { RetryOnThrottle, ThrottleFetch, ThrottleRetryInfo, ThrottleRetryOptions, } from './throttleRetry.js';
|
|
14
|
+
export type { McpCallToolResult, McpClient, McpClientOptions, McpConnection, McpConnectionOptions, McpSdk, McpGatewayTransport, McpHttpTransport, McpStdioTransport, McpTransport, McpSdkClient, McpServeOptions, McpServeHandle, McpServeTransport, McpHttpServeTransport, McpStdioServeTransport, McpSdkServer, } from './types.js';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EACL,gBAAgB,EAChB,iCAAiC,EACjC,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EACL,gBAAgB,EAChB,iCAAiC,EACjC,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EACV,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,GACb,MAAM,YAAY,CAAC"}
|
|
@@ -39,15 +39,28 @@
|
|
|
39
39
|
* loads only when a consumer actually constructs a client. Tests
|
|
40
40
|
* inject `_client` and skip the import path entirely.
|
|
41
41
|
*/
|
|
42
|
-
import type { McpClient, McpClientOptions } from './types.js';
|
|
42
|
+
import type { McpClient, McpClientOptions, McpConnectionOptions } from './types.js';
|
|
43
43
|
/**
|
|
44
44
|
* Connect to an MCP server. Returns an `McpClient` that exposes the
|
|
45
45
|
* server's tools as agentfootprint `Tool[]` and a `close()` to tear
|
|
46
46
|
* down the transport.
|
|
47
47
|
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
48
|
+
* Three ways to get a connection, and they are three because a browser can
|
|
49
|
+
* only take the last two:
|
|
50
|
+
*
|
|
51
|
+
* - `{ transport }` — the library loads the SDK through its Node loader and
|
|
52
|
+
* builds everything. The default, and what every Node consumer already
|
|
53
|
+
* does.
|
|
54
|
+
* - `{ transport, sdk }` — you supply the two SDK modules with static
|
|
55
|
+
* imports; the library still builds the transport, so gateway vending,
|
|
56
|
+
* `retryOnThrottle`, `headers` and your own `fetch` all keep working.
|
|
57
|
+
* - `{ connection }` — you built and connected the client yourself; the
|
|
58
|
+
* library only adapts its tools.
|
|
59
|
+
*
|
|
60
|
+
* @throws when the two arms are mixed, when a `connection` is not one, or when
|
|
61
|
+
* `@modelcontextprotocol/sdk` cannot be loaded (the message says which of
|
|
62
|
+
* "not installed" and "no Node loader here" actually happened), or when the
|
|
63
|
+
* transport fails to connect.
|
|
51
64
|
*/
|
|
52
|
-
export declare function mcpClient(opts: McpClientOptions): Promise<McpClient>;
|
|
65
|
+
export declare function mcpClient(opts: McpClientOptions | McpConnectionOptions): Promise<McpClient>;
|
|
53
66
|
//# sourceMappingURL=mcpClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpClient.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/mcpClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,KAAK,EAEV,SAAS,EACT,gBAAgB,
|
|
1
|
+
{"version":3,"file":"mcpClient.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/mcpClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,KAAK,EAEV,SAAS,EACT,gBAAgB,EAEhB,oBAAoB,EAKrB,MAAM,YAAY,CAAC;AAiBpB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,CAgDjG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpServe.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/mcpServe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAMH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,qBAAqB,CAAC;AAMtE,OAAO,KAAK,EAIV,cAAc,EACd,eAAe,EAEhB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"mcpServe.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/mcpServe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAMH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,qBAAqB,CAAC;AAMtE,OAAO,KAAK,EAIV,cAAc,EACd,eAAe,EAEhB,MAAM,YAAY,CAAC;AAUpB;;;;;;;;;GASG;AACH,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,cAAc,CAAC,CA+LzB;AAiPD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;EAA0C,CAAC;AAC3E,yCAAyC;AACzC,eAAO,MAAM,kBAAkB;;EAA0C,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* sdkLoadFailure — say WHY the MCP SDK did not load, because there are two
|
|
3
|
+
* reasons and only one of them is "install it".
|
|
4
|
+
*
|
|
5
|
+
* ── The lie this exists to stop ──────────────────────────────────────────────
|
|
6
|
+
* Every SDK load in this module used to sit behind a BARE `catch`, and a bare
|
|
7
|
+
* catch cannot tell the two apart:
|
|
8
|
+
*
|
|
9
|
+
* 1. the package really is absent — `Cannot find module …`; and
|
|
10
|
+
* 2. the LOADER is absent — `lazyRequire` reaches for `createRequire`, which
|
|
11
|
+
* exists in Node and does not exist in a browser bundle, where a bundler
|
|
12
|
+
* has externalized `node:module` to a stub.
|
|
13
|
+
*
|
|
14
|
+
* Case 2 raises `TypeError: nodeModule.createRequire is not a function`, and a
|
|
15
|
+
* bare catch reported it as "install @modelcontextprotocol/sdk" — to a browser
|
|
16
|
+
* that had the SDK installed all along. The reader then installs a package they
|
|
17
|
+
* already have, watches nothing change, and concludes MCP does not work here.
|
|
18
|
+
*
|
|
19
|
+
* ── The contract ─────────────────────────────────────────────────────────────
|
|
20
|
+
* The absent-package message is passed IN and returned VERBATIM, so the message
|
|
21
|
+
* every release before this one produced is byte-identical to the one this one
|
|
22
|
+
* produces. Only the second arm is new, and it names the underlying failure and
|
|
23
|
+
* the seam that gets past it.
|
|
24
|
+
*
|
|
25
|
+
* Pattern: pure classifier. No I/O, no throwing, no vendor names beyond the
|
|
26
|
+
* package it reports on. Role: Layer-3 tool transport, shared by `mcpClient`
|
|
27
|
+
* and `mcpServe` so the two cannot drift into telling different stories.
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Everything a load site knows about its own failure. Split out so the same
|
|
31
|
+
* classifier serves seven call sites that each name a different specifier and
|
|
32
|
+
* offer a different way past it.
|
|
33
|
+
*/
|
|
34
|
+
export interface SdkLoadFailureNotes {
|
|
35
|
+
/**
|
|
36
|
+
* The exact message this site produced before the classifier existed — the
|
|
37
|
+
* absent-package case, returned unchanged. Byte-compatibility is the point:
|
|
38
|
+
* a consumer scripting against that text keeps working.
|
|
39
|
+
*/
|
|
40
|
+
readonly notInstalled: string;
|
|
41
|
+
/** The function the consumer called, e.g. `'mcpClient'`. */
|
|
42
|
+
readonly caller: string;
|
|
43
|
+
/** The module specifier that failed to load. */
|
|
44
|
+
readonly specifier: string;
|
|
45
|
+
/**
|
|
46
|
+
* One sentence naming what to pass instead when the LOADER, not the package,
|
|
47
|
+
* is what is missing. Written per site because the answer differs: the http
|
|
48
|
+
* path has `sdk` / `connection`, stdio has neither and never will.
|
|
49
|
+
*/
|
|
50
|
+
readonly instead: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Which of the two failures happened, as a message.
|
|
54
|
+
*
|
|
55
|
+
* @param err whatever the `catch` bound — an `Error`, or anything else a
|
|
56
|
+
* loader can throw.
|
|
57
|
+
* @returns the absent-package message verbatim when the specifier could not be
|
|
58
|
+
* RESOLVED; otherwise a message naming the real failure and the way past it.
|
|
59
|
+
*/
|
|
60
|
+
export declare function sdkLoadFailure(err: unknown, notes: SdkLoadFailureNotes): string;
|
|
61
|
+
//# sourceMappingURL=sdkLoadFailure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdkLoadFailure.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/sdkLoadFailure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAU/E"}
|
|
@@ -102,9 +102,28 @@ export type RetryOnThrottle = boolean | ThrottleRetryOptions;
|
|
|
102
102
|
* so a transport that passed no custom fetch keeps passing none and its
|
|
103
103
|
* behaviour is byte-identical to before this existed.
|
|
104
104
|
*
|
|
105
|
+
* ── Why this is public ───────────────────────────────────────────────────────
|
|
106
|
+
* `mcpClient({ transport })` applies it for you, ON by default. `mcpClient({
|
|
107
|
+
* connection })` cannot: the library builds no transport on that arm, so there
|
|
108
|
+
* is no `fetch` of its own to wrap — and a browser consumer, who is the main
|
|
109
|
+
* reason that arm exists, would silently lose the 429 handling Node gets for
|
|
110
|
+
* free. That asymmetry is invisible from the outside, which is why the answer
|
|
111
|
+
* is to hand over the same implementation rather than to document the gap:
|
|
112
|
+
*
|
|
113
|
+
* ```ts
|
|
114
|
+
* import { retryingFetch } from 'agentfootprint/providers';
|
|
115
|
+
* import { StreamableHTTPClientTransport }
|
|
116
|
+
* from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
117
|
+
*
|
|
118
|
+
* const transport = new StreamableHTTPClientTransport(new URL('/mcp', location.href), {
|
|
119
|
+
* fetch: retryingFetch(undefined, { maxAttempts: 5 }),
|
|
120
|
+
* });
|
|
121
|
+
* ```
|
|
122
|
+
*
|
|
105
123
|
* @param inner the fetch to wrap. `undefined` means the global `fetch`,
|
|
106
124
|
* resolved at CALL time so a later polyfill still wins.
|
|
107
|
-
* @
|
|
125
|
+
* @param config `true` / `undefined` for the defaults, `false` to get `inner`
|
|
126
|
+
* back unchanged, or an object to tune the ceilings.
|
|
108
127
|
*/
|
|
109
128
|
export declare function retryingFetch(inner: ThrottleFetch | undefined, config: RetryOnThrottle | undefined): ThrottleFetch | undefined;
|
|
110
129
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttleRetry.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/throttleRetry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAI3F,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;4DACwD;IACxD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;6EACyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,oBAAoB,CAAC;AA4B7D
|
|
1
|
+
{"version":3,"file":"throttleRetry.d.ts","sourceRoot":"","sources":["../../../../src/lib/mcp/throttleRetry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAI3F,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;4DACwD;IACxD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;6EACyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,oBAAoB,CAAC;AA4B7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,MAAM,EAAE,eAAe,GAAG,SAAS,GAClC,aAAa,GAAG,SAAS,CAyC3B;AAID;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAOpF"}
|