@plurnk/plurnk-mcp 1.7.0 → 1.9.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/dist/config.js CHANGED
@@ -6,21 +6,29 @@ const COMPANION_SUFFIXES = [
6
6
  "_cwd",
7
7
  "_env",
8
8
  "_headers",
9
+ "_summary",
9
10
  "_tools",
10
11
  "_read",
11
12
  ];
12
13
  const CONTROL_KEYS = new Map([
13
14
  ["connect_timeout", `${PREFIX}CONNECT_TIMEOUT`],
14
15
  ["request_timeout", `${PREFIX}REQUEST_TIMEOUT`],
16
+ ["enabled", `${PREFIX}ENABLED`],
17
+ ["expanded", `${PREFIX}EXPANDED`],
15
18
  ]);
16
19
  const SERVER_NAME = /^[a-z][a-z0-9-]*$/;
20
+ // {§mcp-summary-derivation} — a _SUMMARY companion may extend a server name
21
+ // with one tool name (PLURNK_MCP_<server>_<tool>_SUMMARY); tool names legally
22
+ // contain underscores, so summary keys admit them and bind to the declared
23
+ // server in summaryOverrides.
24
+ const SUMMARY_KEY_NAME = /^[a-z][a-z0-9_-]*$/;
17
25
  const ENV_REFERENCE = /\$\{([A-Za-z_][A-Za-z0-9_]*)\}/gu;
18
26
  const assertServerName = (name, variable) => {
19
27
  if (!SERVER_NAME.test(name)) {
20
28
  throw new Error(`${variable} derives invalid MCP server name '${name}'; names must match [a-z][a-z0-9-]*.`);
21
29
  }
22
30
  };
