@chrischall/mcp-utils 2.11.0 → 2.12.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.
Files changed (102) hide show
  1. package/README.md +431 -12
  2. package/dist/concurrency/index.d.ts +3 -1
  3. package/dist/concurrency/index.d.ts.map +1 -1
  4. package/dist/concurrency/index.js +3 -1
  5. package/dist/concurrency/index.js.map +1 -1
  6. package/dist/concurrency/verify-after-write.d.ts +84 -0
  7. package/dist/concurrency/verify-after-write.d.ts.map +1 -0
  8. package/dist/concurrency/verify-after-write.js +108 -0
  9. package/dist/concurrency/verify-after-write.js.map +1 -0
  10. package/dist/errors/index.d.ts +35 -1
  11. package/dist/errors/index.d.ts.map +1 -1
  12. package/dist/errors/index.js +79 -1
  13. package/dist/errors/index.js.map +1 -1
  14. package/dist/fetchproxy/fallback.d.ts +130 -0
  15. package/dist/fetchproxy/fallback.d.ts.map +1 -0
  16. package/dist/fetchproxy/fallback.js +199 -0
  17. package/dist/fetchproxy/fallback.js.map +1 -0
  18. package/dist/fetchproxy/index.d.ts +31 -1
  19. package/dist/fetchproxy/index.d.ts.map +1 -1
  20. package/dist/fetchproxy/index.js +120 -13
  21. package/dist/fetchproxy/index.js.map +1 -1
  22. package/dist/fs/confine.d.ts +9 -0
  23. package/dist/fs/confine.d.ts.map +1 -1
  24. package/dist/fs/confine.js +11 -2
  25. package/dist/fs/confine.js.map +1 -1
  26. package/dist/fs/index.d.ts +9 -2
  27. package/dist/fs/index.d.ts.map +1 -1
  28. package/dist/fs/index.js +13 -4
  29. package/dist/fs/index.js.map +1 -1
  30. package/dist/fs/magic.d.ts +35 -0
  31. package/dist/fs/magic.d.ts.map +1 -0
  32. package/dist/fs/magic.js +110 -0
  33. package/dist/fs/magic.js.map +1 -0
  34. package/dist/fs/output.d.ts +14 -10
  35. package/dist/fs/output.d.ts.map +1 -1
  36. package/dist/fs/output.js +21 -45
  37. package/dist/fs/output.js.map +1 -1
  38. package/dist/fs/upload-guard.d.ts +97 -0
  39. package/dist/fs/upload-guard.d.ts.map +1 -0
  40. package/dist/fs/upload-guard.js +185 -0
  41. package/dist/fs/upload-guard.js.map +1 -0
  42. package/dist/fs/write.d.ts +100 -0
  43. package/dist/fs/write.d.ts.map +1 -0
  44. package/dist/fs/write.js +207 -0
  45. package/dist/fs/write.js.map +1 -0
  46. package/dist/graphql/client.d.ts +223 -0
  47. package/dist/graphql/client.d.ts.map +1 -0
  48. package/dist/graphql/client.js +335 -0
  49. package/dist/graphql/client.js.map +1 -0
  50. package/dist/graphql/index.d.ts +20 -0
  51. package/dist/graphql/index.d.ts.map +1 -0
  52. package/dist/graphql/index.js +20 -0
  53. package/dist/graphql/index.js.map +1 -0
  54. package/dist/graphql/operation-kind.d.ts +58 -0
  55. package/dist/graphql/operation-kind.d.ts.map +1 -0
  56. package/dist/graphql/operation-kind.js +237 -0
  57. package/dist/graphql/operation-kind.js.map +1 -0
  58. package/dist/html/index.d.ts +33 -0
  59. package/dist/html/index.d.ts.map +1 -1
  60. package/dist/html/index.js +81 -1
  61. package/dist/html/index.js.map +1 -1
  62. package/dist/http/index.d.ts +11 -1
  63. package/dist/http/index.d.ts.map +1 -1
  64. package/dist/http/index.js +35 -7
  65. package/dist/http/index.js.map +1 -1
  66. package/dist/response/index.d.ts +1 -0
  67. package/dist/response/index.d.ts.map +1 -1
  68. package/dist/response/index.js +1 -0
  69. package/dist/response/index.js.map +1 -1
  70. package/dist/response/untrusted.d.ts +72 -0
  71. package/dist/response/untrusted.d.ts.map +1 -0
  72. package/dist/response/untrusted.js +55 -0
  73. package/dist/response/untrusted.js.map +1 -0
  74. package/dist/scrape/index.d.ts +75 -0
  75. package/dist/scrape/index.d.ts.map +1 -1
  76. package/dist/scrape/index.js +272 -0
  77. package/dist/scrape/index.js.map +1 -1
  78. package/dist/server/confirm-write.d.ts +152 -0
  79. package/dist/server/confirm-write.d.ts.map +1 -0
  80. package/dist/server/confirm-write.js +107 -0
  81. package/dist/server/confirm-write.js.map +1 -0
  82. package/dist/server/index.d.ts +1 -0
  83. package/dist/server/index.d.ts.map +1 -1
  84. package/dist/server/index.js +1 -0
  85. package/dist/server/index.js.map +1 -1
  86. package/dist/session/atomic-write.d.ts +15 -0
  87. package/dist/session/atomic-write.d.ts.map +1 -0
  88. package/dist/session/atomic-write.js +42 -0
  89. package/dist/session/atomic-write.js.map +1 -0
  90. package/dist/session/file-lock.d.ts +57 -0
  91. package/dist/session/file-lock.d.ts.map +1 -0
  92. package/dist/session/file-lock.js +215 -0
  93. package/dist/session/file-lock.js.map +1 -0
  94. package/dist/session/index.d.ts +118 -2
  95. package/dist/session/index.d.ts.map +1 -1
  96. package/dist/session/index.js +200 -82
  97. package/dist/session/index.js.map +1 -1
  98. package/dist/session/login-page.d.ts +73 -0
  99. package/dist/session/login-page.d.ts.map +1 -0
  100. package/dist/session/login-page.js +143 -0
  101. package/dist/session/login-page.js.map +1 -0
  102. package/package.json +5 -1
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Direct-first transport with a sticky fallback to the browser bridge when a
3
+ * CDN/WAF walls the direct fetch.
4
+ *
5
+ * ## What it consolidates
6
+ *
7
+ * hemnet-mcp and booli-mcp each carried a `transport-fallback.ts` (111 / 105
8
+ * lines) that differed only in names and log text, plus a
9
+ * `createDefaultTransport` reading `<PREFIX>_TRANSPORT`
10
+ * (chrischall/fleet-audit#1020, #988). Neither is about Swedish real estate:
11
+ * the shape is "a plain server-side fetch is preferred — no extension, no
12
+ * pairing, no open tab — but the site's edge may refuse non-browser clients,
13
+ * and when it does, ride the user's tab instead". Any fleet MCP whose direct
14
+ * client already throws {@link EdgeBlockedError} (viator, getyourguide,
15
+ * onehome, …) can adopt it to gain the fallback, and
16
+ * {@link registerBridgeHealthcheckTool}'s `path` option was already built for
17
+ * exactly this consumer.
18
+ *
19
+ * ## Behaviour
20
+ *
21
+ * - **`auto`** (default): every call tries the direct leg. The first call
22
+ * whose failure is an edge block — an `EdgeBlockedError`, or any error
23
+ * carrying a refusal page / `cf-mitigated` (the same `edgeBlockOf` rule the
24
+ * healthcheck and `bridgeErrorInfo` use) — builds the bridge, re-runs THAT
25
+ * call on it, and pins every later call to the bridge for the life of the
26
+ * process: the wall fingerprints the client, so re-probing direct would
27
+ * only burn a round trip per request. Re-sending the blocked call is safe
28
+ * even for a write: an edge block means the request never reached the
29
+ * origin. Any other direct failure propagates unchanged.
30
+ * - **`direct`**: never falls back; the edge block propagates (the
31
+ * healthcheck reports it as `edge_blocked` with a direct-leg hint).
32
+ * - **`fetchproxy`**: the bridge from the first call; direct is never used.
33
+ *
34
+ * The bridge is built lazily and at most once (concurrent walled calls share
35
+ * one build); a factory that throws is retried on the next call rather than
36
+ * cached. A bridge failure after the switch propagates as the bridge's own
37
+ * typed error, so the healthcheck can classify it.
38
+ *
39
+ * ## Cancellation
40
+ *
41
+ * The effective signal is the caller's `signal` combined with the ambient
42
+ * tool-call signal (`withAmbientCancellation`). A cancelled call runs no leg,
43
+ * and a call cancelled while on the direct leg is never re-sent over the
44
+ * bridge — though a wall it saw is still recorded, so the next call goes
45
+ * straight to the bridge.
46
+ */
47
+ import { readEnvVar } from '../config/index.js';
48
+ import { withAmbientCancellation } from '../cancel/index.js';
49
+ import { edgeBlockOf } from '../internal/edge-block.js';
50
+ const TRANSPORT_MODES = ['direct', 'fetchproxy', 'auto'];
51
+ /**
52
+ * Read a `<PREFIX>_TRANSPORT` pin (`direct` / `fetchproxy` / `auto`),
53
+ * case-insensitively, through the hardened {@link readEnvVar} (so an
54
+ * unexpanded `${…}` placeholder reads as unset). An unknown value warns —
55
+ * naming the variable — and means the default, rather than failing the boot.
56
+ */
57
+ export function readTransportMode(envVar, opts = {}) {
58
+ const fallback = opts.default ?? 'auto';
59
+ const raw = readEnvVar(envVar, opts.env ? { env: opts.env } : {});
60
+ if (raw === undefined)
61
+ return fallback;
62
+ const mode = raw.trim().toLowerCase();
63
+ if (TRANSPORT_MODES.includes(mode))
64
+ return mode;
65
+ (opts.log ?? ((m) => console.error(m)))(`Unknown ${envVar} value "${raw}" — using "${fallback}". Expected one of: ${TRANSPORT_MODES.join(', ')}.`);
66
+ return fallback;
67
+ }
68
+ function defaultBridgeHealth(bridge) {
69
+ if (typeof bridge !== 'object' || bridge === null)
70
+ return undefined;
71
+ const b = bridge;
72
+ if (typeof b.bridgeTransport === 'function') {
73
+ return b.bridgeTransport.call(bridge);
74
+ }
75
+ if (typeof b.runProbe === 'function' && typeof b.status === 'function') {
76
+ return bridge;
77
+ }
78
+ return undefined;
79
+ }
80
+ function throwIfAborted(signal) {
81
+ if (signal?.aborted) {
82
+ throw signal.reason instanceof Error ? signal.reason : new Error(String(signal.reason));
83
+ }
84
+ }
85
+ /**
86
+ * Build a direct-first transport router. See the module docs for the
87
+ * behaviour; the consumer keeps its own leg types and wraps its one call:
88
+ *
89
+ * @example
90
+ * const legs = createDirectFirstTransport({
91
+ * direct: new DirectTransport(opts),
92
+ * bridge: () => new HemnetFetchproxyTransport(opts),
93
+ * mode: readTransportMode('HEMNET_TRANSPORT'),
94
+ * serverName: 'hemnet-mcp',
95
+ * hostLabel: 'www.hemnet.se',
96
+ * });
97
+ * const transport: HemnetTransport = {
98
+ * graphql: (q, v) => legs.run((leg) => leg.graphql(q, v)),
99
+ * status: () => legs.status(),
100
+ * bridgeTransport: () => legs.bridgeTransport(),
101
+ * };
102
+ */
103
+ export function createDirectFirstTransport(opts) {
104
+ const mode = opts.mode ?? 'auto';
105
+ const shouldFallBack = opts.shouldFallBack ?? ((err) => edgeBlockOf(err) !== null);
106
+ const log = opts.log ?? ((m) => console.error(m));
107
+ const project = opts.bridgeHealth ?? defaultBridgeHealth;
108
+ let bridge;
109
+ let walled = mode === 'fetchproxy';
110
+ let blockedBy;
111
+ const counters = {
112
+ requests: { direct: 0, fetchproxy: 0 },
113
+ failures: { direct: 0, fetchproxy: 0 },
114
+ edge_blocks: 0,
115
+ switched_at: null,
116
+ };
117
+ const ensureBridge = () => {
118
+ bridge ??= opts.bridge();
119
+ return bridge;
120
+ };
121
+ const recordWall = (error) => {
122
+ if (walled)
123
+ return; // a concurrent call already switched
124
+ walled = true;
125
+ counters.switched_at = Date.now();
126
+ const vendor = edgeBlockOf(error)?.vendor ?? null;
127
+ if (vendor !== null)
128
+ blockedBy = vendor;
129
+ if (opts.onFallback) {
130
+ opts.onFallback({ error, vendor });
131
+ return;
132
+ }
133
+ const by = vendor ? `refused by ${vendor}` : 'walled by the site';
134
+ const tab = opts.hostLabel ? `Keep a ${opts.hostLabel} tab open` : 'Keep a tab on the site open';
135
+ log(`[${opts.serverName}] Direct fetch was ${by} — switching to the ContextMint Bridge browser bridge for the ` +
136
+ `rest of this session. ${tab} and approve the pairing prompt in the extension if one appears.`);
137
+ };
138
+ return {
139
+ mode,
140
+ async run(call, runOpts = {}) {
141
+ const signal = withAmbientCancellation(runOpts.signal);
142
+ throwIfAborted(signal);
143
+ if (!walled) {
144
+ counters.requests.direct += 1;
145
+ try {
146
+ return await call(opts.direct, { leg: 'direct', signal });
147
+ }
148
+ catch (err) {
149
+ counters.failures.direct += 1;
150
+ const isWall = shouldFallBack(err);
151
+ if (isWall)
152
+ counters.edge_blocks += 1;
153
+ if (mode !== 'auto' || !isWall)
154
+ throw err;
155
+ recordWall(err);
156
+ // The caller has gone: do not re-send its call over the bridge.
157
+ throwIfAborted(signal);
158
+ }
159
+ }
160
+ const leg = ensureBridge();
161
+ throwIfAborted(signal);
162
+ counters.requests.fetchproxy += 1;
163
+ try {
164
+ return await call(leg, { leg: 'fetchproxy', signal });
165
+ }
166
+ catch (err) {
167
+ counters.failures.fetchproxy += 1;
168
+ throw err;
169
+ }
170
+ },
171
+ status() {
172
+ return {
173
+ transport: walled ? 'fetchproxy' : 'direct',
174
+ mode,
175
+ ...(blockedBy !== undefined ? { blocked_by: blockedBy } : {}),
176
+ };
177
+ },
178
+ bridgeTransport() {
179
+ if (bridge === undefined && mode === 'fetchproxy') {
180
+ try {
181
+ ensureBridge();
182
+ }
183
+ catch {
184
+ return undefined;
185
+ }
186
+ }
187
+ return bridge === undefined ? undefined : project(bridge);
188
+ },
189
+ stats() {
190
+ return {
191
+ requests: { ...counters.requests },
192
+ failures: { ...counters.failures },
193
+ edge_blocks: counters.edge_blocks,
194
+ switched_at: counters.switched_at,
195
+ };
196
+ },
197
+ };
198
+ }
199
+ //# sourceMappingURL=fallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/fetchproxy/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,MAAM,eAAe,GAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AAYnF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,IAAI,GAA6B,EAAE;IACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC;IACxC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACvC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,IAAK,eAAqC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAqB,CAAC;IACxF,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7C,WAAW,MAAM,WAAW,GAAG,cAAc,QAAQ,uBAAuB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC1G,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AA0FD,SAAS,mBAAmB,CAAC,MAAe;IAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACpE,MAAM,CAAC,GAAG,MAA6E,CAAC;IACxF,IAAI,OAAO,CAAC,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;QAC5C,OAAQ,CAAC,CAAC,eAAgE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACvE,OAAO,MAAoC,CAAC;IAC9C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B;IACrD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1F,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAuC;IAEvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;IACjC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;IAC5F,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,IAAI,mBAAmB,CAAC;IAEzD,IAAI,MAAqB,CAAC;IAC1B,IAAI,MAAM,GAAG,IAAI,KAAK,YAAY,CAAC;IACnC,IAAI,SAA6B,CAAC;IAClC,MAAM,QAAQ,GAAqB;QACjC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;QACtC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;QACtC,WAAW,EAAE,CAAC;QACd,WAAW,EAAE,IAAI;KAClB,CAAC;IAEF,MAAM,YAAY,GAAG,GAAM,EAAE;QAC3B,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,KAAc,EAAQ,EAAE;QAC1C,IAAI,MAAM;YAAE,OAAO,CAAC,qCAAqC;QACzD,MAAM,GAAG,IAAI,CAAC;QACd,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC;QAClD,IAAI,MAAM,KAAK,IAAI;YAAE,SAAS,GAAG,MAAM,CAAC;QACxC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,MAAM,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC;QACjG,GAAG,CACD,IAAI,IAAI,CAAC,UAAU,sBAAsB,EAAE,gEAAgE;YACzG,yBAAyB,GAAG,kEAAkE,CACjG,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,IAAI;QAEJ,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE;YAC1B,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvD,cAAc,CAAC,MAAM,CAAC,CAAC;YAEvB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,QAAQ,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC9B,IAAI,CAAC;oBACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,QAAQ,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC9B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;oBACnC,IAAI,MAAM;wBAAE,QAAQ,CAAC,WAAW,IAAI,CAAC,CAAC;oBACtC,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,MAAM;wBAAE,MAAM,GAAG,CAAC;oBAC1C,UAAU,CAAC,GAAG,CAAC,CAAC;oBAChB,gEAAgE;oBAChE,cAAc,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;YAC3B,cAAc,CAAC,MAAM,CAAC,CAAC;YACvB,QAAQ,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;gBAClC,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,MAAM;YACJ,OAAO;gBACL,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;gBAC3C,IAAI;gBACJ,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9D,CAAC;QACJ,CAAC;QAED,eAAe;YACb,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAClD,IAAI,CAAC;oBACH,YAAY,EAAE,CAAC;gBACjB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,KAAK;YACH,OAAO;gBACL,QAAQ,EAAE,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE;gBAClC,QAAQ,EAAE,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE;gBAClC,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;aAClC,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -36,7 +36,36 @@
36
36
  */
37
37
  import { FetchproxyServer, type FetchproxyServerOpts, type HttpResponse, type BridgeProbeResult } from '@fetchproxy/server';
38
38
  import type { McpServer } from '@modelcontextprotocol/server';
39
- export { FetchproxyServer, mapWithConcurrency, withDeadline, TokenBucket, classifyBotWall, retryOnceOnTimeout, FetchproxyProtocolError, FetchproxyHttpError, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, FetchproxyTimeoutError, classifyBridgeError, classifyRowError, classifyFetchError, backoffDelayMs, BRIDGE_CONCURRENCY, chunk, sleep, extractGlobalAssign, extractBalancedObject, extractImgTags, lastPathSegment, } from '@fetchproxy/server';
39
+ export { FetchproxyServer, mapWithConcurrency, withDeadline, TokenBucket, classifyBotWall, FetchproxyProtocolError, FetchproxyHttpError, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, FetchproxyTimeoutError, classifyBridgeError, classifyFetchError, backoffDelayMs, BRIDGE_CONCURRENCY, chunk, sleep, extractGlobalAssign, extractBalancedObject, extractImgTags, lastPathSegment, } from '@fetchproxy/server';
40
+ /**
41
+ * Run `fn`; if it throws a TIMEOUT, run it once more. Superset of
42
+ * `@fetchproxy/server`'s `retryOnceOnTimeout`: a bridge
43
+ * `FetchproxyTimeoutError` behaves exactly as there, and so does ANY error
44
+ * {@link isTimeoutError} recognises — mcp-utils' `RequestTimeoutError`,
45
+ * `AbortSignal.timeout()`'s `TimeoutError`, a consumer class named
46
+ * `*TimeoutError` (onehome-mcp's `OneHomeRequestTimeoutError`, the
47
+ * fleet-audit#1078 case), or one carrying `timedOut: true`.
48
+ *
49
+ * Never retried: a timeout with `retrySafe: false` (may already have run), a
50
+ * caller cancellation (`AbortError`), any non-timeout error, and the second
51
+ * attempt's failure — each propagates unchanged.
52
+ */
53
+ export declare function retryOnceOnTimeout<T>(fn: () => Promise<T>): Promise<T>;
54
+ /**
55
+ * Per-row error classification for bulk tools — superset of
56
+ * `@fetchproxy/server`'s `classifyRowError`, same return shape. Bridge errors
57
+ * classify exactly as there (`'bridge timeout after retry: …'`,
58
+ * `'bridge unreachable: …'`, …). Any OTHER error {@link isTimeoutError}
59
+ * recognises is `kind: 'timeout'` with
60
+ * `'timeout after retry: <message>'` — or `'timeout (not retried): <message>'`
61
+ * when it declares `retrySafe: false` — so a stalled upstream row stays
62
+ * distinguishable from a genuine "not found" (`'other'`). A caller
63
+ * cancellation is never `'timeout'`.
64
+ */
65
+ export declare function classifyRowError(err: unknown): {
66
+ kind: 'timeout' | 'bridge_down' | 'protocol' | 'other';
67
+ message: string;
68
+ };
40
69
  export type { FetchproxyServerOpts, FetchResult, FetchResultError, HttpResponse, RequestOpts, BodylessRequestOpts, BridgeHealth, BridgeProbeResult, BridgeError, FetchErrorKind, BotWallResult, BotWallVendor, TokenBucketOptions, BackoffOptions, DeadlineOutcome, } from '@fetchproxy/server';
41
70
  /**
42
71
  * One request to round-trip through the bridge. The path is resolved relative
@@ -610,4 +639,5 @@ export interface RegisterAdaptiveHealthcheckToolArgs {
610
639
  * });
611
640
  */
612
641
  export declare function registerAdaptiveHealthcheckTool(args: RegisterAdaptiveHealthcheckToolArgs): void;
642
+ export { createDirectFirstTransport, readTransportMode, type DirectFirstCallContext, type DirectFirstStats, type DirectFirstStatus, type DirectFirstTransport, type DirectFirstTransportOptions, type ReadTransportModeOptions, type TransportMode, } from './fallback.js';
613
643
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fetchproxy/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fetchproxy/index.ts"],"names":[],"mappings":"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"}
@@ -34,19 +34,84 @@
34
34
  * `FetchproxyServer` instance (no NEW top-level `@fetchproxy/server` import),
35
35
  * so the bundle-load smoke posture is unchanged.
36
36
  */
37
- import { FetchproxyServer, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, classifyBridgeError as classifyBridgeErrorKind, classifyFetchError as classifyFetchErrorKind, } from '@fetchproxy/server';
38
- import { truncateErrorMessage, messageOf } from '../errors/index.js';
37
+ import { FetchproxyServer, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, classifyBridgeError as classifyBridgeErrorKind, classifyFetchError as classifyFetchErrorKind, FetchproxyTimeoutError as FetchproxyTimeoutErrorClass, classifyRowError as bridgeClassifyRowError, } from '@fetchproxy/server';
38
+ import { truncateErrorMessage, messageOf, isTimeoutError } from '../errors/index.js';
39
39
  import { edgeBlockOf } from '../internal/edge-block.js';
40
40
  // ---------------------------------------------------------------------------
41
41
  // Re-exports — single import site for the bridge primitives (design: re-export,
42
42
  // never reimplement). MCPs import these from here instead of reaching into
43
43
  // `@fetchproxy/server` directly, so a version bump is absorbed in one place.
44
44
  // ---------------------------------------------------------------------------
45
- export { FetchproxyServer, mapWithConcurrency, withDeadline, TokenBucket, classifyBotWall, retryOnceOnTimeout, FetchproxyProtocolError, FetchproxyHttpError, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, FetchproxyTimeoutError, classifyBridgeError, classifyRowError, classifyFetchError, backoffDelayMs, BRIDGE_CONCURRENCY,
45
+ export { FetchproxyServer, mapWithConcurrency, withDeadline, TokenBucket, classifyBotWall, FetchproxyProtocolError, FetchproxyHttpError, FetchproxyBridgeDownError, FetchproxySessionNotReadyError, FetchproxyTimeoutError, classifyBridgeError, classifyFetchError, backoffDelayMs, BRIDGE_CONCURRENCY,
46
46
  // Page-state / scrape + small async helpers. Re-exported so a consumer can
47
47
  // route its ENTIRE `@fetchproxy/server` surface through this subpath (single
48
48
  // import site) — the realty MCPs use these alongside the bridge primitives.
49
49
  chunk, sleep, extractGlobalAssign, extractBalancedObject, extractImgTags, lastPathSegment, } from '@fetchproxy/server';
50
+ // NOTE: `classifyBridgeError` above is fetchproxy's RAW classifier (it returns
51
+ // a bare kind STRING), re-exported verbatim so an MCP can swap
52
+ // `from '@fetchproxy/server'` → `from '@chrischall/mcp-utils/fetchproxy'` as a
53
+ // pure drop-in. The richer { type, message, hint } envelope is a SEPARATE
54
+ // helper exported as `bridgeErrorInfo` (defined below) — it does not squat the
55
+ // `classifyBridgeError` name. `retryOnceOnTimeout` and `classifyRowError` are
56
+ // NOT raw re-exports any more: the wrappers below are signature-compatible
57
+ // supersets that also honour non-bridge timeouts (fleet-audit#1078).
58
+ /**
59
+ * Whether a timeout may be re-sent. A timeout that declares `retrySafe: false`
60
+ * (fetchproxy's timed-out write, or any consumer error using the same field)
61
+ * may already have reached the server, so it is never retried.
62
+ */
63
+ function timeoutRetrySafe(err) {
64
+ return err?.retrySafe !== false;
65
+ }
66
+ /**
67
+ * Run `fn`; if it throws a TIMEOUT, run it once more. Superset of
68
+ * `@fetchproxy/server`'s `retryOnceOnTimeout`: a bridge
69
+ * `FetchproxyTimeoutError` behaves exactly as there, and so does ANY error
70
+ * {@link isTimeoutError} recognises — mcp-utils' `RequestTimeoutError`,
71
+ * `AbortSignal.timeout()`'s `TimeoutError`, a consumer class named
72
+ * `*TimeoutError` (onehome-mcp's `OneHomeRequestTimeoutError`, the
73
+ * fleet-audit#1078 case), or one carrying `timedOut: true`.
74
+ *
75
+ * Never retried: a timeout with `retrySafe: false` (may already have run), a
76
+ * caller cancellation (`AbortError`), any non-timeout error, and the second
77
+ * attempt's failure — each propagates unchanged.
78
+ */
79
+ export async function retryOnceOnTimeout(fn) {
80
+ try {
81
+ return await fn();
82
+ }
83
+ catch (err) {
84
+ if (err instanceof FetchproxyTimeoutErrorClass) {
85
+ // Bridge timeout: fetchproxy's own rule — retried only when retrySafe.
86
+ if (!err.retrySafe)
87
+ throw err;
88
+ return await fn();
89
+ }
90
+ if (isTimeoutError(err) && timeoutRetrySafe(err))
91
+ return await fn();
92
+ throw err;
93
+ }
94
+ }
95
+ /**
96
+ * Per-row error classification for bulk tools — superset of
97
+ * `@fetchproxy/server`'s `classifyRowError`, same return shape. Bridge errors
98
+ * classify exactly as there (`'bridge timeout after retry: …'`,
99
+ * `'bridge unreachable: …'`, …). Any OTHER error {@link isTimeoutError}
100
+ * recognises is `kind: 'timeout'` with
101
+ * `'timeout after retry: <message>'` — or `'timeout (not retried): <message>'`
102
+ * when it declares `retrySafe: false` — so a stalled upstream row stays
103
+ * distinguishable from a genuine "not found" (`'other'`). A caller
104
+ * cancellation is never `'timeout'`.
105
+ */
106
+ export function classifyRowError(err) {
107
+ const bridge = bridgeClassifyRowError(err);
108
+ if (bridge.kind !== 'other' || !isTimeoutError(err))
109
+ return bridge;
110
+ const message = messageOf(err);
111
+ return timeoutRetrySafe(err)
112
+ ? { kind: 'timeout', message: `timeout after retry: ${message}` }
113
+ : { kind: 'timeout', message: `timeout (not retried): ${message}` };
114
+ }
50
115
  /**
51
116
  * Matches a value that is *entirely* an unsubstituted shell-style placeholder
52
117
  * (`${FOO}`). MCP hosts that forward an env block without expanding it leak
@@ -626,6 +691,32 @@ function probeDisplayUrl(hostLabel, probePath) {
626
691
  export function bridgeHealthcheckDescription(hostLabel, probePath) {
627
692
  return `Round-trips a small public ${hostLabel} URL (${probePath}) through ContextMint Bridge (your signed-in browser tab) and returns diagnostics: the bridge's role (host/peer/null), port, version, the extension link (linked / pair pending / not attached / never answered), the elapsed round-trip time, and a plain-English hint distinguishing 'bridge never came up' from 'extension not connected' from 'this browser can't serve a capability' from 'real ${hostLabel}-side problem'. Read-only, no auth required.`;
628
693
  }
694
+ /** How deep {@link typedCauseOf} follows a `cause` chain. */
695
+ const CAUSE_DEPTH_MAX = 8;
696
+ /**
697
+ * The first error along `err`'s `cause` chain that says something typed — a
698
+ * fetchproxy error the raw classifier names, a session-not-ready, an edge
699
+ * block, or a browser capability gap — or `err` itself when nothing does.
700
+ * Bounded and cycle-safe: a cause chain is consumer data.
701
+ */
702
+ function typedCauseOf(err) {
703
+ const seen = new Set([err]);
704
+ let current = err;
705
+ for (let depth = 0; depth < CAUSE_DEPTH_MAX; depth++) {
706
+ const cause = current instanceof Error ? current.cause : undefined;
707
+ if (cause === undefined || cause === null || seen.has(cause))
708
+ break;
709
+ seen.add(cause);
710
+ if (cause instanceof FetchproxySessionNotReadyError ||
711
+ classifyBridgeErrorKind(cause) !== 'other' ||
712
+ edgeBlockOf(cause) !== null ||
713
+ capabilityGapOf(cause) !== null) {
714
+ return cause;
715
+ }
716
+ current = cause;
717
+ }
718
+ return err;
719
+ }
629
720
  /**
630
721
  * The bridge healthcheck's whole body, without the registration.
631
722
  *
@@ -705,29 +796,40 @@ export async function runBridgeHealthcheck(args) {
705
796
  let customDetail;
706
797
  let capabilityGap;
707
798
  let edge = null;
799
+ // The typed cause classified in place of a wrapping error, when there was one.
800
+ let pairCodeSource = thrown;
708
801
  if (rawError) {
709
802
  // `runProbe` (or classifyBridgeError on the direct route) already
710
803
  // classified the throw in fetchproxy's raw vocabulary. Trust that as
711
804
  // the discriminator — mapping `'other'` → `'unknown'` to match the
712
805
  // envelope — except for a session-not-ready throw, which a 2.4 server
713
806
  // still files under 'other': the typed `thrown` settles it either way.
714
- let kind = rawError.kind === 'other' ? 'unknown' : rawError.kind;
715
- if (thrown instanceof FetchproxySessionNotReadyError) {
807
+ // A consumer that re-throws a typed bridge failure inside its own Error
808
+ // (to put a remedy in the message, keeping the original as `cause`) files
809
+ // as 'other' here. Classify the typed cause instead — hemnet and booli
810
+ // each hand-rolled a `classifyThrown` for exactly this. `classifyThrown`
811
+ // below still sees the error as thrown.
812
+ const subject = rawError.kind === 'other' && thrown !== undefined ? typedCauseOf(thrown) : thrown;
813
+ if (subject !== thrown)
814
+ pairCodeSource = subject;
815
+ const subjectKind = subject === thrown ? rawError.kind : classifyBridgeErrorKind(subject);
816
+ let kind = subjectKind === 'other' ? 'unknown' : subjectKind;
817
+ if (subject instanceof FetchproxySessionNotReadyError) {
716
818
  kind = 'session_not_ready';
717
- bridgeHint = thrown.hint;
819
+ bridgeHint = subject.hint;
718
820
  }
719
- else if (thrown instanceof FetchproxyBridgeDownError) {
720
- bridgeHint = thrown.hint;
821
+ else if (subject instanceof FetchproxyBridgeDownError) {
822
+ bridgeHint = subject.hint;
721
823
  }
722
- else if (thrown !== undefined && mayBeCapabilityError(rawError.kind)) {
824
+ else if (subject !== undefined && mayBeCapabilityError(subjectKind)) {
723
825
  // The server's classifier files a browser gap under 'protocol' (or
724
826
  // 'hello_rejected'); name it, so the ladder can say whose fault it isn't.
725
- const gap = capabilityGapOf(thrown);
827
+ const gap = capabilityGapOf(subject);
726
828
  if (gap) {
727
829
  kind = 'capability_unavailable';
728
830
  capabilityGap = gap;
729
831
  }
730
- else if (isCapabilityDenied(thrown)) {
832
+ else if (isCapabilityDenied(subject)) {
731
833
  kind = 'capability_denied';
732
834
  }
733
835
  }
@@ -739,7 +841,7 @@ export async function runBridgeHealthcheck(args) {
739
841
  // failure, so a bridge that is down, unpaired, timed out or missing a
740
842
  // capability keeps its own answer.
741
843
  if (thrown !== undefined && (kind === 'http' || kind === 'unknown')) {
742
- edge = edgeBlockOf(thrown);
844
+ edge = edgeBlockOf(subject) ?? edgeBlockOf(thrown);
743
845
  if (edge !== null) {
744
846
  kind = 'edge_blocked';
745
847
  customDetail = { vendor: edge.vendor };
@@ -800,7 +902,7 @@ export async function runBridgeHealthcheck(args) {
800
902
  session: {
801
903
  ...(bridge?.session_state !== undefined ? { state: bridge.session_state } : {}),
802
904
  pairCode: bridge?.pending_pair_code ??
803
- (thrown instanceof FetchproxySessionNotReadyError ? thrown.pairCode : null),
905
+ (pairCodeSource instanceof FetchproxySessionNotReadyError ? pairCodeSource.pairCode : null),
804
906
  },
805
907
  direct,
806
908
  ...(edge !== null ? { edgeVendor: edge.vendor } : {}),
@@ -894,4 +996,9 @@ export function registerAdaptiveHealthcheckTool(args) {
894
996
  ? runBridgeHealthcheck({ server, prefix, hostLabel, ...bridge })
895
997
  : runCredentialHealthcheck({ server, prefix, hostLabel, ...credential }));
896
998
  }
999
+ // ---------------------------------------------------------------------------
1000
+ // Direct-first transport with a sticky bridge fallback on an edge block
1001
+ // (hoisted from hemnet-mcp / booli-mcp — see fallback.ts).
1002
+ // ---------------------------------------------------------------------------
1003
+ export { createDirectFirstTransport, readTransportMode, } from './fallback.js';
897
1004
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetchproxy/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetchproxy/index.ts"],"names":[],"mappings":"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"}
@@ -20,4 +20,13 @@
20
20
  * `allowedRoots`.
21
21
  */
22
22
  export declare function assertPathWithinRoots(path: string, roots: readonly string[]): string;
23
+ /**
24
+ * {@link assertPathWithinRoots}, also reporting WHICH root (its real path)
25
+ * contained the target — for checks that judge the path relative to its root
26
+ * (the upload guard's hidden-segment rule). Internal to the fs module.
27
+ */
28
+ export declare function confineToRoots(path: string, roots: readonly string[]): {
29
+ real: string;
30
+ root: string;
31
+ };
23
32
  //# sourceMappingURL=confine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"confine.d.ts","sourceRoot":"","sources":["../../src/fs/confine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsCH;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAMpF"}
1
+ {"version":3,"file":"confine.d.ts","sourceRoot":"","sources":["../../src/fs/confine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsCH;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEpF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAOrG"}