tmcp 1.20.0-next.0 → 1.20.0-next.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tmcp",
3
- "version": "1.20.0-next.0",
3
+ "version": "1.20.0-next.2",
4
4
  "description": "The main tmcp library",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
package/src/index.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * @import SqidsType from "sqids";
5
5
  * @import { JSONRPCRequest, JSONRPCParams } from "json-rpc-2.0";
6
6
  * @import { ExtractURITemplateVariables } from "./internal/uri-template.js";
7
- * @import { CallToolResult as CallToolResultType, ReadResourceResult as ReadResourceResultType, GetPromptResult as GetPromptResultType, ServerInfo as ServerInfoType, ClientCapabilities as ClientCapabilitiesType, JSONRPCRequest as JSONRPCRequestType, JSONRPCResponse, CreateMessageRequestParams as CreateMessageRequestParamsType, CreateMessageResult as CreateMessageResultType, Resource as ResourceType, LoggingLevel as LoggingLevelType, ToolAnnotations, ClientInfo as ClientInfoType, ElicitResult as ElicitResultType, Icons as IconsType, JSONRPCMessage, InitializeResult as InitializeResultType, ListToolsResult as ListToolsResultType, ListPromptsResult as ListPromptsResultType, ListResourceTemplatesResult as ListResourceTemplatesResultType, ListResourcesResult as ListResourcesResultType, CompleteResult as CompleteResultType, SubscriptionFilter as SubscriptionFilterType, SubscriptionsListenRequest as SubscriptionsListenRequestType, SubscriptionsListenResult as SubscriptionsListenResultType, SubscriptionsAcknowledgedNotification as SubscriptionsAcknowledgedNotificationType } from "./validation/index.js";
7
+ * @import { CallToolResult as CallToolResultType, ReadResourceResult as ReadResourceResultType, GetPromptResult as GetPromptResultType, ServerInfo as ServerInfoType, ClientCapabilities as ClientCapabilitiesType, JSONRPCRequest as JSONRPCRequestType, JSONRPCResponse, CreateMessageRequestParams as CreateMessageRequestParamsType, CreateMessageResult as CreateMessageResultType, Resource as ResourceType, LoggingLevel as LoggingLevelType, ToolAnnotations, ClientInfo as ClientInfoType, ElicitResult as ElicitResultType, Icons as IconsType, JSONRPCMessage, InitializeResult as InitializeResultType, ListToolsResult as ListToolsResultType, ListPromptsResult as ListPromptsResultType, ListResourceTemplatesResult as ListResourceTemplatesResultType, ListResourcesResult as ListResourcesResultType, CompleteResult as CompleteResultType, SubscriptionFilter as SubscriptionFilterType, SubscriptionsListenRequest as SubscriptionsListenRequestType, SubscriptionsListenResult as SubscriptionsListenResultType, SubscriptionsAcknowledgedNotification as SubscriptionsAcknowledgedNotificationType, DiscoverRequestParams } from "./validation/index.js";
8
8
  * @import { Tool, Completion, Prompt, StoredResource, ServerOptions, SubscriptionsKeys, ChangedArgs, McpEvents, AllSame, TemplateOptions, MrtrState, Subscription as SubscriptionType, SubscriptionCallbacks as SubscriptionCallbacksType, SubscriptionManager as SubscriptionManagerType, SubscriptionOrigin as SubscriptionOriginType } from "./internal/internal.js";
9
9
  * @import { CreatedTool, ToolOptions, CreatedPrompt, PromptOptions, CreatedResource, CreatedTemplate, ResourceOptions } from "./internal/internal.js";
10
10
  */
@@ -441,9 +441,15 @@ export class McpServer {
441
441
  this.#server.addMethod('notifications/initialized', () => {
442
442
  return null;
443
443
  });
444
- this.#server.addMethod('server/discover', () => {
444
+ this.#server.addMethod('server/discover', (discover_request) => {
445
445
  // only reachable for per-request (stateless) requests thanks to
446
446
  // the method policy guard in `receive`
