@cogitator-ai/mcp 19.1.0 → 19.2.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/README.md CHANGED
@@ -319,6 +319,7 @@ interface MCPServerConfig {
319
319
  maxBodySize?: number; // Default: 10 MB, larger bodies get 413
320
320
  corsOrigin?: string; // Default: '*'
321
321
  auth?: MCPAuthFunction; // Establishes the caller; undefined → 401
322
+ sessions?: boolean; // Session per client (needed for elicitation); default: off
322
323
 
323
324
  logging?: boolean; // Diagnostic logging to stderr (stdout stays clean for stdio JSON-RPC)
324
325
  }
@@ -577,6 +578,19 @@ Add to Claude Desktop config:
577
578
 
578
579
  ---
579
580
 
581
+ ## Serving Agents
582
+
583
+ Serve Cogitator agents to Claude Desktop, Cursor or any MCP client in one call; each agent becomes a tool that takes a `task` (and a `threadId` to continue a conversation, with memory on):
584
+
585
+ ```typescript
586
+ import { serveAgents } from '@cogitator-ai/mcp';
587
+
588
+ await serveAgents(cog, [researcher, writer]); // stdio
589
+ await serveAgents(cog, support, { transport: 'http', port: 3333, auth }); // remote, per user
590
+ ```
591
+
592
+ Tools that need approval are asked from the person at the client through MCP elicitation; clients without it get a paused answer and a `<agent>_resume` tool. `sessions: true` (on in `serveAgents`) keeps an HTTP session per client, which elicitation needs; a session belongs to the caller that started it. See [`examples/mcp/04-agent-as-mcp-server.ts`](../../examples/mcp/04-agent-as-mcp-server.ts).
593
+
580
594
  ## Tool Adapters
581
595
 
582
596
  Convert between Cogitator and MCP tool formats.
package/dist/index.d.ts CHANGED
@@ -10,6 +10,8 @@ export { MCPClient, MCPToolError, connectMCPServer } from './client/mcp-client.j
10
10
  export { createStdioTransport, createHttpTransport } from './client/transports.js';
11
11
  export type { StdioTransportConfig, HttpTransportConfig } from './client/transports.js';
12
12
  export { MCPServer, serveMCPTools } from './server/mcp-server.js';
13
+ export { serveAgents, agentTools } from './server/serve-agents.js';
14
+ export type { AgentHost, AgentToolAnswer, ServeAgentsConfig } from './server/serve-agents.js';
13
15
  export { cogitatorToMCP, toolSchemaToMCP, mcpToCogitator, wrapMCPTools, zodToJsonSchema, jsonSchemaToZod, resultToMCPContent, mcpContentToResult, } from './adapter/tool-adapter.js';
14
- export type { MCPClientConfig, MCPCallToolOptions, MCPRetryConfig, MCPServerConfig, MCPCaller, MCPAuthFunction, MCPTransportType, MCPResource, MCPResourceContent, MCPResourceConfig, MCPPrompt, MCPPromptArgument, MCPPromptArgumentConfig, MCPPromptMessage, MCPPromptConfig, MCPPromptResult, MCPToolDefinition, MCPToolCallResult, MCPToolContent, ToolAdapterOptions, } from './types.js';
16
+ export type { MCPClientConfig, MCPCallToolOptions, MCPRetryConfig, MCPServerConfig, MCPCaller, MCPAuthFunction, MCPToolContext, MCPElicitRequest, MCPElicitResult, MCPElicitField, MCPTransportType, MCPResource, MCPResourceContent, MCPResourceConfig, MCPPrompt, MCPPromptArgument, MCPPromptArgumentConfig, MCPPromptMessage, MCPPromptConfig, MCPPromptResult, MCPToolDefinition, MCPToolCallResult, MCPToolContent, ToolAdapterOptions, } from './types.js';
15
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAErF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAErF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,SAAS,EACT,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -9,5 +9,6 @@
9
9
  export { MCPClient, MCPToolError, connectMCPServer } from './client/mcp-client.js';
10
10
  export { createStdioTransport, createHttpTransport } from './client/transports.js';
11
11
  export { MCPServer, serveMCPTools } from './server/mcp-server.js';
12
+ export { serveAgents, agentTools } from './server/serve-agents.js';
12
13
  export { cogitatorToMCP, toolSchemaToMCP, mcpToCogitator, wrapMCPTools, zodToJsonSchema, jsonSchemaToZod, resultToMCPContent, mcpContentToResult, } from './adapter/tool-adapter.js';
13
14
  //# 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;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGhE,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}