23
- const parseEnvironment = (environ) => {
31
+ const parseEnvironment = (environ, allowOrphanCompanions = false) => {
24
32
  const targets = new Map();
25
33
  const companions = new Map();
26
34
  for (const [key, value] of Object.entries(environ)) {
@@ -44,7 +52,14 @@ const parseEnvironment = (environ) => {
44
52
  if (reservedGlobal !== undefined) {
45
53
  throw new Error(`${key} uses ${reservedGlobal} as a server name; reserved globals cannot have server companions.`);
46
54
  }
47
- assertServerName(name, key);
55
+ if (companion === "_summary") {
56
+ if (!SUMMARY_KEY_NAME.test(name)) {
57
+ throw new Error(`${key} derives invalid MCP summary name '${name}'; names must match [a-z][a-z0-9_-]*.`);
58
+ }
59
+ }
60
+ else {
61
+ assertServerName(name, key);
62
+ }
48
63
  const bySuffix = companions.get(name) ?? new Map();
49
64
  const existing = bySuffix.get(companion);
50
65
  if (existing !== undefined) {
@@ -61,11 +76,18 @@ const parseEnvironment = (environ) => {
61
76
  }
62
77
  targets.set(folded, { key, value });
63
78
  }
64
- for (const [name, fields] of companions) {
65
- if (targets.has(name))
66
- continue;
67
- const variables = [...fields.values()].map(({ key }) => key).join(", ");
68
- throw new Error(`${variables} has no MCP server target ${PREFIX}${name.toUpperCase()}.`);
79
+ if (!allowOrphanCompanions) {
80
+ for (const [name, fields] of companions) {
81
+ if (targets.has(name))
82
+ continue;
83
+ // A _SUMMARY companion may address one tool of a declared server:
84
+ // PLURNK_MCP_<SERVER>_<TOOL>_SUMMARY ({§mcp-summary-derivation}).
85
+ const toolSummaryOf = [...targets.keys()].find((target) => name.startsWith(`${target}_`));
86
+ if (fields.get("_summary") !== undefined && toolSummaryOf !== undefined)
87
+ continue;
88
+ const variables = [...fields.values()].map(({ key }) => key).join(", ");
89
+ throw new Error(`${variables} has no MCP server target ${PREFIX}${name.toUpperCase()}.`);
90
+ }
69
91
  }
70
92
  return { targets, companions };
71
93
  };
@@ -121,69 +143,184 @@ const jsonRecord = (raw, field) => {
121
143
  return parsed;
122
144
  };
123
145
  export const serverNames = (environ = process.env) => [...parseEnvironment(environ).targets.keys()].toSorted();
124
- export const serverDefinition = (name, environ = process.env) => {
125
- const { targets, companions } = parseEnvironment(environ);
146
+ const definitionFromEnvironment = (name, parsed, base) => {
126
147
  const folded = name.toLowerCase();
127
- const target = targets.get(folded);
128
- if (target === undefined)
129
- return null;
130
- if (target.value.length === 0)
148
+ const target = parsed.targets.get(folded);
149
+ if (target === undefined && base === undefined) {
150
+ const orphaned = parsed.companions.get(folded);
151
+ if (orphaned === undefined)
152
+ return null;
153
+ const variables = [...orphaned.values()].map(({ key }) => key).join(", ");
154
+ throw new Error(`${variables} has no MCP server target ${PREFIX}${folded.toUpperCase()}.`);
155
+ }
156
+ if (base !== undefined && base.name !== folded) {
157
+ throw new Error(`MCP base definition '${base.name}' cannot configure alias '${folded}'.`);
158
+ }
159
+ if (target?.value.length === 0)
131
160
  throw new Error(`${target.key} must not be empty.`);
132
- const fields = companions.get(folded);
161
+ const lower = target === undefined ? base : undefined;
162
+ const fields = parsed.companions.get(folded);
133
163
  const fieldName = (suffix) => fields?.get(suffix)?.key ?? `${PREFIX}${folded.toUpperCase()}${suffix.toUpperCase()}`;
134
164
  const configuredTools = fields?.get("_tools");
165
+ const inheritedTools = lower?.tools;
166
+ const tools = configuredTools === undefined
167
+ ? structuredClone(inheritedTools)
168
+ : toolNames(configuredTools.value, configuredTools.key);
135
169
  const policy = {
136
- ...(configuredTools === undefined
137
- ? {}
138
- : { tools: toolNames(configuredTools.value, configuredTools.key) }),
139
- read: toolNames(fields?.get("_read")?.value, fieldName("_read")),
170
+ ...(tools === undefined ? {} : { tools }),
171
+ read: fields?.has("_read")
172
+ ? toolNames(fields.get("_read")?.value, fieldName("_read"))
173
+ : structuredClone(lower?.read ?? []),
140
174
  };
141
- if (/^https?:\/\//i.test(target.value)) {
175
+ const transport = target === undefined
176
+ ? lower?.transport
177
+ : /^https?:\/\//iu.test(target.value) ? "http" : "stdio";
178
+ if (transport === "http") {
142
179
  const invalid = ["_args", "_cwd", "_env"]
143
180
  .flatMap((suffix) => fields?.get(suffix)?.key ?? []);
144
181
  if (invalid.length > 0) {
145
- throw new Error(`${invalid.join(", ")} cannot accompany HTTP MCP server target ${target.key}; transport-neutral _TOOLS/_READ and HTTP _HEADERS are valid.`);
182
+ throw new Error(`${invalid.join(", ")} cannot accompany HTTP MCP server target ${target?.key ?? folded}; transport-neutral _TOOLS/_READ and HTTP _HEADERS are valid.`);
146
183
  }
147
- const headers = jsonRecord(fields?.get("_headers")?.value, fieldName("_headers"));
184
+ const inheritedHeaders = lower?.transport === "http"
185
+ ? structuredClone(lower.headers)
186
+ : undefined;
187
+ const headers = fields?.has("_headers")
188
+ ? jsonRecord(fields.get("_headers")?.value, fieldName("_headers"))
189
+ : inheritedHeaders;
148
190
  const bearer = fields?.get("_bearer");
191
+ const inheritedAuthorization = lower?.transport === "http"
192
+ ? structuredClone(lower.authorization)
193
+ : undefined;
194
+ const authorization = bearer === undefined
195
+ ? inheritedAuthorization
196
+ : { type: "bearer", token: bearer.value };
149
197
  const authorizationHeader = Object.keys(headers ?? {}).find((key) => key.toLowerCase() === "authorization");
150
- if (bearer !== undefined && authorizationHeader !== undefined) {
151
- throw new Error(`${bearer.key} conflicts with Authorization in the server's _HEADERS map.`);
198
+ if (authorization?.type === "bearer" && authorizationHeader !== undefined) {
199
+ throw new Error(`${bearer?.key ?? "Bearer authorization"} conflicts with Authorization in the server's _HEADERS map.`);
152
200
  }
201
+ const url = target?.value ?? (lower?.transport === "http" ? lower.url : undefined);
202
+ if (url === undefined)
203
+ throw new Error(`HTTP MCP server '${folded}' has no target.`);
153
204
  return Validator.assertMcpServerDefinition({
154
205
  name: folded,
155
206
  transport: "http",
156
- url: target.value,
207
+ url,
157
208
  ...(headers === undefined ? {} : { headers }),
158
- ...(bearer === undefined
159
- ? {}
160
- : { authorization: { type: "bearer", token: bearer.value } }),
209
+ ...(authorization === undefined ? {} : { authorization }),
161
210
  ...policy,
162
211
  });
163
212
  }
164
213
  const httpOnly = ["_headers", "_bearer"]
165
214
  .flatMap((suffix) => fields?.get(suffix)?.key ?? []);
166
215
  if (httpOnly.length > 0) {
167
- throw new Error(`${httpOnly.join(", ")} cannot accompany stdio MCP server target ${target.key}.`);
216
+ throw new Error(`${httpOnly.join(", ")} cannot accompany stdio MCP server target ${target?.key ?? folded}.`);
168
217
  }
169
- const cwd = fields?.get("_cwd")?.value;
170
- const stdioEnvironment = jsonRecord(fields?.get("_env")?.value, fieldName("_env"));
218
+ const inheritedStdio = lower?.transport === "stdio" ? lower : undefined;
219
+ const cwd = fields?.has("_cwd")
220
+ ? fields.get("_cwd")?.value
221
+ : inheritedStdio?.cwd;
222
+ const stdioEnvironment = fields?.has("_env")
223
+ ? jsonRecord(fields.get("_env")?.value, fieldName("_env"))
224
+ : structuredClone(inheritedStdio?.env);
225
+ const args = fields?.has("_args")
226
+ ? jsonStrings(fields.get("_args")?.value, fieldName("_args"))
227
+ : structuredClone(inheritedStdio?.args ?? []);
228
+ const command = target?.value ?? inheritedStdio?.command;
229
+ if (command === undefined)
230
+ throw new Error(`Stdio MCP server '${folded}' has no target.`);
171
231
  return Validator.assertMcpServerDefinition({
172
232
  name: folded,
173
233
  transport: "stdio",
174
- command: target.value,
175
- args: jsonStrings(fields?.get("_args")?.value, fieldName("_args")),
234
+ command,
235
+ args,
176
236
  ...(cwd === undefined ? {} : { cwd }),
177
237
  ...(stdioEnvironment === undefined ? {} : { env: stdioEnvironment }),
178
238
  ...policy,
179
239
  });
180
240
  };
241
+ export const serverDefinition = (name, environ = process.env) => definitionFromEnvironment(name, parseEnvironment(environ));
242
+ export const overlayServerDefinitions = (overlay, bases = new Map()) => {
243
+ const validated = Validator.assertMcpConfigurationOverlay(structuredClone(overlay));
244
+ const parsed = parseEnvironment(validated, true);
245
+ const names = new Set([...parsed.targets.keys(), ...parsed.companions.keys()]);
246
+ return new Map([...names]
247
+ .toSorted()
248
+ .map((name) => {
249
+ const definition = definitionFromEnvironment(name, parsed, bases.get(name));
250
+ if (definition === null)
251
+ throw new Error(`MCP overlay server '${name}' disappeared.`);
252
+ return [name, definition];
253
+ }));
254
+ };
181
255
  export const serviceDefinitions = (environ = process.env) => serverNames(environ).map((name) => {
182
256
  const definition = serverDefinition(name, environ);
183
257
  if (definition === null)
184
258
  throw new Error(`MCP server '${name}' disappeared during configuration.`);
185
259
  return definition;
186
260
  });
261
+ // {§mcp-summary-derivation} — authored orientation lines. A _SUMMARY companion
262
+ // names either the whole server (PLURNK_MCP_<SERVER>_SUMMARY) or one tool
263
+ // (PLURNK_MCP_<SERVER>_<TOOL>_SUMMARY). Values expand ${NAME} references like
264
+ // every other companion.
265
+ // {§tools-resource-materialization} — the turn-0 tools survey lists server
266
+ // families; servers named here also expand their complete tool tree into the
267
+ // turn-0 survey.
268
+ export const expandedServerNames = (environ = process.env) => {
269
+ const field = `${PREFIX}EXPANDED`;
270
+ const configured = jsonStrings(environ[field], field);
271
+ const available = new Set(serverNames(environ));
272
+ const expanded = new Set();
273
+ for (const name of configured) {
274
+ assertServerName(name, field);
275
+ if (!available.has(name)) {
276
+ throw new Error(`${field} contains unknown MCP server '${name}'.`);
277
+ }
278
+ if (expanded.has(name)) {
279
+ throw new Error(`${field} contains duplicate MCP server '${name}'.`);
280
+ }
281
+ expanded.add(name);
282
+ }
283
+ return [...expanded].toSorted();
284
+ };
285
+ export const summaryOverrides = (environ = process.env) => {
286
+ const { targets, companions } = parseEnvironment(environ);
287
+ const servers = new Map();
288
+ const tools = new Map();
289
+ for (const [name, fields] of companions) {
290
+ const summary = fields.get("_summary");
291
+ if (summary === undefined)
292
+ continue;
293
+ const value = expandReferences(summary.value, environ, summary.key);
294
+ if (targets.has(name)) {
295
+ servers.set(name, value);
296
+ continue;
297
+ }
298
+ const server = [...targets.keys()].find((target) => name.startsWith(`${target}_`));
299
+ if (server === undefined) {
300
+ throw new Error(`${summary.key} has no MCP server target ${PREFIX}${name.toUpperCase()}.`);
301
+ }
302
+ const tool = name.slice(server.length + 1);
303
+ tools.set(`${server}/${tool}`, value);
304
+ }
305
+ return { servers, tools };
306
+ };
307
+ export const serviceEnabledNames = (environ = process.env) => {
308
+ const field = `${PREFIX}ENABLED`;
309
+ const configured = jsonStrings(environ[field], field);
310
+ const available = new Set(serverNames(environ));
311
+ const enabled = new Set();
312
+ for (const name of configured) {
313
+ assertServerName(name, field);
314
+ if (!available.has(name)) {
315
+ throw new Error(`${field} contains unknown MCP server '${name}'.`);
316
+ }
317
+ if (enabled.has(name)) {
318
+ throw new Error(`${field} contains duplicate MCP server '${name}'.`);
319
+ }
320
+ enabled.add(name);
321
+ }
322
+ return [...enabled].toSorted();
323
+ };
187
324
  export const connectTimeoutMs = (environ = process.env) => {
188
325
  const raw = environ.PLURNK_MCP_CONNECT_TIMEOUT;
189
326
  const value = Number(raw);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"extensionChannel.d.ts","sourceRoot":"","sources":["../src/extensionChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACb,KAAK,SAAS,EACjB,MAAM,8BAA8B,CAAC;AAItC,UAAU,cAAc;IACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAClD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CACtD;AAYD,UAAU,uBAAuB;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,QAAQ,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC7C;AAED,KAAK,uBAAuB,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAWzD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAYjC,YAAY,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,EAYjE;IAED,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG,MAAM,IAAI,CAI/D;IAEK,OAAO,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACzC,OAAO,EAAE,cAAc,GACxB,OAAO,CAAC,OAAO,CAAC,CAwElB;IAmFD,KAAK,IAAI,IAAI,CAWZ;CACJ"}
1
+ {"version":3,"file":"extensionChannel.d.ts","sourceRoot":"","sources":["../src/extensionChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACb,KAAK,SAAS,EACjB,MAAM,8BAA8B,CAAC;AAItC,UAAU,cAAc;IACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAClD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CACtD;AAYD,UAAU,uBAAuB;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,QAAQ,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC7C;AAED,KAAK,uBAAuB,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAYzD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAYjC,YAAY,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,EAYjE;IAED,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG,MAAM,IAAI,CAI/D;IAEK,OAAO,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACzC,OAAO,EAAE,cAAc,GACxB,OAAO,CAAC,OAAO,CAAC,CAwElB;IAgGD,KAAK,IAAI,IAAI,CAWZ;CACJ"}
@@ -22,7 +22,7 @@ export default class ExtensionChannel {
22
22
  this.#options = options;
23
23
  this.#priorMessage = transport.onmessage;
24
24
  this.#priorClose = transport.onclose;
25
- this.#messageHandler = (message) => this.#receive(message);
25
+ this.#messageHandler = (message, extra) => this.#receive(message, extra);
26
26
  this.#closeHandler = () => {
27
27
  this.#rejectAll(new SdkError(SdkErrorCode.ConnectionClosed, "MCP extension channel closed."));
28
28
  this.#priorClose?.();
@@ -104,10 +104,10 @@ export default class ExtensionChannel {
104
104
  this.#options.onError?.(asError(cause));
105
105
  }
106
106
  }
107
- #receive(message) {
107
+ #receive(message, extra) {
108
108
  const record = asRecord(message);
109
109
  if (record === undefined) {
110
- this.#priorMessage?.(message);
110
+ this.#priorMessage?.(message, extra);
111
111
  return;
112
112
  }
113
113
  const id = record.id;
@@ -158,7 +158,21 @@ export default class ExtensionChannel {
158
158
  return;
159
159
  }
160
160
  }
161
- this.#priorMessage?.(message);
161
+ if (record.id !== undefined && ("result" in record || "error" in record)) {
162
+ // {§mcp-core-matrix} The SDK defers notification callbacks but
163
+ // settles responses synchronously. A microtask checkpoint keeps
164
+ // coalesced notification/response frames in their wire order.
165
+ queueMicrotask(() => {
166
+ try {
167
+ this.#priorMessage?.(message, extra);
168
+ }
169
+ catch (cause) {
170
+ this.#options.onError?.(asError(cause));
171
+ }
172
+ });
173
+ return;
174
+ }
175
+ this.#priorMessage?.(message, extra);
162
176
  }
163
177
  #settle(id, error, value) {
164
178
  const pending = this.#pending.get(id);
@@ -1 +1 @@
1
- {"version":3,"file":"extensionChannel.js","sourceRoot":"","sources":["../src/extensionChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,QAAQ,EACR,YAAY,GAMf,MAAM,8BAA8B,CAAC;AAEtC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AA8B9C,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAuC,EAAE,CACrE,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IAChE,CAAC,CAAC,KAAgC;IAClC,CAAC,CAAC,SAAS,CAAC;AAEpB,MAAM,OAAO,GAAG,CAAC,KAAc,EAAS,EAAE,CAAC,KAAK,YAAY,KAAK;IAC7D,CAAC,CAAC,KAAK;IACP,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAE/B,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,UAAU,CAAY;IACtB,QAAQ,CAA0B;IAClC,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC7C,aAAa,GAAG,IAAI,GAAG,EAA2B,CAAC;IACnD,aAAa,CAAyB;IACtC,WAAW,CAAuB;IAClC,eAAe,CAAsC;IACrD,aAAa,CAAoC;IAC1D,OAAO,GAAG,CAAC,CAAC;IACZ,OAAO,GAAG,KAAK,CAAC;IAEhB,YAAY,SAAoB,EAAE,OAAgC;QAC9D,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,eAAe,GAAG,CAAC,OAAO,EAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,GAAS,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,+BAA+B,CAAC,CAAC,CAAC;YAC9F,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACzB,CAAC,CAAC;QACF,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;QAC3C,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,kBAAkB,CAAC,OAAgC;QAC/C,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,OAAO,CACT,MAAc,EACd,MAAyC,EACzC,OAAuB;QAEvB,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtE,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;QACjC,MAAM,EAAE,GAAG,GAAG,iBAAiB,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,QAAQ,CACzB,YAAY,CAAC,cAAc,EAC3B,0BAA0B,MAAM,kBAAkB,OAAO,CAAC,OAAO,aAAa,EAC9E,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACvC,CAAC,CAAC;gBACH,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,MAAM,cAAc,CAAC,CAAC,CAAC;gBAC9E,IACI,OAAO,CAAC,8BAA8B,KAAK,IAAI;uBAC5C,IAAI,CAAC,UAAU,CAAC,mBAAmB,KAAK,IAAI,EACjD,CAAC;oBACC,KAAK,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;gBACvC,CAAC;YACL,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACpB,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;gBACxC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,GAAS,EAAE;oBACT,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBACrF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBACzB,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC3B,IACI,OAAO,CAAC,8BAA8B,KAAK,IAAI;2BAC5C,IAAI,CAAC,UAAU,CAAC,mBAAmB,KAAK,IAAI,EACjD,CAAC;wBACC,KAAK,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;oBACvC,CAAC;gBACL,CAAC,CAAC;YACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE;gBAClB,OAAO;gBACP,MAAM;gBACN,YAAY;gBACZ,KAAK;gBACL,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO;gBACP,UAAU,EAAE,OAAO,CAAC,UAAU;aACjC,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAmB;YAC5B,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM;YACN,MAAM,EAAE;gBACJ,GAAG,MAAM;gBACT,KAAK,EAAE;oBACH,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;oBAC1D,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;oBAChD,CAAC,4BAA4B,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB;oBAChE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;oBAClE,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC5B;aACJ;SACJ,CAAC;QACF,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/B,aAAa,EAAE,YAAY,CAAC,MAAM;YAClC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAClC,EAAE,EACF,IAAI,QAAQ,CACR,YAAY,CAAC,gBAAgB,EAC7B,0BAA0B,MAAM,qCAAqC,CACxE,CACJ;SACJ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,EAAU;QACjC,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,OAAuB;QAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO;QACX,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YAClC,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,SAAS,CACpC,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EACrD,OAAO,KAAK,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B,EACpF,KAAK,EAAE,IAAI,CACd,CAAC,CAAC;gBACH,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,aAAa,CAAC,CAAC,KAAK,EAAE,4CAA4C,CAAC,CAAC,CAAC;gBAC1F,OAAO;YACX,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3C,OAAO;QACX,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,qBAAqB,EAAE,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACD,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC3B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,CAAC;YACL,CAAC;YACD,OAAO;QACX,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,MAAM,EAAE,aAAa,CAAC;YACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACnE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACzC,IAAI,OAAO,KAAK,SAAS;oBAAE,OAAO;gBAClC,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC9D,OAAO,CAAC,UAAU,EAAE,CAAC;wBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,GAAG,CAAC,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpE,GAAG,CAAC,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC7E,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC,CAAC;gBAC3F,CAAC;gBACD,OAAO;YACX,CAAC;QACL,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,EAAU,EAAE,KAAe,EAAE,KAAe;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;YAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,UAAU,CAAC,KAAY;QACnB,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED,KAAK;QACD,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,+BAA+B,CAAC,CAAC,CAAC;QAC9F,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/C,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"extensionChannel.js","sourceRoot":"","sources":["../src/extensionChannel.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { default as Module } from "./Module.ts";
2
2
  export { default } from "./Module.ts";
3
3
  export { MCP_CLIENT_VERSION, MCP_CONFORMANCE_VERSION, MCP_PROTOCOL_VERSION, MCP_SPECIFICATION_COMMIT, MCP_TASKS_EXTENSION_ID, MCP_TASKS_SPECIFICATION_COMMIT, } from "./protocol.ts";
4
- export { connectTimeoutMs, expandReferences, requestTimeoutMs, serverDefinition, serverNames, serviceDefinitions, } from "./config.ts";
4
+ export { connectTimeoutMs, expandReferences, requestTimeoutMs, serverDefinition, serverNames, serviceDefinitions, serviceEnabledNames, } from "./config.ts";
5
5
  export type { ToolPolicy } from "./config.ts";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACH,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACH,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { default as Module } from "./Module.js";
2
2
  export { default } from "./Module.js";
3
3
  export { MCP_CLIENT_VERSION, MCP_CONFORMANCE_VERSION, MCP_PROTOCOL_VERSION, MCP_SPECIFICATION_COMMIT, MCP_TASKS_EXTENSION_ID, MCP_TASKS_SPECIFICATION_COMMIT, } from "./protocol.js";
4
- export { connectTimeoutMs, expandReferences, requestTimeoutMs, serverDefinition, serverNames, serviceDefinitions, } from "./config.js";
4
+ export { connectTimeoutMs, expandReferences, requestTimeoutMs, serverDefinition, serverNames, serviceDefinitions, serviceEnabledNames, } from "./config.js";
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACH,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACrB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACH,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,GACtB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,106 @@
1
+ #!/usr/bin/env node
2
+ // {§mcp-stdio-process-ownership} — the parent-death watchdog wrapper.
3
+ // plurnk-mcp spawns stdio servers through this wrapper so no server (or its
4
+ // grandchildren, e.g. chromium) can outlive the daemon:
5
+ //
6
+ // - the real server is spawned DETACHED (its own process group), so the
7
+ // wrapper can group-kill the whole tree, grandchildren included;
8
+ // - ordinary transport closure forwards EOF and gives the server a bounded
9
+ // graceful exit; parent death or an expired grace group-SIGKILLs the tree;
10
+ // - a ppid poll covers SIGKILL of the daemon, where close() never runs;
11
+ // - stdio is forwarded verbatim, so the MCP protocol is untouched.
12
+ //
13
+ // Usage (internal): mcp-watchdog.mjs <ppid> -- <command> [args...]
14
+ // The wrapper is a process-lifecycle tool, not a protocol participant.
15
+ import { spawn } from "node:child_process";
16
+
17
+ const args = process.argv.slice(2);
18
+ const sep = args.indexOf("--");
19
+ if (sep < 1) {
20
+ process.stderr.write("mcp-watchdog: usage: mcp-watchdog.mjs <ppid> -- <command> [args...]\n");
21
+ process.exit(64);
22
+ }
23
+ const parentPid = Number(args[0]);
24
+ const command = args[sep + 1];
25
+ const rest = args.slice(sep + 2);
26
+ if (!Number.isSafeInteger(parentPid) || parentPid <= 1 || typeof command !== "string" || command.length === 0) {
27
+ process.stderr.write("mcp-watchdog: invalid invocation\n");
28
+ process.exit(64);
29
+ }
30
+
31
+ const SHUTDOWN_GRACE_MS = 2_000;
32
+
33
+ const child = spawn(command, rest, {
34
+ stdio: ["pipe", "pipe", "inherit"],
35
+ env: process.env,
36
+ detached: true, // own process group: kill(-pid) reaches grandchildren
37
+ });
38
+ const killChildGroup = () => {
39
+ if (child.pid === undefined) return;
40
+ try { process.kill(-child.pid, "SIGKILL"); } catch { /* already gone */ }
41
+ };
42
+ let state = "running";
43
+ let grace;
44
+ const die = (reason, code = 0) => {
45
+ if (state === "exited") return;
46
+ state = "exited";
47
+ clearTimeout(grace);
48
+ killChildGroup();
49
+ process.stderr.write(`mcp-watchdog: exiting (${reason})\n`);
50
+ process.exit(code);
51
+ };
52
+
53
+ const alive = () => {
54
+ try { process.kill(parentPid, 0); return true; } catch { return false; }
55
+ };
56
+ const closeInput = () => {
57
+ if (state !== "running") return;
58
+ if (!alive()) {
59
+ die("parent gone");
60
+ return;
61
+ }
62
+ state = "closing";
63
+ child.stdin.end();
64
+ grace = setTimeout(() => die("graceful shutdown deadline"), SHUTDOWN_GRACE_MS);
65
+ };
66
+
67
+ // The daemon owns our stdin. Ordinary transport shutdown closes it while the
68
+ // daemon remains alive; parent death closes it after the owner disappears.
69
+ process.stdin.on("end", closeInput);
70
+ process.stdin.on("close", closeInput);
71
+ process.stdin.resume();
72
+
73
+ // Parent-death signal 2: poll the ppid. Covers a reparented-but-open-fd edge
74
+ // (e.g. a grandchild accidentally inheriting our stdin) at 2s granularity.
75
+ const poll = setInterval(() => {
76
+ if (!alive()) die("parent gone");
77
+ }, 2_000);
78
+ poll.unref();
79
+
80
+ // Forward the protocol verbatim.
81
+ process.stdin.on("data", (chunk) => {
82
+ if (state === "running") child.stdin.write(chunk);
83
+ });
84
+ child.stdout.on("data", (chunk) => process.stdout.write(chunk));
85
+ child.stdout.on("end", () => { if (state !== "exited") process.stdout.end(); });
86
+ child.stdin.on("error", (error) => {
87
+ if (state === "closing" && error.code === "EPIPE") return;
88
+ die(`server stdin failed: ${error.message}`, 66);
89
+ });
90
+
91
+ child.on("exit", (code, signal) => {
92
+ clearInterval(poll);
93
+ if (state === "exited") return;
94
+ state = "exited";
95
+ clearTimeout(grace);
96
+ // A server that exits does not get to strand descendants in its group.
97
+ killChildGroup();
98
+ process.exit(code ?? (signal === null ? 0 : 1));
99
+ });
100
+ child.on("error", (error) => {
101
+ die(`spawn failed: ${error.message}`, 66);
102
+ });
103
+
104
+ for (const signal of ["SIGINT", "SIGHUP", "SIGTERM"]) {
105
+ process.on(signal, () => die(`received ${signal}`, 128));
106
+ }
@@ -1,6 +1,7 @@
1
1
  export declare const MCP_PROTOCOL_VERSION = "2026-07-28";
2
2
  export declare const MCP_SPECIFICATION_COMMIT = "5f5440bb26a62e2cf3440b92da5a667efa03b267";
3
3
  export declare const MCP_TASKS_EXTENSION_ID = "io.modelcontextprotocol/tasks";
4
+ export declare const MCP_OAUTH_CLIENT_CREDENTIALS_EXTENSION_ID = "io.modelcontextprotocol/oauth-client-credentials";
4
5
  export declare const MCP_TASKS_SPECIFICATION_COMMIT = "2c1425d9a288b9b1f489430fe1e00bb392b47e48";
5
6
  export declare const MCP_CLIENT_VERSION = "2.0.0";
6
7
  export declare const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.11";
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,wBAAwB,6CAA6C,CAAC;AACnF,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AACtE,eAAO,MAAM,8BAA8B,6CAA6C,CAAC;AACzF,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,uBAAuB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,wBAAwB,6CAA6C,CAAC;AACnF,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AACtE,eAAO,MAAM,yCAAyC,qDAAqD,CAAC;AAC5G,eAAO,MAAM,8BAA8B,6CAA6C,CAAC;AACzF,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,uBAAuB,mBAAmB,CAAC"}
package/dist/protocol.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export const MCP_PROTOCOL_VERSION = "2026-07-28";
2
2
  export const MCP_SPECIFICATION_COMMIT = "5f5440bb26a62e2cf3440b92da5a667efa03b267";
3
3
  export const MCP_TASKS_EXTENSION_ID = "io.modelcontextprotocol/tasks";
4
+ export const MCP_OAUTH_CLIENT_CREDENTIALS_EXTENSION_ID = "io.modelcontextprotocol/oauth-client-credentials";
4
5
  export const MCP_TASKS_SPECIFICATION_COMMIT = "2c1425d9a288b9b1f489430fe1e00bb392b47e48";
5
6
  export const MCP_CLIENT_VERSION = "2.0.0";
6
7
  export const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.11";
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AACjD,MAAM,CAAC,MAAM,wBAAwB,GAAG,0CAA0C,CAAC;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,+BAA+B,CAAC;AACtE,MAAM,CAAC,MAAM,8BAA8B,GAAG,0CAA0C,CAAC;AACzF,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AACjD,MAAM,CAAC,MAAM,wBAAwB,GAAG,0CAA0C,CAAC;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,+BAA+B,CAAC;AACtE,MAAM,CAAC,MAAM,yCAAyC,GAAG,kDAAkD,CAAC;AAC5G,MAAM,CAAC,MAAM,8BAA8B,GAAG,0CAA0C,CAAC;AACzF,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-mcp",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "description": "Current Model Context Protocol host module for Plurnk.",
5
5
  "keywords": [
6
6
  "plurnk",
@@ -50,13 +50,14 @@
50
50
  "test": "npm run test:lint && npm run test:unit && npm run test:intg",
51
51
  "build:clean": "rm -rf dist",
52
52
  "build:dist": "tsc -p tsconfig.build.json",
53
- "build": "npm run build:clean && npm run build:dist",
53
+ "build:assets": "node scripts/copy-assets.mjs",
54
+ "build": "npm run build:clean && npm run build:dist && npm run build:assets",
54
55
  "prepack": "npm run build",
55
56
  "prepublishOnly": "npm audit --audit-level=moderate && npm test"
56
57
  },
57
58
  "dependencies": {
58
59
  "@modelcontextprotocol/client": "2.0.0",
59
- "@plurnk/plurnk-contracts": "1.7.0"
60
+ "@plurnk/plurnk-contracts": "1.9.0"
60
61
  },
61
62
  "devDependencies": {
62
63
  "@modelcontextprotocol/conformance": "0.2.0-alpha.11",
@@ -64,7 +65,7 @@
64
65
  "zod": "4.4.3"
65
66
  },
66
67
  "peerDependencies": {
67
- "@plurnk/plurnk-execs": "^1.7.0",
68
- "@plurnk/plurnk-schemes": "^1.7.0"
68
+ "@plurnk/plurnk-execs": "^1.9.0",
69
+ "@plurnk/plurnk-schemes": "^1.9.0"
69
70
  }
70
71
  }