447
+ this.#event_target.dispatchEvent(
448
+ event(
449
+ 'discover',
450
+ /** @type {DiscoverRequestParams} */ (discover_request),
451
+ ),
452
+ );
447
453
  return {
448
454
  supportedVersions: this.#enabled_protocol_versions(),
449
455
  capabilities: this.#discover_capabilities(),
@@ -15,6 +15,7 @@ import {
15
15
  McpError,
16
16
  SubscriptionFilter,
17
17
  RequestId,
18
+ DiscoverRequestParams,
18
19
  } from '../validation/index.js';
19
20
  import { ExtractURITemplateVariables } from './uri-template.js';
20
21
 
@@ -309,6 +310,7 @@ export type McpEvents = {
309
310
  subscriptionOnly?: boolean;
310
311
  }) => void;
311
312
  initialize: (initialize_request: InitializeRequestParams) => void;
313
+ discover: (discover_request: DiscoverRequestParams) => void;
312
314
  subscription: (subscriptions_request: {
313
315
  uri: string;
314
316
  action?: 'add' | 'remove';
@@ -600,6 +600,7 @@ declare module 'tmcp' {
600
600
  subscriptionOnly?: boolean;
601
601
  }) => void;
602
602
  initialize: (initialize_request: InitializeRequestParams) => void;
603
+ discover: (discover_request: DiscoverRequestParams) => void;
603
604
  subscription: (subscriptions_request: {
604
605
  uri: string;
605
606
  action?: 'add' | 'remove';
@@ -1393,6 +1394,92 @@ declare module 'tmcp' {
1393
1394
  readonly resourcesListChanged: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
1394
1395
  readonly resourceSubscriptions: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
1395
1396
  }, undefined>;
1397
+ const DiscoverRequestParamsSchema: v.LooseObjectSchema<{
1398
+ readonly _meta: v.LooseObjectSchema<{
1399
+ readonly 'io.modelcontextprotocol/protocolVersion': v.StringSchema<undefined>;
1400
+ readonly 'io.modelcontextprotocol/clientCapabilities': v.LooseObjectSchema<{
1401
+ /**
1402
+ * Experimental, non-standard capabilities that the client supports.
1403
+ */
1404
+ readonly experimental: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
1405
+ /**
1406
+ * Present if the client supports sampling from an LLM.
1407
+ * @deprecated in the per-request (2026-07-28) protocol; still fully supported for session-negotiated clients.
1408
+ */
1409
+ readonly sampling: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
1410
+ /**
1411
+ * Present if the client supports eliciting user input.
1412
+ * Accepts both the legacy bare `{}` shape and the modern `{ form?, url? }` sub-shapes.
1413
+ */
1414
+ readonly elicitation: v.OptionalSchema<v.LooseObjectSchema<{
1415
+ readonly form: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
1416
+ readonly url: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
1417
+ }, undefined>, undefined>;
1418
+ /**
1419
+ * Extensions supported by the client, keyed by prefixed extension identifier.
1420
+ */
1421
+ readonly extensions: v.OptionalSchema<v.RecordSchema<v.StringSchema<undefined>, v.LooseObjectSchema<{}, undefined>, undefined>, undefined>;
1422
+ /**
1423
+ * Present if the client supports listing roots.
1424
+ * @deprecated in the per-request (2026-07-28) protocol; still fully supported for session-negotiated clients.
1425
+ */
1426
+ readonly roots: v.OptionalSchema<v.LooseObjectSchema<{
1427
+ /**
1428
+ * Whether the client supports issuing notifications for changes to the roots list.
1429
+ */
1430
+ readonly listChanged: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
1431
+ }, undefined>, undefined>;
1432
+ }, undefined>;
1433
+ readonly 'io.modelcontextprotocol/clientInfo': v.OptionalSchema<v.ObjectSchema<{
1434
+ /**
1435
+ * Optional set of sized icons that the client can display in a user interface.
1436
+ *
1437
+ * Clients that support rendering icons MUST support at least the following MIME types:
1438
+ * - `image/png` - PNG images (safe, universal compatibility)
1439
+ * - `image/jpeg` (and `image/jpg`) - JPEG images (safe, universal compatibility)
1440
+ *
1441
+ * Clients that support rendering icons SHOULD also support:
1442
+ * - `image/svg+xml` - SVG images (scalable but requires security precautions)
1443
+ * - `image/webp` - WebP images (modern, efficient format)
1444
+ */
1445
+ readonly icons: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1446
+ /**
1447
+ * URL or data URI for the icon.
1448
+ */
1449
+ readonly src: v.StringSchema<undefined>;
1450
+ /**
1451
+ * Optional MIME type for the icon.
1452
+ */
1453
+ readonly mimeType: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1454
+ /**
1455
+ * Optional array of strings that specify sizes at which the icon can be used.
1456
+ * Each string should be in WxH format (e.g., `"48x48"`, `"96x96"`) or `"any"` for scalable formats like SVG.
1457
+ *
1458
+ * If not provided, the client should assume that the icon can be used at any size.
1459
+ */
1460
+ readonly sizes: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
1461
+ }, undefined>, undefined>, undefined>;
1462
+ readonly version: v.StringSchema<undefined>;
1463
+ readonly websiteUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1464
+ /** Intended for programmatic or logical use, but used as a display name in past specs or fallback */
1465
+ readonly name: v.StringSchema<undefined>;
1466
+ /**
1467
+ * Intended for UI and end-user contexts — optimized to be human-readable and easily understood,
1468
+ * even by those unfamiliar with domain-specific terminology.
1469
+ *
1470
+ * If not provided, the name should be used for display (except for Tool,
1471
+ * where `annotations.title` should be given precedence over using `name`,
1472
+ * if present).
1473
+ */
1474
+ readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1475
+ }, undefined>, undefined>;
1476
+ readonly 'io.modelcontextprotocol/logLevel': v.OptionalSchema<v.PicklistSchema<["debug", "info", "notice", "warning", "error", "critical", "alert", "emergency"], undefined>, undefined>;
1477
+ /**
1478
+ * If specified, the caller is requesting out-of-band progress notifications for this request (as represented by notifications/progress). The value of this parameter is an opaque token that will be attached to any subsequent notifications. The receiver is not obligated to provide these notifications.
1479
+ */
1480
+ readonly progressToken: v.OptionalSchema<v.UnionSchema<[v.StringSchema<undefined>, v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>], undefined>, undefined>;
1481
+ }, undefined>;
1482
+ }, undefined>;
1396
1483
  const SubscriptionsListenRequestSchema: v.ObjectSchema<{
1397
1484
  readonly method: v.LiteralSchema<"subscriptions/listen", undefined>;
1398
1485
  readonly params: v.ObjectSchema<{
@@ -2321,7 +2408,8 @@ declare module 'tmcp' {
2321
2408
  description?: string;
2322
2409
  };
2323
2410
  type InitializeRequestParams = v.InferInput<typeof InitializeRequestParamsSchema>;
2324
- type CallToolResult_1<TStructuredContent> = Omit<v.InferInput<typeof CallToolResultSchema>, "structuredContent" | "isError"> & (undefined extends TStructuredContent ? {
2411
+ type DiscoverRequestParams = v.InferInput<typeof DiscoverRequestParamsSchema>;
2412
+ type CallToolResult_1<TStructuredContent> = v.InferInput<v.LooseObjectSchema<Omit<(typeof CallToolResultSchema)["entries"], "structuredContent" | "isError">, undefined>> & (undefined extends TStructuredContent ? {
2325
2413
  structuredContent?: undefined;
2326
2414
  isError?: boolean;
2327
2415
  } : ({
@@ -2688,7 +2776,7 @@ declare module 'tmcp/tool' {
2688
2776
  readonly _meta: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
2689
2777
  }, undefined>;
2690
2778
  type Icons = v.InferInput<typeof IconsSchema>;
2691
- type CallToolResult_1<TStructuredContent> = Omit<v.InferInput<typeof CallToolResultSchema>, "structuredContent" | "isError"> & (undefined extends TStructuredContent ? {
2779
+ type CallToolResult_1<TStructuredContent> = v.InferInput<v.LooseObjectSchema<Omit<(typeof CallToolResultSchema)["entries"], "structuredContent" | "isError">, undefined>> & (undefined extends TStructuredContent ? {
2692
2780
  structuredContent?: undefined;
2693
2781
  isError?: boolean;
2694
2782
  } : ({
@@ -3494,11 +3582,11 @@ declare module 'tmcp/utils' {
3494
3582
  };
3495
3583
 
3496
3584
  function structured<T extends Record<string, unknown>>(obj: T): {
3497
- readonly content: readonly [{
3498
- readonly type: "text";
3499
- readonly text: string;
3500
- }];
3501
- readonly structuredContent: T;
3585
+ content: {
3586
+ type: "text";
3587
+ text: string;
3588
+ }[];
3589
+ structuredContent: T;
3502
3590
  };
3503
3591
 
3504
3592
  function mix<T extends Record<string, unknown> | undefined = undefined>(results: Array<CallToolResult<undefined>>, obj?: T): CallToolResult<T>;
@@ -4274,7 +4362,7 @@ declare module 'tmcp/utils' {
4274
4362
  */
4275
4363
  readonly _meta: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
4276
4364
  }, undefined>;
4277
- type CallToolResult<TStructuredContent> = Omit<v.InferInput<typeof CallToolResultSchema>, "structuredContent" | "isError"> & (undefined extends TStructuredContent ? {
4365
+ type CallToolResult<TStructuredContent> = v.InferInput<v.LooseObjectSchema<Omit<(typeof CallToolResultSchema)["entries"], "structuredContent" | "isError">, undefined>> & (undefined extends TStructuredContent ? {
4278
4366
  structuredContent?: undefined;
4279
4367
  isError?: boolean;
4280
4368
  } : ({
@@ -78,6 +78,7 @@
78
78
  "ListResourceTemplatesResultSchema",
79
79
  "ReadResourceResultSchema",
80
80
  "SubscriptionFilterSchema",
81
+ "DiscoverRequestParamsSchema",
81
82
  "SubscriptionsListenRequestSchema",
82
83
  "SubscriptionsListenResultSchema",
83
84
  "SubscriptionsAcknowledgedNotificationSchema",
@@ -92,6 +93,7 @@
92
93
  "CompleteResultSchema",
93
94
  "ServerCapabilities",
94
95
  "InitializeRequestParams",
96
+ "DiscoverRequestParams",
95
97
  "JSONRPCMessage",
96
98
  "ToolAnnotations",
97
99
  "RequestId",
@@ -127,6 +129,6 @@
127
129
  null,
128
130
  null
129
131
  ],
130
- "mappings": "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",
132
+ "mappings": "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",
131
133
  "ignoreList": []
132
134
  }
@@ -81,15 +81,15 @@ export const tool = {
81
81
  * @param {T} obj
82
82
  */
83
83
  structured(obj) {
84
- return /** @type {const} */ ({
84
+ return {
85
85
  content: [
86
86
  {
87
- type: 'text',
87
+ type: /** @type {const} */ ('text'),
88
88
  text: JSON.stringify(obj),
89
89
  },
90
90
  ],
91
91
  structuredContent: obj,
92
- });
92
+ };
93
93
  },
94
94
  /**
95
95
  * @template {Record<string, unknown> | undefined} [T=undefined]
@@ -743,6 +743,10 @@ const PerRequestMetaSchema = v.looseObject({
743
743
  'io.modelcontextprotocol/logLevel': v.optional(LoggingLevelSchema),
744
744
  });
745
745
 
746
+ export const DiscoverRequestParamsSchema = v.looseObject({
747
+ _meta: PerRequestMetaSchema,
748
+ });
749
+
746
750
  /**
747
751
  * Open a long-lived stream for server notifications.
748
752
  */
@@ -1837,9 +1841,12 @@ export const ServerResultSchema = v.pipe(
1837
1841
  /**
1838
1842
  * @typedef {v.InferInput<typeof InitializeRequestParamsSchema>} InitializeRequestParams
1839
1843
  */
1844
+ /**
1845
+ * @typedef {v.InferInput<typeof DiscoverRequestParamsSchema>} DiscoverRequestParams
1846
+ */
1840
1847
  /**
1841
1848
  * @template TStructuredContent
1842
- * @typedef {Omit<v.InferInput<typeof CallToolResultSchema>, "structuredContent" | "isError"> & (undefined extends TStructuredContent ? { structuredContent?: undefined, isError?: boolean } : ({ structuredContent: TStructuredContent, isError?: false } | { isError: true, structuredContent?: TStructuredContent }))} CallToolResult
1849
+ * @typedef {v.InferInput<v.LooseObjectSchema<Omit<typeof CallToolResultSchema["entries"], "structuredContent" | "isError">, undefined>> & (undefined extends TStructuredContent ? { structuredContent?: undefined, isError?: boolean } : ({ structuredContent: TStructuredContent, isError?: false } | { isError: true, structuredContent?: TStructuredContent }))} CallToolResult
1843
1850
  */
1844
1851
  /**
1845
1852
  * @typedef {v.InferInput<typeof ReadResourceResultSchema>} ReadResourceResult