@@ -35,6 +35,7 @@ export declare class MCPServer {
35
35
  private prompts;
36
36
  private started;
37
37
  private httpServer?;
38
+ private readonly sessions;
38
39
  constructor(config: MCPServerConfig);
39
40
  /**
40
41
  * Register a single Cogitator tool
@@ -134,11 +135,24 @@ export declare class MCPServer {
134
135
  * Start the MCP server
135
136
  */
136
137
  start(): Promise<void>;
138
+ /** Elicitation needs the client's reply to reach this server: stdio, or HTTP with sessions. */
139
+ private canElicit;
140
+ /**
141
+ * Ask the client's user through MCP elicitation, tied to the tool call so it
142
+ * works on stateless HTTP too. `undefined` when the client cannot answer.
143
+ */
144
+ private elicit;
137
145
  /**
138
146
  * The caller of an HTTP request per `config.auth`: `undefined` when the
139
147
  * server has no `auth`, `null` when the request is refused.
140
148
  */
141
149
  private authenticate;
150
+ /**
151
+ * A request in session mode: a request without a session id starts a
152
+ * session (an `initialize`), the others go to their session's transport.
153
+ * A session belongs to the caller that started it.
154
+ */
155
+ private handleSessionRequest;
142
156
  /**
143
157
  * Start HTTP server for MCP
144
158
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,IAAI,EAAe,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAEV,eAAe,EACf,iBAAiB,EAEjB,eAAe,EAGhB,MAAM,UAAU,CAAC;AAwDlB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAC,CAAa;gBAEpB,MAAM,EAAE,eAAe;IAInC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAQ9B;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAMlC;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOrC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAQjD;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAMrD;;;OAGG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAOxC;;OAEG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAIlC;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAQ7C;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI;IAMjD;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOvC;;OAEG;IACH,oBAAoB,IAAI,MAAM,EAAE;IAIhC;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAmBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;YACW,WAAW;IA2BzB;;;;;OAKG;IACH,OAAO,CAAC,GAAG;IAQX;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+D3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8CzB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC5B;;;OAGG;YACW,YAAY;IAU1B;;OAEG;YACW,eAAe;IA2H7B;;;OAGG;IACH,OAAO,IAAI,MAAM,GAAG,SAAS;IAK7B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B;;OAEG;IACH,SAAS,IAAI,OAAO;CAGrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAK9F"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAIhD,OAAO,KAAK,EAKV,eAAe,EACf,iBAAiB,EAEjB,eAAe,EAGhB,MAAM,UAAU,CAAC;AA0DlB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAOrB;gBAEQ,MAAM,EAAE,eAAe;IAInC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAQ9B;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAMlC;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOrC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAQjD;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAMrD;;;OAGG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAOxC;;OAEG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAIlC;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAQ7C;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI;IAMjD;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOvC;;OAEG;IACH,oBAAoB,IAAI,MAAM,EAAE;IAIhC;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAmBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;YACW,WAAW;IA4BzB;;;;;OAKG;IACH,OAAO,CAAC,GAAG;IAQX;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+D3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8CzB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC5B,+FAA+F;IAC/F,OAAO,CAAC,SAAS;IAIjB;;;OAGG;YACW,MAAM;IAqBpB;;;OAGG;YACW,YAAY;IAU1B;;;;OAIG;YACW,oBAAoB;IAuClC;;OAEG;YACW,eAAe;IA0F7B;;;OAGG;IACH,OAAO,IAAI,MAAM,GAAG,SAAS;IAK7B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA6B3B;;OAEG;IACH,SAAS,IAAI,OAAO;CAGrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAK9F"}
@@ -7,6 +7,7 @@
7
7
  import { randomUUID } from 'node:crypto';
8
8
  import { McpServer, ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';
9
9
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
10
+ import { ElicitResultSchema } from '@modelcontextprotocol/sdk/types.js';
10
11
  import { resultToMCPContent } from '../adapter/tool-adapter.js';
11
12
  import { z } from 'zod';
12
13
  function toServerContent(item) {
@@ -72,6 +73,7 @@ export class MCPServer {
72
73
  prompts = new Map();
73
74
  started = false;
74
75
  httpServer;
76
+ sessions = new Map();
75
77
  constructor(config) {
76
78
  this.config = config;
77
79
  }
@@ -208,7 +210,7 @@ export class MCPServer {
208
210
  description: tool.description,
209
211
  inputSchema: this.buildInputSchema(tool),
210
212
  }, async (args, extra) => {
211
- return this.executeTool(tool, args, extra.signal, caller);
213
+ return this.executeTool(tool, args, extra, caller);
212
214
  });
213
215
  }
214
216
  /**
@@ -226,12 +228,13 @@ export class MCPServer {
226
228
  /**
227
229
  * Execute a tool with SDK-validated arguments and return an MCP-formatted result
228
230
  */
229
- async executeTool(tool, args, signal, caller) {
231
+ async executeTool(tool, args, extra, caller) {
230
232
  const context = {
231
233
  agentId: 'mcp-server',
232
234
  runId: `mcp_${randomUUID()}`,
233
- signal,
235
+ signal: extra.signal,
234
236
  ...(caller?.userId !== undefined && { userId: caller.userId }),
237
+ ...(this.canElicit() && { elicit: (request) => this.elicit(extra, request) }),
235
238
  };
236
239
  try {
237
240
  const result = await tool.execute(args ?? {}, context);
@@ -382,6 +385,29 @@ export class MCPServer {
382
385
  this.started = true;
383
386
  this.log('info', `Server started on ${this.config.transport} transport`);
384
387
  }
388
+ /** Elicitation needs the client's reply to reach this server: stdio, or HTTP with sessions. */
389
+ canElicit() {
390
+ return this.config.transport === 'stdio' || this.config.sessions === true;
391
+ }
392
+ /**
393
+ * Ask the client's user through MCP elicitation, tied to the tool call so it
394
+ * works on stateless HTTP too. `undefined` when the client cannot answer.
395
+ */
396
+ async elicit(extra, request) {
397
+ try {
398
+ const result = await extra.sendRequest({
399
+ method: 'elicitation/create',
400
+ params: { mode: 'form', message: request.message, requestedSchema: request.schema },
401
+ }, ElicitResultSchema);
402
+ return result.action === 'accept'
403
+ ? { action: 'accept', content: result.content ?? {} }
404
+ : { action: result.action };
405
+ }
406
+ catch (error) {
407
+ this.log('info', `Elicitation unavailable: ${errorMessageOf(error)}`);
408
+ return undefined;
409
+ }
410
+ }
385
411
  /**
386
412
  * The caller of an HTTP request per `config.auth`: `undefined` when the
387
413
  * server has no `auth`, `null` when the request is refused.
@@ -397,6 +423,42 @@ export class MCPServer {
397
423
  return null;
398
424
  }
399
425
  }
426
+ /**
427
+ * A request in session mode: a request without a session id starts a
428
+ * session (an `initialize`), the others go to their session's transport.
429
+ * A session belongs to the caller that started it.
430
+ */
431
+ async handleSessionRequest(req, res, body, caller, Transport) {
432
+ const header = req.headers['mcp-session-id'];
433
+ const sessionId = Array.isArray(header) ? header[0] : header;
434
+ if (sessionId) {
435
+ const session = this.sessions.get(sessionId);
436
+ if (!session) {
437
+ writeJsonRpcError(res, 404, -32001, 'Session not found');
438
+ return;
439
+ }
440
+ if (session.caller?.userId !== caller?.userId) {
441
+ writeJsonRpcError(res, 403, -32001, 'The session belongs to another caller');
442
+ return;
443
+ }
444
+ await session.transport.handleRequest(req, res, body);
445
+ return;
446
+ }
447
+ const server = this.buildServer(caller);
448
+ const transport = new Transport({
449
+ sessionIdGenerator: () => randomUUID(),
450
+ onsessioninitialized: (id) => {
451
+ this.sessions.set(id, { transport, server, caller });
452
+ },
453
+ });
454
+ transport.onclose = () => {
455
+ if (transport.sessionId)
456
+ this.sessions.delete(transport.sessionId);
457
+ server.close().catch(() => { });
458
+ };
459
+ await server.connect(transport);
460
+ await transport.handleRequest(req, res, body);
461
+ }
400
462
  /**
401
463
  * Start HTTP server for MCP
402
464
  */
@@ -433,57 +495,27 @@ export class MCPServer {
433
495
  }));
434
496
  return;
435
497
  }
436
- const server = this.buildServer(caller);
437
- const transport = new StreamableHTTPServerTransport({
438
- sessionIdGenerator: undefined,
439
- });
440
- res.on('close', () => {
441
- transport.close().catch(() => { });
442
- server.close().catch(() => { });
443
- });
444
498
  try {
445
- await server.connect(transport);
446
- if (req.method === 'POST') {
447
- const chunks = [];
448
- let totalSize = 0;
449
- let tooLarge = false;
450
- for await (const chunk of req) {
451
- const buffer = chunk;
452
- totalSize += buffer.length;
453
- if (totalSize > maxBodySize) {
454
- tooLarge = true;
455
- break;
456
- }
457
- chunks.push(buffer);
458
- }
459
- if (tooLarge) {
460
- res.writeHead(413, { 'Content-Type': 'text/plain' });
461
- res.end('Payload Too Large');
462
- req.destroy();
463
- return;
464
- }
465
- let body;
466
- try {
467
- body = JSON.parse(Buffer.concat(chunks).toString());
468
- }
469
- catch {
470
- res.writeHead(400, { 'Content-Type': 'application/json' });
471
- res.end(JSON.stringify({
472
- jsonrpc: '2.0',
473
- error: { code: -32700, message: 'Parse error: invalid JSON' },
474
- id: null,
475
- }));
476
- return;
477
- }
478
- await transport.handleRequest(req, res, body);
479
- }
480
- else if (req.method === 'GET' || req.method === 'DELETE') {
481
- await transport.handleRequest(req, res);
482
- }
483
- else {
499
+ if (req.method !== 'POST' && req.method !== 'GET' && req.method !== 'DELETE') {
484
500
  res.writeHead(405, { 'Content-Type': 'text/plain' });
485
501
  res.end('Method Not Allowed');
502
+ return;
486
503
  }
504
+ const body = req.method === 'POST' ? await readJsonBody(req, res, maxBodySize) : undefined;
505
+ if (body === null)
506
+ return;
507
+ if (this.config.sessions) {
508
+ await this.handleSessionRequest(req, res, body, caller, StreamableHTTPServerTransport);
509
+ return;
510
+ }
511
+ const server = this.buildServer(caller);
512
+ const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: undefined });
513
+ res.on('close', () => {
514
+ transport.close().catch(() => { });
515
+ server.close().catch(() => { });
516
+ });
517
+ await server.connect(transport);
518
+ await transport.handleRequest(req, res, body);
487
519
  }
