@mcp-index/sdk 0.14.1 → 0.16.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.
@@ -1 +1 @@
1
- {"version":3,"file":"wrap.d.ts","sourceRoot":"","sources":["../../src/wrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrap.d.ts","sourceRoot":"","sources":["../../src/wrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAEL,SAAS,EACT,OAAO,EAQR,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAuB,YAAY,EAA+C,MAAM,gBAAgB,CAAC;AAShH,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAW,MAAM,gBAAgB,CAAC;AAU5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAa,MAAM,aAAa,CAAC;AACpD,OAAO,EAAU,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAOpD;;6DAE6D;AAC7D,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IACvC;;uEAEmE;IACnE,QAAQ,CAAC,YAAY,EAAG,MAAM,GAAG,IAAI,CAAC;gBAGpC,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,MAAM,GAAG,IAAW;CAiBrC;AAED;;;iFAGiF;AACjF,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,MAAM,WAAW,WAAW;IAC1B;;;;kCAI8B;IAC9B,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB;kFAC8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,oFAAoF;IACpF,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACvG;;uFAEmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IACzD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,uBAAuB,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACrC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B;;;2FAGuF;IACvF,YAAY,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACtC;;;;;;kDAM8C;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAuzBD;;;;;;;;;;;;;;;;8EAgB8E;AAC9E,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;IACnC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IACxE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,gBAAgB,CAAC;IACvF,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAqFrF;AAED,gFAAgF;AAChF,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CAExF"}
package/dist/src/wrap.js CHANGED
@@ -5,9 +5,10 @@
5
5
  * `wrap(session)` returns a transparent JS `Proxy` over the real
6
6
  * `@modelcontextprotocol/sdk` `Client`: every method/prop passes through the
7
7
  * get-trap UNTOUCHED, EXCEPT the three gated seams:
8
- * - `listTools` — TOFU-pin every observed tool's PUBLIC contract.
9
- * - `callTool` — run the shared Gate before delegating; HOLD on drift.
10
- * - `request` — the low-level RPC chokepoint (the TS analog of Python's
8
+ * - `listTools` - pin first-seen tools; under guard/strict a new tool on an
9
+ * already-pinned server is left out until reviewed.
10
+ * - `callTool` - run the shared Gate before delegating; HOLD on drift.
11
+ * - `request` - the low-level RPC chokepoint (the TS analog of Python's
11
12
  * `send_request`). `callTool` is sugar over `request({method:'tools/call'})`,
12
13
  * so a caller can invoke any tool straight through `request`; we gate a
13
14
  * `tools/call` there too, or the pre-flight check is a paper wall.
@@ -26,7 +27,9 @@
26
27
  * shared Gate reads only the PUBLIC contract.
27
28
  */
28
29
  import { Gate, Posture, HELD_PROVENANCE_UNAVAILABLE_BANNER, HELD_PROVENANCE_UNAVAILABLE_MESSAGE, INTERNAL_ERROR_HELD_MESSAGE, isInternalErrorVerdict, renderHoldBanner, renderHoldMessage, behaviourObserved, } from "./gate.js";
29
- import { Decision, HoldClass, PreflightPin, makeVerdict, utcNowIso } from "./preflight.js";
30
+ import { Decision, HoldClass, PreflightPin, defaultPinStorePath, makeVerdict, utcNowIso } from "./preflight.js";
31
+ import { MAX_LISTED_TOOLS, WITHHELD_CALL_REASON, filterListing, rawToolEntries, replaceToolList, } from "./listingFilter.js";
32
+ import { approveOne, defaultStateDir, pendingClass, pendingPath, recordPending, } from "./pendingStore.js";
30
33
  import { scanResult } from "./scan.js";
31
34
  import { ChangeKind } from "./schemaDiff.js";
32
35
  import { Operation } from "./errors.js";
@@ -161,6 +164,34 @@ function requestMethodAndTool(request) {
161
164
  return ["tools/call", ""];
162
165
  }
163
166
  }
167
+ function cursorOfList(args) {
168
+ const first = args[0];
169
+ if (first !== null && typeof first === "object" && "cursor" in first) {
170
+ return cursorText(first.cursor);
171
+ }
172
+ return null;
173
+ }
174
+ function cursorOfRequest(request) {
175
+ if (request === null || typeof request !== "object")
176
+ return null;
177
+ const params = request.params;
178
+ if (params === null || typeof params !== "object")
179
+ return null;
180
+ return cursorText(params.cursor);
181
+ }
182
+ function cursorText(value) {
183
+ return typeof value === "string" && value.length > 0 ? value : null;
184
+ }
185
+ function carriesTools(result) {
186
+ if (result === null || typeof result !== "object")
187
+ return false;
188
+ const obj = result;
189
+ const inner = obj["result"];
190
+ if (inner !== null && typeof inner === "object" && !Array.isArray(inner)) {
191
+ return "tools" in inner;
192
+ }
193
+ return "tools" in obj;
194
+ }
164
195
  function isThenable(v) {
165
196
  return v !== null && typeof v === "object" && typeof v.then === "function";
166
197
  }
@@ -184,6 +215,10 @@ class Interceptor {
184
215
  // rides stderr + the optional observer only. See `noteAmbient`.
185
216
  ambient;
186
217
  observed = new Map();
218
+ withheldNames = new Set();
219
+ listingNames = new Set();
220
+ priorNames = new Set();
221
+ onWithheld;
187
222
  lastSurface = new Map();
188
223
  // The tier the LAST gated call for a tool ACTUALLY reached, for its provenance (mirrors the
189
224
  // Python wrapper's `_last_tier_reached`). AUDIT-LOW FLOOR FIX: tier_reached reflects what
@@ -192,12 +227,11 @@ class Interceptor {
192
227
  lastTierReached = new Map();
193
228
  constructor(session, opts) {
194
229
  this.session = session;
230
+ this.onWithheld = opts.onWithheld ?? null;
195
231
  this.gate = new Gate({
196
- // Default to an EPHEMERAL in-memory TOFU baseline when the caller passes no
197
- // pin/serverId — so `wrap(session)` works as the quickstart promises: pin on
198
- // first use, HOLD on drift, NEVER fail-open. Security posture is preserved: a
199
- // fresh empty pin pins-on-first-observe (Gate.observe), it does not fail open.
200
- pin: opts.pin ?? new PreflightPin(),
232
+ // With a serverId the default pin is a file under the state directory; without
233
+ // one it stays in memory (see defaultPin). A fresh pin still pins on first observe.
234
+ pin: opts.pin ?? this.defaultPin(opts),
201
235
  serverId: opts.serverId ?? DEFAULT_SERVER_ID,
202
236
  failOpen: opts.failOpen,
203
237
  autoAcceptBenign: opts.autoAcceptBenign,
@@ -207,6 +241,7 @@ class Interceptor {
207
241
  verifier: opts.verifier ?? null,
208
242
  posture: opts.posture,
209
243
  errors: opts.errors ?? null,
244
+ newTools: opts.newTools,
210
245
  });
211
246
  this.onHold = opts.onHold ?? null;
212
247
  this.autoValidateBehavior = opts.autoValidateBehavior ?? false;
@@ -243,31 +278,142 @@ class Interceptor {
243
278
  // exit cleanup must never raise
244
279
  }
245
280
  }
281
+ defaultPin(opts) {
282
+ if (opts.pinStore === "memory")
283
+ return new PreflightPin();
284
+ // Without a serverId every wrapped session would share one file under the
285
+ // DEFAULT_SERVER_ID namespace, and two servers that both expose a tool named
286
+ // `search` would collide. Keep that case in memory unless the caller opts in.
287
+ if (opts.serverId === undefined && opts.pinStore !== "file")
288
+ return new PreflightPin();
289
+ return new PreflightPin(defaultPinStorePath(opts.serverId ?? DEFAULT_SERVER_ID));
290
+ }
246
291
  // ------------------------------------------------------------- list_tools
292
+ // The SDK client's listChanged handler calls listTools on the inner client,
293
+ // so that refresh is not filtered here.
247
294
  listTools(target, args) {
295
+ const window = this.openListingWindow(cursorOfList(args));
248
296
  const result = target.listTools.apply(target, args);
249
- if (isThenable(result)) {
250
- return result.then((r) => {
251
- this.observe(r);
252
- return r;
253
- });
297
+ if (isThenable(result))
298
+ return result.then((r) => this.filterList(r, window));
299
+ return this.filterList(result, window);
300
+ }
301
+ openListingWindow(cursor) {
302
+ if (cursor === null) {
303
+ this.listingNames = new Set();
304
+ this.gate.reloadPins();
305
+ this.priorNames = new Set(this.gate.pinnedTools().map((pin) => pin.toolName));
306
+ }
307
+ return this.listingNames;
308
+ }
309
+ filterList(result, window) {
310
+ try {
311
+ if (!carriesTools(result))
312
+ return result;
313
+ const raw = rawToolEntries(result);
314
+ if (raw.length > MAX_LISTED_TOOLS) {
315
+ this.gate.captureError(new Error("listing over cap"), Operation.LIST_TOOLS, "wrap.listTools");
316
+ return replaceToolList(result, []);
317
+ }
318
+ this.gate.reloadPins();
319
+ this.observe(result);
320
+ if (this.gate.posture === Posture.MONITOR)
321
+ return result;
322
+ const outcome = filterListing(this.gate, raw, window);
323
+ this.emitWithheld(outcome.withheld);
324
+ if (outcome.kept.length === raw.length && outcome.kept.every((entry, i) => entry === raw[i])) {
325
+ return result;
326
+ }
327
+ return replaceToolList(result, outcome.kept);
328
+ }
329
+ catch (exc) {
330
+ this.gate.captureError(exc, Operation.LIST_TOOLS, "wrap.listTools");
331
+ try {
332
+ return replaceToolList(result, []);
333
+ }
334
+ catch (second) {
335
+ this.gate.captureError(second, Operation.LIST_TOOLS, "wrap.listTools");
336
+ return { tools: [] };
337
+ }
338
+ }
339
+ }
340
+ emitWithheld(notices) {
341
+ const storePins = this.gate.pinnedTools();
342
+ const prior = this.priorNames.size > 0
343
+ ? storePins.filter((pin) => this.priorNames.has(pin.toolName))
344
+ : storePins;
345
+ const klass = pendingClass(prior);
346
+ const sharedKey = prior.length > 0 && prior.every((pin) => pin.launchKey === prior[0].launchKey)
347
+ ? prior[0].launchKey
348
+ : undefined;
349
+ for (const notice of notices) {
350
+ this.withheldNames.add(notice.toolName);
351
+ if (notice.reviewable && notice.definition !== null) {
352
+ try {
353
+ recordPending(pendingPath(defaultStateDir()), {
354
+ serverId: notice.serverId,
355
+ toolName: notice.toolName,
356
+ definition: notice.definition,
357
+ definitionHash: notice.definitionHash,
358
+ pendingClass: klass,
359
+ launchKey: sharedKey,
360
+ });
361
+ }
362
+ catch {
363
+ // recording a hold must not break the list
364
+ }
365
+ }
366
+ if (this.onWithheld == null)
367
+ continue;
368
+ try {
369
+ this.onWithheld(notice.serverId, notice.toolName, notice.reason, notice.definitionHash);
370
+ }
371
+ catch {
372
+ // a hook must not break the list
373
+ }
254
374
  }
255
- this.observe(result);
256
- return result;
257
375
  }
258
376
  observe(result) {
259
377
  try {
260
378
  const tools = toolsFromResult(result);
379
+ this.gate.reloadPins();
380
+ const storePins = this.gate.pinnedTools();
381
+ const storeEmpty = storePins.length === 0;
382
+ // First-sight trust only when the pin store holds no pins for this server.
383
+ // An empty prior snapshot is not enough on a cursor-bearing first list.
384
+ const allowNew = storeEmpty ||
385
+ this.gate.posture === Posture.MONITOR ||
386
+ this.gate.newTools === "tofu";
387
+ let prior = this.priorNames;
388
+ if (prior.size === 0 && !storeEmpty) {
389
+ prior = new Set(storePins.map((pin) => pin.toolName));
390
+ }
261
391
  for (const defn of tools) {
262
392
  const name = defn["name"];
263
393
  this.observed.set(name, defn);
264
- this.gate.observe(name, defn);
394
+ if (!prior.has(name) && !allowNew)
395
+ continue;
396
+ try {
397
+ this.gate.observe(name, defn);
398
+ }
399
+ catch {
400
+ // Lock timeout or pin write failure: leave the tool unpinned so a
401
+ // later call holds. Do not break the listing.
402
+ continue;
403
+ }
265
404
  }
266
405
  }
267
406
  catch (exc) {
268
407
  this.gate.captureError(exc, Operation.LIST_TOOLS, "wrap.observe");
269
408
  }
270
409
  }
410
+ /** Pin a held tool from the stored definition when the hash matches. */
411
+ approvePending(name, definitionHash) {
412
+ const written = approveOne(this.gate.pinStore, pendingPath(defaultStateDir()), this.gate.serverId, name, definitionHash);
413
+ if (written !== null)
414
+ this.withheldNames.delete(name);
415
+ return written;
416
+ }
271
417
  // -------------------------------------------------------------- call_tool
272
418
  callTool(target, args) {
273
419
  // SDK: callTool(params, resultSchema?, options?), params = {name, arguments}.
@@ -379,6 +525,13 @@ class Interceptor {
379
525
  throw new TypeError("wrapped session has no request() method");
380
526
  }
381
527
  const [method, toolName] = requestMethodAndTool(args[0]);
528
+ if (method === "tools/list") {
529
+ const window = this.openListingWindow(cursorOfRequest(args[0]));
530
+ const result = reqFn.apply(target, args);
531
+ if (isThenable(result))
532
+ return result.then((r) => this.filterList(r, window));
533
+ return this.filterList(result, window);
534
+ }
382
535
  if (method !== "tools/call") {
383
536
  return reqFn.apply(target, args);
384
537
  }
@@ -504,6 +657,18 @@ class Interceptor {
504
657
  return Promise.reject(new PreflightHold(verdict, prov, banner, presentation));
505
658
  }
506
659
  decideOrInternalHold(name, operation) {
660
+ if (this.withheldNames.has(name)) {
661
+ const verdict = makeVerdict({
662
+ serverId: this.gate.serverId,
663
+ toolName: name,
664
+ decision: Decision.HOLD,
665
+ reason: WITHHELD_CALL_REASON,
666
+ isContractDiff: false,
667
+ holdClass: HoldClass.UNCHECKABLE,
668
+ });
669
+ this.recordCall(name, verdict, verdict);
670
+ return verdict;
671
+ }
507
672
  try {
508
673
  const assessed = this.gate.assess(name, this.observed.get(name) ?? null);
509
674
  const committed = this.gate.commit(assessed[0], assessed[2]);
@@ -596,7 +761,7 @@ class Interceptor {
596
761
  // is there to buy.
597
762
  return [
598
763
  prov,
599
- renderHoldMessage(verdict, sentKeys, null),
764
+ renderHoldMessage(verdict, sentKeys, this.gate.pinPath),
600
765
  renderHoldBanner(verdict, tally),
601
766
  ];
602
767
  }
@@ -630,6 +795,8 @@ class Interceptor {
630
795
  if (behaviourObserved(outcome)) {
631
796
  this.lastTierReached.set(toolName, 3);
632
797
  }
798
+ if (resolved.decision === Decision.PROCEED)
799
+ this.withheldNames.delete(toolName);
633
800
  return resolved;
634
801
  }
635
802
  // ------------------------------------------------------------------- repin
@@ -641,6 +808,7 @@ class Interceptor {
641
808
  if (observed === undefined)
642
809
  continue;
643
810
  written.push(this.gate.repinOne(name, observed));
811
+ this.withheldNames.delete(name);
644
812
  if (this.stats !== null)
645
813
  this.stats.recordRepin();
646
814
  this.recordOutcomeResponse(name, Action.REPIN);
@@ -661,7 +829,13 @@ function warn(verdict) {
661
829
  `${verdict.serverId}/${verdict.toolName} — ${verdict.reason}\n`);
662
830
  }
663
831
  // The wrapper's OWN management methods — names that shadow delegation.
664
- const OWN_METHODS = new Set(["repin", "validateBehaviorNow", "holdBanner", "__interceptor__"]);
832
+ const OWN_METHODS = new Set([
833
+ "repin",
834
+ "approvePending",
835
+ "validateBehaviorNow",
836
+ "holdBanner",
837
+ "__interceptor__",
838
+ ]);
665
839
  export function wrap(session, opts = {}) {
666
840
  const sess = session;
667
841
  const interceptor = new Interceptor(sess, opts);
@@ -719,6 +893,9 @@ export function wrap(session, opts = {}) {
719
893
  if (prop === "repin") {
720
894
  return (tool) => interceptor.repin(tool);
721
895
  }
896
+ if (prop === "approvePending") {
897
+ return (name, definitionHash) => interceptor.approvePending(name, definitionHash);
898
+ }
722
899
  if (prop === "validateBehaviorNow") {
723
900
  return (toolName, verifier) => interceptor.validateBehaviorNow(toolName, verifier);
724
901
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wrap.js","sourceRoot":"","sources":["../../src/wrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrap.js","sourceRoot":"","sources":["../../src/wrap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-index/sdk",
3
- "version": "0.14.1",
3
+ "version": "0.16.0",
4
4
  "description": "Pre-flight MCP tool-contract drift interceptor from mcpindex.ai, the drift-monitored MCP server index. One-line wrap() over an MCP client session that HOLDs a tool call before your agent runs it when the contract drifted from your pin. No credential handling.",
5
5
  "license": "PolyForm-Noncommercial-1.0.0",
6
6
  "author": "Bhartis LLC",