@cogitator-ai/mcp 17.0.10 → 18.0.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.
@@ -5,8 +5,9 @@
5
5
  * resources, and prompts.
6
6
  */
7
7
  import { Client } from '@modelcontextprotocol/sdk/client/index.js';
8
+ import { McpError, ErrorCode } from '@modelcontextprotocol/sdk/types.js';
8
9
  import { createStdioTransport, createHttpTransport } from './transports.js';
9
- import { mcpToCogitator } from '../adapter/tool-adapter.js';
10
+ import { mcpToCogitator, mcpContentToResult } from '../adapter/tool-adapter.js';
10
11
  const DEFAULT_RETRY_CONFIG = {
11
12
  maxRetries: 3,
12
13
  initialDelay: 1000,
@@ -14,10 +15,33 @@ const DEFAULT_RETRY_CONFIG = {
14
15
  backoffMultiplier: 2,
15
16
  retryOnConnectionLoss: true,
16
17
  };
18
+ const CONNECTION_CLOSED_CODE = ErrorCode.ConnectionClosed;
19
+ const REQUEST_TIMEOUT_CODE = ErrorCode.RequestTimeout;
17
20
  function sleep(ms) {
18
21
  return new Promise((resolve) => setTimeout(resolve, ms));
19
22
  }
23
+ /**
24
+ * Error raised when an MCP server reports a tool failure (`isError: true`).
25
+ * Tool failures are deterministic results, so they are never retried.
26
+ */
27
+ export class MCPToolError extends Error {
28
+ toolName;
29
+ content;
30
+ constructor(toolName, content) {
31
+ const text = content
32
+ .filter((item) => item.type === 'text')
33
+ .map((item) => item.text)
34
+ .join('\n');
35
+ super(text || `MCP tool "${toolName}" failed`);
36
+ this.name = 'MCPToolError';
37
+ this.toolName = toolName;
38
+ this.content = content;
39
+ }
40
+ }
20
41
  function isConnectionError(error) {
42
+ if (error instanceof McpError) {
43
+ return error.code === CONNECTION_CLOSED_CODE;
44
+ }
21
45
  if (error instanceof Error) {
22
46
  const msg = error.message.toLowerCase();
23
47
  return (msg.includes('connection') ||
@@ -29,6 +53,15 @@ function isConnectionError(error) {
29
53
  }
30
54
  return false;
31
55
  }
56
+ function isRetryableError(error) {
57
+ if (error instanceof MCPToolError) {
58
+ return false;
59
+ }
60
+ if (error instanceof McpError) {
61
+ return error.code === CONNECTION_CLOSED_CODE || error.code === REQUEST_TIMEOUT_CODE;
62
+ }
63
+ return true;
64
+ }
32
65
  /**
33
66
  * MCP Client for connecting to external MCP servers
34
67
  *
@@ -58,7 +91,8 @@ export class MCPClient {
58
91
  client;
59
92
  transport;
60
93
  connected = false;
61
- reconnecting = false;
94
+ closed = false;
95
+ reconnectPromise = null;
62
96
  config;
63
97
  retryConfig;
64
98
  serverCapabilities = {};
@@ -94,6 +128,7 @@ export class MCPClient {
94
128
  command: config.command,
95
129
  args: config.args,
96
130
  env: config.env,
131
+ cwd: config.cwd,
97
132
  });
98
133
  case 'http':
99
134
  case 'sse':
@@ -102,6 +137,7 @@ export class MCPClient {
102
137
  }
103
138
  return createHttpTransport({
104
139
  url: config.url,
140
+ headers: config.headers,
105
141
  });
106
142
  default:
107
143
  throw new Error(`Unknown transport type: ${config.transport}`);
@@ -112,20 +148,28 @@ export class MCPClient {
112
148
  */
113
149
  async initialize(timeout) {
114
150
  const connectPromise = this.client.connect(this.transport);
115
- if (timeout) {
116
- let timer;
117
- const timeoutPromise = new Promise((_, reject) => {
118
- timer = setTimeout(() => reject(new Error('Connection timeout')), timeout);
119
- });
120
- try {
121
- await Promise.race([connectPromise, timeoutPromise]);
151
+ let timer;
152
+ try {
153
+ if (timeout) {
154
+ await Promise.race([
155
+ connectPromise,
156
+ new Promise((_, reject) => {
157
+ timer = setTimeout(() => reject(new Error('Connection timeout')), timeout);
158
+ }),
159
+ ]);
122
160
  }
123
- finally {
124
- clearTimeout(timer);
161
+ else {
162
+ await connectPromise;
125
163
  }
126
164
  }
127
- else {
128
- await connectPromise;
165
+ catch (error) {
166
+ await this.client.close().catch(() => { });
167
+ throw error;
168
+ }
169
+ finally {
170
+ if (timer !== undefined) {
171
+ clearTimeout(timer);
172
+ }
129
173
  }
130
174
  this.connected = true;
131
175
  const serverInfo = this.client.getServerCapabilities();
@@ -151,64 +195,92 @@ export class MCPClient {
151
195
  * Check if currently reconnecting
152
196
  */
153
197
  isReconnecting() {
154
- return this.reconnecting;
198
+ return this.reconnectPromise !== null;
155
199
  }
156
200
  /**
157
- * Attempt to reconnect to the server
201
+ * Attempt to reconnect to the server.
202
+ *
203
+ * Concurrent callers share the same in-flight reconnection, so parallel
204
+ * operations that all observe a dropped connection wait for one reconnect
205
+ * instead of failing.
158
206
  */
159
- async reconnect() {
160
- if (this.reconnecting) {
161
- throw new Error('Already reconnecting');
207
+ reconnect() {
208
+ if (this.closed) {
209
+ return Promise.reject(new Error('MCP client has been closed'));
210
+ }
211
+ if (!this.reconnectPromise) {
212
+ this.reconnectPromise = this.performReconnect().finally(() => {
213
+ this.reconnectPromise = null;
214
+ });
162
215
  }
163
- this.reconnecting = true;
216
+ return this.reconnectPromise;
217
+ }
218
+ async performReconnect() {
164
219
  let lastError;
165
- try {
166
- for (let attempt = 1; attempt <= this.retryConfig.maxRetries; attempt++) {
167
- this.config.onReconnecting?.(attempt);
168
- try {
220
+ this.connected = false;
221
+ const maxAttempts = Math.max(1, this.retryConfig.maxRetries);
222
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
223
+ if (this.closed) {
224
+ throw new Error('MCP client has been closed');
225
+ }
226
+ this.config.onReconnecting?.(attempt);
227
+ try {
228
+ await this.client.close().catch(() => { });
229
+ this.client = new Client({
230
+ name: this.config.clientName ?? 'cogitator-mcp-client',
231
+ version: this.config.clientVersion ?? '1.0.0',
232
+ });
233
+ this.transport = MCPClient.createTransport(this.config);
234
+ await this.initialize(this.config.timeout);
235
+ if (this.closed) {
236
+ this.connected = false;
169
237
  await this.client.close().catch(() => { });
170
- this.client = new Client({
171
- name: this.config.clientName ?? 'cogitator-mcp-client',
172
- version: this.config.clientVersion ?? '1.0.0',
173
- });
174
- this.transport = MCPClient.createTransport(this.config);
175
- await this.initialize(this.config.timeout);
176
- this.config.onReconnected?.();
177
- return;
238
+ throw new Error('MCP client has been closed');
178
239
  }
179
- catch (error) {
180
- lastError = error instanceof Error ? error : new Error(String(error));
181
- if (attempt < this.retryConfig.maxRetries) {
182
- const delay = Math.min(this.retryConfig.initialDelay *
183
- Math.pow(this.retryConfig.backoffMultiplier, attempt - 1), this.retryConfig.maxDelay);
184
- await sleep(delay);
185
- }
240
+ this.config.onReconnected?.();
241
+ return;
242
+ }
243
+ catch (error) {
244
+ lastError = error instanceof Error ? error : new Error(String(error));
245
+ if (this.closed) {
246
+ throw lastError;
247
+ }
248
+ if (attempt < maxAttempts) {
249
+ const delay = Math.min(this.retryConfig.initialDelay *
250
+ Math.pow(this.retryConfig.backoffMultiplier, attempt - 1), this.retryConfig.maxDelay);
251
+ await sleep(delay);
186
252
  }
187
253
  }
188
- this.config.onReconnectFailed?.(lastError ?? new Error('Reconnection failed'));
189
- throw lastError;
190
- }
191
- finally {
192
- this.reconnecting = false;
193
254
  }
255
+ const failure = lastError ?? new Error('Reconnection failed');
256
+ this.config.onReconnectFailed?.(failure);
257
+ throw failure;
194
258
  }
195
259
  /**
196
260
  * Execute an operation with retry logic
197
261
  */
198
- async withRetry(operation, operationName) {
262
+ async withRetry(operation, operationName, signal) {
199
263
  let lastError;
200
264
  for (let attempt = 0; attempt <= this.retryConfig.maxRetries; attempt++) {
265
+ if (this.closed) {
266
+ throw new Error(`${operationName} failed: MCP client has been closed`);
267
+ }
201
268
  try {
202
269
  return await operation();
203
270
  }
204
271
  catch (error) {
205
272
  lastError = error instanceof Error ? error : new Error(String(error));
273
+ if (signal?.aborted || this.closed || !isRetryableError(error)) {
274
+ throw lastError;
275
+ }
206
276
  const shouldRetry = attempt < this.retryConfig.maxRetries;
207
277
  const isConnError = isConnectionError(error);
278
+ if (isConnError) {
279
+ this.connected = false;
280
+ }
208
281
  if (isConnError &&
209
282
  this.retryConfig.retryOnConnectionLoss &&
210
283
  this.config.autoReconnect !== false) {
211
- this.connected = false;
212
284
  if (shouldRetry) {
213
285
  try {
214
286
  await this.reconnect();
@@ -222,6 +294,9 @@ export class MCPClient {
222
294
  if (shouldRetry && !isConnError) {
223
295
  const delay = Math.min(this.retryConfig.initialDelay * Math.pow(this.retryConfig.backoffMultiplier, attempt), this.retryConfig.maxDelay);
224
296
  await sleep(delay);
297
+ if (signal?.aborted) {
298
+ throw lastError;
299
+ }
225
300
  continue;
226
301
  }
227
302
  throw lastError;
@@ -237,12 +312,20 @@ export class MCPClient {
237
312
  return [];
238
313
  }
239
314
  return this.withRetry(async () => {
240
- const result = await this.client.listTools();
241
- return result.tools.map((tool) => ({
242
- name: tool.name,
243
- description: tool.description ?? '',
244
- inputSchema: tool.inputSchema,
245
- }));
315
+ const tools = [];
316
+ let cursor;
317
+ do {
318
+ const result = await this.client.listTools(cursor ? { cursor } : {});
319
+ for (const tool of result.tools) {
320
+ tools.push({
321
+ name: tool.name,
322
+ description: tool.description ?? '',
323
+ inputSchema: tool.inputSchema,
324
+ });
325
+ }
326
+ cursor = result.nextCursor;
327
+ } while (cursor);
328
+ return tools;
246
329
  }, 'listToolDefinitions');
247
330
  }
248
331
  /**
@@ -257,27 +340,34 @@ export class MCPClient {
257
340
  /**
258
341
  * Call a tool on the MCP server with automatic retry on failure
259
342
  */
260
- async callTool(name, args) {
343
+ /**
344
+ * Call a tool on the MCP server with automatic retry on transient failures.
345
+ *
346
+ * Returns `structuredContent` when the server provides it, otherwise the
347
+ * text/JSON value(s) of the content blocks. Throws {@link MCPToolError}
348
+ * when the server reports `isError: true`; such failures are not retried.
349
+ */
350
+ async callTool(name, args, options) {
261
351
  return this.withRetry(async () => {
262
- const result = await this.client.callTool({
263
- name,
264
- arguments: args,
352
+ const result = await this.client.callTool({ name, arguments: args }, undefined, {
353
+ signal: options?.signal,
354
+ timeout: options?.timeout,
265
355
  });
266
- const content = result.content;
267
- if (content && Array.isArray(content) && content.length > 0) {
268
- const firstContent = content[0];
269
- if (firstContent.type === 'text') {
270
- try {
271
- return JSON.parse(firstContent.text);
272
- }
273
- catch {
274
- return firstContent.text;
275
- }
276
- }
277
- return firstContent;
356
+ const content = (Array.isArray(result.content) ? result.content : []);
357
+ if (result.isError) {
358
+ throw new MCPToolError(name, content);
278
359
  }
279
- return result;
280
- }, `callTool:${name}`);
360
+ if (result.structuredContent !== undefined) {
361
+ return result.structuredContent;
362
+ }
363
+ if (content.length > 0) {
364
+ return mcpContentToResult(content);
365
+ }
366
+ if ('toolResult' in result) {
367
+ return result.toolResult;
368
+ }
369
+ return null;
370
+ }, `callTool:${name}`, options?.signal);
281
371
  }
282
372
  /**
283
373
  * List available resources from the MCP server with automatic retry
@@ -287,31 +377,43 @@ export class MCPClient {
287
377
  return [];
288
378
  }
289
379
  return this.withRetry(async () => {
290
- const result = await this.client.listResources();
291
- return result.resources.map((resource) => ({
292
- uri: resource.uri,
293
- name: resource.name,
294
- description: resource.description,
295
- mimeType: resource.mimeType,
296
- }));
380
+ const resources = [];
381
+ let cursor;
382
+ do {
383
+ const result = await this.client.listResources(cursor ? { cursor } : {});
384
+ for (const resource of result.resources) {
385
+ resources.push({
386
+ uri: resource.uri,
387
+ name: resource.name,
388
+ description: resource.description,
389
+ mimeType: resource.mimeType,
390
+ });
391
+ }
392
+ cursor = result.nextCursor;
393
+ } while (cursor);
394
+ return resources;
297
395
  }, 'listResources');
298
396
  }
299
397
  /**
300
- * Read a resource from the MCP server with automatic retry
398
+ * Read a resource from the MCP server with automatic retry.
399
+ * Returns the first content entry; use {@link readResourceContents} for all of them.
301
400
  */
302
401
  async readResource(uri) {
402
+ const contents = await this.readResourceContents(uri);
403
+ return contents[0] ?? { uri };
404
+ }
405
+ /**
406
+ * Read every content entry of a resource (e.g. multi-part or templated resources)
407
+ */
408
+ async readResourceContents(uri) {
303
409
  return this.withRetry(async () => {
304
410
  const result = await this.client.readResource({ uri });
305
- if (result.contents && result.contents.length > 0) {
306
- const content = result.contents[0];
307
- return {
308
- uri: content.uri,
309
- mimeType: content.mimeType,
310
- text: 'text' in content ? content.text : undefined,
311
- blob: 'blob' in content ? content.blob : undefined,
312
- };
313
- }
314
- return { uri };
411
+ return (result.contents ?? []).map((content) => ({
412
+ uri: content.uri,
413
+ mimeType: content.mimeType,
414
+ text: 'text' in content ? content.text : undefined,
415
+ blob: 'blob' in content ? content.blob : undefined,
416
+ }));
315
417
  }, `readResource:${uri}`);
316
418
  }
317
419
  /**
@@ -322,16 +424,24 @@ export class MCPClient {
322
424
  return [];
323
425
  }
324
426
  return this.withRetry(async () => {
325
- const result = await this.client.listPrompts();
326
- return result.prompts.map((prompt) => ({
327
- name: prompt.name,
328
- description: prompt.description,
329
- arguments: prompt.arguments?.map((arg) => ({
330
- name: arg.name,
331
- description: arg.description,
332
- required: arg.required,
333
- })),
334
- }));
427
+ const prompts = [];
428
+ let cursor;
429
+ do {
430
+ const result = await this.client.listPrompts(cursor ? { cursor } : {});
431
+ for (const prompt of result.prompts) {
432
+ prompts.push({
433
+ name: prompt.name,
434
+ description: prompt.description,
435
+ arguments: prompt.arguments?.map((arg) => ({
436
+ name: arg.name,
437
+ description: arg.description,
438
+ required: arg.required,
439
+ })),
440
+ });
441
+ }
442
+ cursor = result.nextCursor;
443
+ } while (cursor);
444
+ return prompts;
335
445
  }, 'listPrompts');
336
446
  }
337
447
  /**
@@ -341,25 +451,13 @@ export class MCPClient {
341
451
  return this.withRetry(async () => {
342
452
  const result = await this.client.getPrompt({
343
453
  name,
344
- arguments: args,
454
+ arguments: args ?? {},
345
455
  });
346
456
  return result.messages.map((msg) => {
347
457
  const content = msg.content;
348
458
  return {
349
459
  role: msg.role,
350
- content: {
351
- type: content.type,
352
- text: content.type === 'text' ? content.text : undefined,
353
- data: content.type === 'image' ? content.data : undefined,
354
- mimeType: content.type === 'image' ? content.mimeType : undefined,
355
- resource: content.type === 'resource'
356
- ? {
357
- uri: content.resource.uri,
358
- text: 'text' in content.resource ? content.resource.text : undefined,
359
- blob: 'blob' in content.resource ? content.resource.blob : undefined,
360
- }
361
- : undefined,
362
- },
460
+ content: toPromptContent(content),
363
461
  };
364
462
  });
365
463
  }, `getPrompt:${name}`);
@@ -368,12 +466,43 @@ export class MCPClient {
368
466
  * Close the connection to the MCP server
369
467
  */
370
468
  async close() {
371
- if (this.connected) {
469
+ if (this.closed) {
470
+ return;
471
+ }
472
+ this.closed = true;
473
+ try {
372
474
  await this.client.close();
475
+ }
476
+ finally {
373
477
  this.connected = false;
374
478
  }
375
479
  }
376
480
  }
481
+ function toPromptContent(content) {
482
+ switch (content.type) {
483
+ case 'text':
484
+ return { type: 'text', text: content.text };
485
+ case 'image':
486
+ case 'audio':
487
+ return { type: content.type, data: content.data, mimeType: content.mimeType };
488
+ case 'resource':
489
+ return {
490
+ type: 'resource',
491
+ resource: {
492
+ uri: content.resource.uri,
493
+ mimeType: content.resource.mimeType,
494
+ text: 'text' in content.resource ? content.resource.text : undefined,
495
+ blob: 'blob' in content.resource ? content.resource.blob : undefined,
496
+ },
497
+ };
498
+ case 'resource_link':
499
+ return {
500
+ type: 'resource_link',
501
+ mimeType: content.mimeType,
502
+ resource: { uri: content.uri, mimeType: content.mimeType },
503
+ };
504
+ }
505
+ }
377
506
  /**
378
507
  * Helper function to connect to an MCP server and get tools in one step
379
508
  *
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/client/mcp-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/client/mcp-client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,10 +6,10 @@
6
6
  * - MCPServer: Expose Cogitator tools as an MCP server
7
7
  * - Tool Adapter: Convert between Cogitator and MCP tool formats
8
8
  */
9
- export { MCPClient, connectMCPServer } from './client/mcp-client.js';
9
+ export { MCPClient, MCPToolError, connectMCPServer } from './client/mcp-client.js';
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
13
  export { cogitatorToMCP, toolSchemaToMCP, mcpToCogitator, wrapMCPTools, zodToJsonSchema, jsonSchemaToZod, resultToMCPContent, mcpContentToResult, } from './adapter/tool-adapter.js';
14
- export type { MCPClientConfig, MCPRetryConfig, MCPServerConfig, MCPTransportType, MCPResource, MCPResourceContent, MCPResourceConfig, MCPPrompt, MCPPromptArgument, MCPPromptArgumentConfig, MCPPromptMessage, MCPPromptConfig, MCPPromptResult, MCPToolDefinition, MCPToolCallResult, MCPToolContent, ToolAdapterOptions, ConvertedTools, } from './types.js';
14
+ export type { MCPClientConfig, MCPCallToolOptions, MCPRetryConfig, MCPServerConfig, MCPTransportType, MCPResource, MCPResourceContent, MCPResourceConfig, MCPPrompt, MCPPromptArgument, MCPPromptArgumentConfig, MCPPromptMessage, MCPPromptConfig, MCPPromptResult, MCPToolDefinition, MCPToolCallResult, MCPToolContent, ToolAdapterOptions, } from './types.js';
15
15
  //# 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,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClE,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,cAAc,EACd,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,EAClB,cAAc,GACf,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;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,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
@@ -6,7 +6,7 @@
6
6
  * - MCPServer: Expose Cogitator tools as an MCP server
7
7
  * - Tool Adapter: Convert between Cogitator and MCP tool formats
8
8
  */
9
- export { MCPClient, connectMCPServer } from './client/mcp-client.js';
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
12
  export { cogitatorToMCP, toolSchemaToMCP, mcpToCogitator, wrapMCPTools, zodToJsonSchema, jsonSchemaToZod, resultToMCPContent, mcpContentToResult, } from './adapter/tool-adapter.js';
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,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClE,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;AAE/D,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}