488
520
  catch (error) {
489
521
  this.log('error', `HTTP request error: ${errorMessageOf(error)}`);
@@ -525,6 +557,9 @@ export class MCPServer {
525
557
  return;
526
558
  }
527
559
  try {
560
+ const sessions = [...this.sessions.values()];
561
+ this.sessions.clear();
562
+ await Promise.all(sessions.map(({ transport }) => transport.close().catch(() => { })));
528
563
  const httpServer = this.httpServer;
529
564
  if (httpServer) {
530
565
  this.httpServer = undefined;
@@ -569,4 +604,31 @@ export async function serveMCPTools(tools, config) {
569
604
  await server.start();
570
605
  return server;
571
606
  }
607
+ /** The JSON body of a POST, or `null` when the request was answered (too large, invalid JSON). */
608
+ async function readJsonBody(req, res, maxBodySize) {
609
+ const chunks = [];
610
+ let totalSize = 0;
611
+ for await (const chunk of req) {
612
+ const buffer = chunk;
613
+ totalSize += buffer.length;
614
+ if (totalSize > maxBodySize) {
615
+ res.writeHead(413, { 'Content-Type': 'text/plain' });
616
+ res.end('Payload Too Large');
617
+ req.destroy();
618
+ return null;
619
+ }
620
+ chunks.push(buffer);
621
+ }
622
+ try {
623
+ return JSON.parse(Buffer.concat(chunks).toString());
624
+ }
625
+ catch {
626
+ writeJsonRpcError(res, 400, -32700, 'Parse error: invalid JSON');
627
+ return null;
628
+ }
629
+ }
630
+ function writeJsonRpcError(res, status, code, message) {
631
+ res.writeHead(status, { 'Content-Type': 'application/json' });
632
+ res.end(JSON.stringify({ jsonrpc: '2.0', error: { code, message }, id: null }));
633
+ }
572
634
  //# sourceMappingURL=mcp-server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAWjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,SAAS,eAAe,CAAC,IAAuC;IAC9D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;QACjD,KAAK,OAAO,CAAC;QACb,KAAK,OAAO;YACV,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACvE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvE,CAAC;YACD,MAAM;QACR,KAAK,UAAU,CAAC;QAChB,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClD,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;iBAClF,CAAC;YACJ,CAAC;YACD,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClD,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;iBAClF,CAAC;YACJ,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,SAAS;IACZ,MAAM,CAAa;IACnB,MAAM,CAAkB;IACxB,KAAK,GAAG,IAAI,GAAG,EAAgB,CAAC;IAChC,SAAS,GAAG,IAAI,GAAG,EAA6B,CAAC;IACjD,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC7C,OAAO,GAAG,KAAK,CAAC;IAChB,UAAU,CAAc;IAEhC,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,IAAU;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,KAAa;QACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,IAAY;QACzB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAyB;QACxC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,OAA4B;QAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,GAAW;QAC5B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAuB;QACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAA0B;QACxC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,IAAY;QAC3B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACK,WAAW,CAAC,MAAkB;QACpC,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;SAC7B,CAAC,CAAC;QAEH,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,MAAiB,EAAE,IAAU,EAAE,MAAkB;QACvE,MAAM,CAAC,YAAY,CACjB,IAAI,CAAC,IAAI,EACT;YACE,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;SACzC,EACD,KAAK,EAAE,IAAa,EAAE,KAA8B,EAA8B,EAAE;YAClF,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,gBAAgB,CAAC,IAAU;QACjC,MAAM,MAAM,GAAY,IAAI,CAAC,UAAU,CAAC;QACxC,OAAO,MAAM,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC;IACxE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CACvB,IAAU,EACV,IAAa,EACb,MAAmB,EACnB,MAAkB;QAElB,MAAM,OAAO,GAAgB;YAC3B,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,OAAO,UAAU,EAAE,EAAE;YAC5B,MAAM;YACN,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;SAC/D,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,IAAI,WAAW,YAAY,EAAE,CAAC,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,YAAY,EAAE,EAAE,CAAC;gBAC3D,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,GAAG,CAAC,KAAuB,EAAE,OAAe;QAClD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,MAAiB,EACjB,MAAyB,EACzB,MAAkB;QAElB,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE5C,MAAM,cAAc,GAAG,CAAC,MAAiD,EAAE,OAAe,EAAE,EAAE;YAC5F,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC3D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAqB,EAAE,EAAE;gBAC5C,MAAM,IAAI,GAAuC;oBAC/C,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,OAAO;iBACtB,CAAC;gBACF,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;gBAChD,CAAC;gBACD,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC;gBACD,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,KAAK,EAAE,MAA8B,EAAE,EAAE;YAC5D,IAAI,CAAC;gBACH,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,MAAM,CAAC,IAAI,WAAW,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC7E,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,gBAAgB,CACrB,MAAM,CAAC,IAAI,EACX,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EACrD;gBACE,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,EACD,KAAK,EAAE,GAAQ,EAAE,SAA4C,EAAE,EAAE;gBAC/D,MAAM,MAAM,GAA2B,EAAE,CAAC;gBAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC/D,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5E,CAAC,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,gBAAgB,CACrB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,GAAG,EACV;gBACE,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,EACD,KAAK,EAAE,GAAQ,EAAE,EAAE;gBACjB,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,YAAY,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxE,CAAC,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,MAAiB,EAAE,MAAuB,EAAE,MAAkB;QACtF,MAAM,MAAM,GAAG,KAAK,EAAE,IAA4B,EAAE,EAAE;YACpD,IAAI,MAAmD,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,MAAM,CAAC,IAAI,WAAW,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC3E,MAAM,KAAK,CAAC;YACd,CAAC;YACD,OAAO;gBACL,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EACL,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;wBAC3B,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;wBAC5C,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC;iBACjC,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;QACzF,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QAE1C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAkD,EAAE,CAAC;QACrE,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YACjF,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/D,CAAC;QAED,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YAC7E,MAAM,UAAU,GAA2B,EAAE,CAAC;YAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC9B,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,GAAG,CACN,MAAM,EACN,yBAAyB,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAChF,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;QAE9F,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC9B,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;gBAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrC,MAAM;YACR,CAAC;YAED,KAAK,MAAM,CAAC;YACZ,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC7B,MAAM;YACR,CAAC;YAED;gBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,MAAM,CAAC,SAAS,YAAY,CAAC,CAAC;IAC3E,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,GAAoB;QAC7C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QACxC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe;QAC3B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,EAAE,6BAA6B,EAAE,GACrC,MAAM,MAAM,CAAC,oDAAoD,CAAC,CAAC;QAErE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,GAAG,CAAC;QAEjD,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAChD,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,UAAU,CAAC,CAAC;YACzD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,4BAA4B,CAAC,CAAC;YAC5E,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,6CAA6C,CAAC,CAAC;YAC7F,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,gBAAgB,CAAC,CAAC;YAEjE,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC;YACtE,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBACxB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACzF,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;oBACb,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE;oBAChD,EAAE,EAAE,IAAI;iBACT,CAAC,CACH,CAAC;gBACF,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC;gBAClD,kBAAkB,EAAE,SAAS;aAC9B,CAAC,CAAC;YACH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACnB,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAClC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAEhC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC1B,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,IAAI,SAAS,GAAG,CAAC,CAAC;oBAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;oBACrB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;wBAC9B,MAAM,MAAM,GAAG,KAAe,CAAC;wBAC/B,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC;wBAC3B,IAAI,SAAS,GAAG,WAAW,EAAE,CAAC;4BAC5B,QAAQ,GAAG,IAAI,CAAC;4BAChB,MAAM;wBACR,CAAC;wBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACtB,CAAC;oBAED,IAAI,QAAQ,EAAE,CAAC;wBACb,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;wBACrD,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;wBAC7B,GAAG,CAAC,OAAO,EAAE,CAAC;wBACd,OAAO;oBACT,CAAC;oBAED,IAAI,IAA6B,CAAC;oBAClC,IAAI,CAAC;wBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAA4B,CAAC;oBACjF,CAAC;oBAAC,MAAM,CAAC;wBACP,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAC3D,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;4BACb,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,2BAA2B,EAAE;4BAC7D,EAAE,EAAE,IAAI;yBACT,CAAC,CACH,CAAC;wBACF,OAAO;oBACT,CAAC;oBAED,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC3D,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;oBACrD,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAClE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;oBACrB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;oBACrD,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACjC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;oBACjC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAChC,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,mCAAmC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,MAAM,CAAC,CAAC;IAC5F,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;QAC3C,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;gBAC5B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBAC3D,UAAU,CAAC,mBAAmB,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAa,EAAE,MAAuB;IACxE,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Serve Cogitator agents as MCP tools, for Claude Desktop, Cursor or any MCP client.
3
+ */
4
+ import type { Agent, ResumeOptions, RunCheckpoint, RunOptions, RunResult, Tool, ToolApprovalRequest } from '@cogitator-ai/types';
5
+ import type { MCPServerConfig } from '../types.js';
6
+ import { MCPServer } from './mcp-server.js';
7
+ /** What serving agents needs from a Cogitator: running them and resuming paused runs. */
8
+ export interface AgentHost {
9
+ run(agent: Agent, options: RunOptions): Promise<RunResult>;
10
+ resume(agent: Agent, target: RunCheckpoint | string, options?: ResumeOptions): Promise<RunResult>;
11
+ }
12
+ export interface ServeAgentsConfig extends Partial<MCPServerConfig> {
13
+ /** Tool name per agent, instead of the agent's name */
14
+ toolNames?: Record<string, string>;
15
+ }
16
+ /** What an agent tool answers: the agent's reply, or the approvals its run waits for. */
17
+ export type AgentToolAnswer = {
18
+ status: 'completed';
19
+ output: string;
20
+ threadId: string;
21
+ } | {
22
+ status: 'paused';
23
+ threadId: string;
24
+ pendingApprovals: ToolApprovalRequest[];
25
+ next: string;
26
+ };
27
+ /**
28
+ * MCP tools for `agents`: one per agent that takes a task (and optionally the
29
+ * thread to continue) and answers with the agent's reply, plus a
30
+ * `<agent>_resume` tool for agents whose tools need approval. Approvals are
31
+ * asked from the person at the client through MCP elicitation; a client that
32
+ * cannot answer gets a paused answer to resume once the user decided.
33
+ */
34
+ export declare function agentTools(host: AgentHost, agents: readonly Agent[], toolNames?: Record<string, string>): Tool[];
35
+ /**
36
+ * Serve `agents` over MCP in one call.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * await serveAgents(cog, [researcher, writer]); // stdio, for Claude Desktop
41
+ * await serveAgents(cog, [support], { transport: 'http', port: 3333, auth });
42
+ * ```
43
+ */
44
+ export declare function serveAgents(host: AgentHost, agents: Agent | readonly Agent[], config?: ServeAgentsConfig): Promise<MCPServer>;
45
+ //# sourceMappingURL=serve-agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve-agents.d.ts","sourceRoot":"","sources":["../../src/server/serve-agents.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,KAAK,EACL,aAAa,EACb,aAAa,EACb,UAAU,EACV,SAAS,EACT,IAAI,EAEJ,mBAAmB,EAEpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,yFAAyF;AACzF,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CACnG;AAED,MAAM,WAAW,iBAAkB,SAAQ,OAAO,CAAC,eAAe,CAAC;IACjE,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,yFAAyF;AACzF,MAAM,MAAM,eAAe,GACvB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACzD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAiBN;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GACrC,IAAI,EAAE,CAuCR;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,KAAK,GAAG,SAAS,KAAK,EAAE,EAChC,MAAM,GAAE,iBAAsB,GAC7B,OAAO,CAAC,SAAS,CAAC,CAapB"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Serve Cogitator agents as MCP tools, for Claude Desktop, Cursor or any MCP client.
3
+ */
4
+ import { z } from 'zod';
5
+ import { MCPServer } from './mcp-server.js';
6
+ const askSchema = z.object({
7
+ task: z.string().min(1).describe('What to ask the agent to do'),
8
+ threadId: z
9
+ .string()
10
+ .min(1)
11
+ .optional()
12
+ .describe('Continue an earlier conversation: the threadId a previous answer returned'),
13
+ });
14
+ const resumeSchema = z.object({
15
+ threadId: z.string().min(1).describe('The threadId of the paused answer'),
16
+ approved: z.boolean().describe("The user's decision on the calls the agent waits for"),
17
+ reason: z.string().optional().describe('Why the user declined, when they did'),
18
+ });
19
+ /**
20
+ * MCP tools for `agents`: one per agent that takes a task (and optionally the
21
+ * thread to continue) and answers with the agent's reply, plus a
22
+ * `<agent>_resume` tool for agents whose tools need approval. Approvals are
23
+ * asked from the person at the client through MCP elicitation; a client that
24
+ * cannot answer gets a paused answer to resume once the user decided.
25
+ */
26
+ export function agentTools(host, agents, toolNames = {}) {
27
+ return agents.flatMap((agent) => {
28
+ const name = toolNames[agent.name] ?? toToolName(agent.name);
29
+ const resumeName = `${name}_resume`;
30
+ const needsApprovals = agent.tools.some((t) => t.requiresApproval !== undefined);
31
+ const ask = defineTool({
32
+ name,
33
+ description: agent.config.description ??
34
+ `Ask the ${agent.name} agent. ${firstSentence(agent.instructions)}`,
35
+ parameters: askSchema,
36
+ execute: async ({ task, threadId }, context) => answer(await host.run(agent, {
37
+ input: task,
38
+ ...(threadId && { threadId }),
39
+ ...runContext(context),
40
+ }), resumeName),
41
+ });
42
+ if (!needsApprovals)
43
+ return [ask];
44
+ const resume = defineTool({
45
+ name: resumeName,
46
+ description: `Continue a ${agent.name} answer that waits for the user's approval, with the user's decision.`,
47
+ parameters: resumeSchema,
48
+ execute: async ({ threadId, approved, reason }, context) => answer(await host.resume(agent, threadId, {
49
+ defaultDecision: approved ? { approved: true } : { approved: false, reason },
50
+ ...runContext(context),
51
+ }), resumeName),
52
+ });
53
+ return [ask, resume];
54
+ });
55
+ }
56
+ /**
57
+ * Serve `agents` over MCP in one call.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * await serveAgents(cog, [researcher, writer]); // stdio, for Claude Desktop
62
+ * await serveAgents(cog, [support], { transport: 'http', port: 3333, auth });
63
+ * ```
64
+ */
65
+ export async function serveAgents(host, agents, config = {}) {
66
+ const list = Array.isArray(agents) ? agents : [agents];
67
+ const { toolNames, ...serverConfig } = config;
68
+ const server = new MCPServer({
69
+ name: 'cogitator-agents',
70
+ version: '1.0.0',
71
+ transport: 'stdio',
72
+ sessions: true,
73
+ ...serverConfig,
74
+ });
75
+ server.registerTools(agentTools(host, list, toolNames));
76
+ await server.start();
77
+ return server;
78
+ }
79
+ function runContext(context) {
80
+ const { elicit } = context;
81
+ return {
82
+ signal: context.signal,
83
+ ...(context.userId !== undefined && { userId: context.userId }),
84
+ onApproval: async (request) => {
85
+ if (!elicit)
86
+ return 'pause';
87
+ const reply = await elicit({
88
+ message: `The agent wants to run ${request.toolName} (${request.description}) with ${JSON.stringify(request.arguments)}. Approve?`,
89
+ schema: {
90
+ type: 'object',
91
+ properties: {
92
+ approve: { type: 'boolean', title: 'Approve', default: false },
93
+ reason: { type: 'string', title: 'Reason (if you decline)' },
94
+ },
95
+ required: ['approve'],
96
+ },
97
+ });
98
+ if (!reply)
99
+ return 'pause';
100
+ if (reply.action !== 'accept')
101
+ return { approved: false, reason: 'The user declined' };
102
+ const reason = typeof reply.content.reason === 'string' ? reply.content.reason : undefined;
103
+ return reply.content.approve === true
104
+ ? { approved: true }
105
+ : { approved: false, ...(reason && { reason }) };
106
+ },
107
+ };
108
+ }
109
+ function answer(result, resumeName) {
110
+ if (result.status === 'paused') {
111
+ return {
112
+ status: 'paused',
113
+ threadId: result.threadId,
114
+ pendingApprovals: [...(result.pendingApprovals ?? [])],
115
+ next: `Ask the user whether to allow these calls, then call ${resumeName} with this threadId and their decision.`,
116
+ };
117
+ }
118
+ return { status: 'completed', output: result.output, threadId: result.threadId };
119
+ }
120
+ function defineTool(definition) {
121
+ return {
122
+ name: definition.name,
123
+ description: definition.description,
124
+ parameters: definition.parameters,
125
+ sideEffects: ['external'],
126
+ execute: (params, context) => definition.execute(params, context),
127
+ toJSON: () => ({
128
+ name: definition.name,
129
+ description: definition.description,
130
+ parameters: z.toJSONSchema(definition.parameters),
131
+ }),
132
+ };
133
+ }
134
+ function toToolName(name) {
135
+ const cleaned = name.replace(/[^a-zA-Z0-9_-]+/g, '_').replace(/^_+|_+$/g, '');
136
+ return (cleaned || 'agent').slice(0, 56);
137
+ }
138
+ function firstSentence(text) {
139
+ const sentence = /^[^.!?\n]+[.!?]?/.exec(text.trim())?.[0] ?? '';
140
+ return sentence.slice(0, 200);
141
+ }
142
+ //# sourceMappingURL=serve-agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve-agents.js","sourceRoot":"","sources":["../../src/server/serve-agents.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  * MCP Integration Types
3
3
  */
4
4
  import type { IncomingMessage } from 'node:http';
5
+ import type { ToolContext } from '@cogitator-ai/types';
5
6
  export type MCPTransportType = 'stdio' | 'http' | 'sse';
6
7
  export interface MCPRetryConfig {
7
8
  /** Maximum number of retry attempts (default: 3) */
@@ -109,6 +110,44 @@ export interface MCPPromptConfig {
109
110
  /** `caller` is who `auth` established for the request, on the HTTP transport */
110
111
  get: (args: Record<string, string>, caller?: MCPCaller) => Promise<MCPPromptResult> | MCPPromptResult;
111
112
  }
113
+ /** A field of an elicitation form (MCP `requestedSchema` primitives) */
114
+ export type MCPElicitField = {
115
+ type: 'string';
116
+ title?: string;
117
+ description?: string;
118
+ enum?: string[];
119
+ } | {
120
+ type: 'number' | 'integer';
121
+ title?: string;
122
+ description?: string;
123
+ } | {
124
+ type: 'boolean';
125
+ title?: string;
126
+ description?: string;
127
+ default?: boolean;
128
+ };
129
+ export interface MCPElicitRequest {
130
+ message: string;
131
+ schema: {
132
+ type: 'object';
133
+ properties: Record<string, MCPElicitField>;
134
+ required?: string[];
135
+ };
136
+ }
137
+ export type MCPElicitResult = {
138
+ action: 'accept';
139
+ content: Record<string, unknown>;
140
+ } | {
141
+ action: 'decline' | 'cancel';
142
+ };
143
+ /**
144
+ * The context a tool gets when an MCP server runs it: the usual tool context,
145
+ * plus `elicit` to ask the person at the client a question while the call waits.
146
+ */
147
+ export interface MCPToolContext extends ToolContext {
148
+ /** `undefined` (as a result) when the client cannot answer elicitation requests */
149
+ elicit?: (request: MCPElicitRequest) => Promise<MCPElicitResult | undefined>;
150
+ }
112
151
  /**
113
152
  * Who is calling an MCP server over HTTP, as its `auth` function established it.
114
153
  * `userId` reaches tools as `context.userId`.
@@ -144,6 +183,13 @@ export interface MCPServerConfig {
144
183
  * to anyone who can reach it.
145
184
  */
146
185
  auth?: MCPAuthFunction;
186
+ /**
187
+ * For HTTP transport: keep a session per client (`mcp-session-id`) instead
188
+ * of serving every request on its own. Needed for requests from the server
189
+ * to the client, such as elicitation; each session belongs to the caller
190
+ * that started it.
191
+ */
192
+ sessions?: boolean;
147
193
  /** Enable logging */
148
194
  logging?: boolean;
149
195
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cogitator-ai/mcp",
3
- "version": "19.1.0",
3
+ "version": "19.2.0",
4
4
  "description": "MCP (Model Context Protocol) integration for Cogitator",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -15,7 +15,7 @@
15
15
  "dist"
16
16
  ],
17
17
  "dependencies": {
18
- "@cogitator-ai/types": "0.26.0",
18
+ "@cogitator-ai/types": "0.27.0",
19
19
  "@modelcontextprotocol/sdk": "^1.31.0",
20
20
  "zod": "^4.6.5"
21
21
  },
@@ -25,7 +25,7 @@
25
25
  "vitest": "^5.0.3"
26
26
  },
27
27
  "peerDependencies": {
28
- "@cogitator-ai/types": ">=0.26.0"
28
+ "@cogitator-ai/types": ">=0.27.0"
29
29
  },
30
30
  "engines": {
31
31
  "node": ">=22.12.0"