@frontmcp/sdk 1.5.6 → 1.6.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 +12 -5
- package/auth/flows/oauth.authorize.flow.d.ts +8 -0
- package/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
- package/auth/flows/oauth.callback.flow.d.ts +8 -0
- package/auth/flows/oauth.callback.flow.d.ts.map +1 -1
- package/auth/flows/oauth.provider-callback.flow.d.ts +1 -0
- package/auth/flows/oauth.provider-callback.flow.d.ts.map +1 -1
- package/auth/flows/oauth.register.flow.d.ts +4 -0
- package/auth/flows/oauth.register.flow.d.ts.map +1 -1
- package/auth/flows/well-known.oauth-authorization-server.flow.d.ts.map +1 -1
- package/auth/instances/instance.local-primary-auth.d.ts +38 -0
- package/auth/instances/instance.local-primary-auth.d.ts.map +1 -1
- package/common/interfaces/tool.interface.d.ts +33 -1
- package/common/interfaces/tool.interface.d.ts.map +1 -1
- package/common/metadata/front-mcp.metadata.d.ts +34 -0
- package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
- package/common/types/options/transport/interfaces.d.ts +14 -0
- package/common/types/options/transport/interfaces.d.ts.map +1 -1
- package/common/types/options/transport/schema.d.ts +4 -0
- package/common/types/options/transport/schema.d.ts.map +1 -1
- package/common/utils/decide-request-intent.utils.d.ts +3 -3
- package/common/utils/decide-request-intent.utils.d.ts.map +1 -1
- package/context/frontmcp-context.d.ts +46 -1
- package/context/frontmcp-context.d.ts.map +1 -1
- package/elicitation/helpers/elicit.helper.d.ts.map +1 -1
- package/elicitation/helpers/index.d.ts +1 -0
- package/elicitation/helpers/index.d.ts.map +1 -1
- package/elicitation/helpers/mrtr-request.helper.d.ts +83 -0
- package/elicitation/helpers/mrtr-request.helper.d.ts.map +1 -0
- package/errors/index.d.ts +1 -0
- package/errors/index.d.ts.map +1 -1
- package/errors/mrtr.error.d.ts +55 -0
- package/errors/mrtr.error.d.ts.map +1 -0
- package/esm/index.mjs +2862 -470
- package/front-mcp/front-mcp.providers.d.ts +4 -0
- package/front-mcp/front-mcp.providers.d.ts.map +1 -1
- package/index.d.ts +10 -4
- package/index.d.ts.map +1 -1
- package/index.js +3134 -731
- package/job/enclave/job-enclave.bridge.d.ts.map +1 -1
- package/package.json +11 -11
- package/remote-mcp/mcp-client.service.d.ts +7 -0
- package/remote-mcp/mcp-client.service.d.ts.map +1 -1
- package/remote-mcp/mcp-client.types.d.ts +19 -6
- package/remote-mcp/mcp-client.types.d.ts.map +1 -1
- package/remote-mcp/mcp-stateless-client.adapter.d.ts +85 -0
- package/remote-mcp/mcp-stateless-client.adapter.d.ts.map +1 -0
- package/scope/flows/http.request.flow.d.ts +9 -3
- package/scope/flows/http.request.flow.d.ts.map +1 -1
- package/task/helpers/task-runner.d.ts.map +1 -1
- package/task/task.types.d.ts +16 -0
- package/task/task.types.d.ts.map +1 -1
- package/tool/flows/call-tool.flow.d.ts.map +1 -1
- package/transport/flows/handle.mcp-20260728.flow.d.ts +77 -0
- package/transport/flows/handle.mcp-20260728.flow.d.ts.map +1 -0
- package/transport/mcp-20260728/client/header-params.d.ts +22 -0
- package/transport/mcp-20260728/client/header-params.d.ts.map +1 -0
- package/transport/mcp-20260728/client/index.d.ts +8 -0
- package/transport/mcp-20260728/client/index.d.ts.map +1 -0
- package/transport/mcp-20260728/client/mcp-stateless.client.d.ts +157 -0
- package/transport/mcp-20260728/client/mcp-stateless.client.d.ts.map +1 -0
- package/transport/mcp-20260728/discover.d.ts +28 -0
- package/transport/mcp-20260728/discover.d.ts.map +1 -0
- package/transport/mcp-20260728/dispatcher.d.ts +77 -0
- package/transport/mcp-20260728/dispatcher.d.ts.map +1 -0
- package/transport/mcp-20260728/header-codec.d.ts +32 -0
- package/transport/mcp-20260728/header-codec.d.ts.map +1 -0
- package/transport/mcp-20260728/index.d.ts +22 -0
- package/transport/mcp-20260728/index.d.ts.map +1 -0
- package/transport/mcp-20260728/mrtr.d.ts +143 -0
- package/transport/mcp-20260728/mrtr.d.ts.map +1 -0
- package/transport/mcp-20260728/protocol-20260728.constants.d.ts +46 -0
- package/transport/mcp-20260728/protocol-20260728.constants.d.ts.map +1 -0
- package/transport/mcp-20260728/request-notifications.d.ts +70 -0
- package/transport/mcp-20260728/request-notifications.d.ts.map +1 -0
- package/transport/mcp-20260728/request-state.d.ts +76 -0
- package/transport/mcp-20260728/request-state.d.ts.map +1 -0
- package/transport/mcp-20260728/request-validation.d.ts +83 -0
- package/transport/mcp-20260728/request-validation.d.ts.map +1 -0
- package/transport/mcp-20260728/result-decorator.d.ts +62 -0
- package/transport/mcp-20260728/result-decorator.d.ts.map +1 -0
- package/transport/mcp-20260728/subscriptions.d.ts +47 -0
- package/transport/mcp-20260728/subscriptions.d.ts.map +1 -0
- package/transport/mcp-20260728/tasks-extension.d.ts +90 -0
- package/transport/mcp-20260728/tasks-extension.d.ts.map +1 -0
- package/transport/mcp-handlers/call-tool-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/index.d.ts +556 -556
- package/transport/mcp-handlers/index.d.ts.map +1 -1
- package/transport/transport.registry.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-enclave.bridge.d.ts","sourceRoot":"","sources":["../../../src/job/enclave/job-enclave.bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAG/E,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"job-enclave.bridge.d.ts","sourceRoot":"","sources":["../../../src/job/enclave/job-enclave.bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAG/E,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA0BD;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,WAAW,CAA0B;gBAEjC,MAAM,EAAE,cAAc,EAAE,OAAO,GAAE,cAAmB;IAQhE;;;;;;;;OAQG;YACW,cAAc;IA6B5B;;OAEG;IACG,OAAO,CACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;QACpC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;KACnD,GACA,OAAO,CAAC,OAAO,CAAC;CAyDpB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frontmcp/sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "FrontMCP SDK",
|
|
5
5
|
"author": "AgentFront <info@agentfront.dev>",
|
|
6
6
|
"homepage": "https://docs.agentfront.dev",
|
|
@@ -89,9 +89,9 @@
|
|
|
89
89
|
},
|
|
90
90
|
"peerDependencies": {
|
|
91
91
|
"@anthropic-ai/sdk": "^0.30.0 || ^0.78.0",
|
|
92
|
-
"@enclave-vm/core": "^2.15.
|
|
93
|
-
"@frontmcp/observability": "1.
|
|
94
|
-
"@frontmcp/storage-sqlite": "1.
|
|
92
|
+
"@enclave-vm/core": "^2.15.1",
|
|
93
|
+
"@frontmcp/observability": "1.6.0",
|
|
94
|
+
"@frontmcp/storage-sqlite": "1.6.0",
|
|
95
95
|
"@opentelemetry/api": "^1.9.0",
|
|
96
96
|
"@opentelemetry/sdk-trace-base": "^2.8.0",
|
|
97
97
|
"@vercel/kv": "^3.0.0",
|
|
@@ -132,13 +132,13 @@
|
|
|
132
132
|
}
|
|
133
133
|
},
|
|
134
134
|
"dependencies": {
|
|
135
|
-
"@frontmcp/auth": "1.
|
|
136
|
-
"@frontmcp/di": "1.
|
|
137
|
-
"@frontmcp/guard": "1.
|
|
138
|
-
"@frontmcp/lazy-zod": "1.
|
|
139
|
-
"@frontmcp/protocol": "1.
|
|
140
|
-
"@frontmcp/uipack": "1.
|
|
141
|
-
"@frontmcp/utils": "1.
|
|
135
|
+
"@frontmcp/auth": "1.6.0",
|
|
136
|
+
"@frontmcp/di": "1.6.0",
|
|
137
|
+
"@frontmcp/guard": "1.6.0",
|
|
138
|
+
"@frontmcp/lazy-zod": "1.6.0",
|
|
139
|
+
"@frontmcp/protocol": "1.6.0",
|
|
140
|
+
"@frontmcp/uipack": "1.6.0",
|
|
141
|
+
"@frontmcp/utils": "1.6.0",
|
|
142
142
|
"@types/cors": "^2.8.17",
|
|
143
143
|
"ioredis": "^5.8.0",
|
|
144
144
|
"jose": "^6.1.3",
|
|
@@ -110,6 +110,13 @@ export declare class McpClientService {
|
|
|
110
110
|
* Note: For HTTP transport with fallback, the initial transport is Streamable HTTP.
|
|
111
111
|
* If connection fails with Streamable HTTP, use createFallbackTransport() to get SSE.
|
|
112
112
|
*/
|
|
113
|
+
/**
|
|
114
|
+
* Build a 2026-07-28 connection when the remote is on that revision.
|
|
115
|
+
*
|
|
116
|
+
* Returns `undefined` for every other case so the legacy path below runs
|
|
117
|
+
* completely untouched — the default for an unconfigured remote.
|
|
118
|
+
*/
|
|
119
|
+
private tryConnect2026;
|
|
113
120
|
private createTransport;
|
|
114
121
|
/**
|
|
115
122
|
* Create fallback SSE transport when Streamable HTTP fails
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-client.service.d.ts","sourceRoot":"","sources":["../../src/remote-mcp/mcp-client.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,IAAI,EAEV,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-client.service.d.ts","sourceRoot":"","sources":["../../src/remote-mcp/mcp-client.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,7 @@
|
|
|
2
2
|
* @file mcp-client.types.ts
|
|
3
3
|
* @description Types for MCP client connections to remote servers
|
|
4
4
|
*/
|
|
5
|
-
import type
|
|
6
|
-
import type { Transport } from '@frontmcp/protocol';
|
|
7
|
-
import type { Tool, Resource, ResourceTemplate, Prompt, ServerCapabilities, CallToolResult, ReadResourceResult, GetPromptResult } from '@frontmcp/protocol';
|
|
8
|
-
import type { AuthInfo } from '@frontmcp/protocol';
|
|
5
|
+
import { type AuthInfo, type CallToolResult, type Client, type GetPromptResult, type Prompt, type ReadResourceResult, type Resource, type ResourceTemplate, type ServerCapabilities, type Tool, type Transport } from '@frontmcp/protocol';
|
|
9
6
|
/**
|
|
10
7
|
* Connection status for a remote MCP server
|
|
11
8
|
*/
|
|
@@ -16,8 +13,14 @@ export type McpConnectionStatus = 'connecting' | 'connected' | 'disconnected' |
|
|
|
16
13
|
export interface McpClientConnection {
|
|
17
14
|
/** The MCP client instance */
|
|
18
15
|
client: Client;
|
|
19
|
-
/**
|
|
20
|
-
|
|
16
|
+
/**
|
|
17
|
+
* The transport used for communication.
|
|
18
|
+
*
|
|
19
|
+
* Absent for protocol 2026-07-28 connections: that revision is stateless, so
|
|
20
|
+
* the adapter issues an independent HTTP request per call and there is no
|
|
21
|
+
* long-lived transport object to hold.
|
|
22
|
+
*/
|
|
23
|
+
transport?: Transport;
|
|
21
24
|
/** Session ID assigned by the remote server (if any) */
|
|
22
25
|
sessionId?: string;
|
|
23
26
|
/** Current connection status */
|
|
@@ -61,6 +64,16 @@ export interface McpHttpTransportOptions {
|
|
|
61
64
|
fallbackToSSE?: boolean;
|
|
62
65
|
/** Additional headers to include in all requests */
|
|
63
66
|
headers?: Record<string, string>;
|
|
67
|
+
/**
|
|
68
|
+
* Which MCP revision to speak to this remote.
|
|
69
|
+
*
|
|
70
|
+
* - omitted / `'legacy'` — the session + `initialize` transports (default, and
|
|
71
|
+
* what every existing deployment keeps doing).
|
|
72
|
+
* - `'2026-07-28'` — the stateless revision, via FrontMCP's own client.
|
|
73
|
+
* - `'auto'` — probe `server/discover` first and fall back to legacy when the
|
|
74
|
+
* remote does not answer it, per the spec's backward-compatibility guidance.
|
|
75
|
+
*/
|
|
76
|
+
protocolVersion?: 'legacy' | '2026-07-28' | 'auto';
|
|
64
77
|
}
|
|
65
78
|
/**
|
|
66
79
|
* Options for Worker subprocess transport
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-client.types.d.ts","sourceRoot":"","sources":["../../src/remote-mcp/mcp-client.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mcp-client.types.d.ts","sourceRoot":"","sources":["../../src/remote-mcp/mcp-client.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapter presenting an {@link McpStatelessClient} through the subset of the upstream
|
|
3
|
+
* `Client` API that {@link McpClientService} uses.
|
|
4
|
+
*
|
|
5
|
+
* The remote-proxy is built around `@modelcontextprotocol/sdk`'s `Client`, which
|
|
6
|
+
* cannot speak 2026-07-28 — it opens with `initialize` and assumes a session.
|
|
7
|
+
* Rather than fork the proxy, this adapter satisfies the eight methods the
|
|
8
|
+
* service actually calls, so a remote server on either revision looks the same
|
|
9
|
+
* to everything downstream.
|
|
10
|
+
*
|
|
11
|
+
* @module remote-mcp/mcp-stateless-client.adapter
|
|
12
|
+
*/
|
|
13
|
+
import { type ServerCapabilities } from '@frontmcp/protocol';
|
|
14
|
+
import { type McpStatelessClientOptions } from '../transport/mcp-20260728';
|
|
15
|
+
/** The `Client` surface `McpClientService` depends on. */
|
|
16
|
+
export interface RemoteClientLike {
|
|
17
|
+
listTools(): Promise<{
|
|
18
|
+
tools: unknown[];
|
|
19
|
+
}>;
|
|
20
|
+
callTool(params: {
|
|
21
|
+
name: string;
|
|
22
|
+
arguments?: Record<string, unknown>;
|
|
23
|
+
}): Promise<unknown>;
|
|
24
|
+
listResources(): Promise<{
|
|
25
|
+
resources: unknown[];
|
|
26
|
+
}>;
|
|
27
|
+
readResource(params: {
|
|
28
|
+
uri: string;
|
|
29
|
+
}): Promise<unknown>;
|
|
30
|
+
listPrompts(): Promise<{
|
|
31
|
+
prompts: unknown[];
|
|
32
|
+
}>;
|
|
33
|
+
getPrompt(params: {
|
|
34
|
+
name: string;
|
|
35
|
+
arguments?: Record<string, string>;
|
|
36
|
+
}): Promise<unknown>;
|
|
37
|
+
getServerCapabilities(): ServerCapabilities | undefined;
|
|
38
|
+
close(): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
export declare class McpStatelessClientAdapter implements RemoteClientLike {
|
|
41
|
+
private readonly client;
|
|
42
|
+
private capabilities;
|
|
43
|
+
constructor(options: McpStatelessClientOptions);
|
|
44
|
+
/**
|
|
45
|
+
* Probe the remote with `server/discover` and cache its capabilities.
|
|
46
|
+
*
|
|
47
|
+
* Replaces `initialize` as the connect step: it is the only round trip this
|
|
48
|
+
* revision defines for learning what a server offers.
|
|
49
|
+
*/
|
|
50
|
+
connect(): Promise<void>;
|
|
51
|
+
getServerCapabilities(): ServerCapabilities | undefined;
|
|
52
|
+
listTools(): Promise<{
|
|
53
|
+
tools: unknown[];
|
|
54
|
+
}>;
|
|
55
|
+
callTool(params: {
|
|
56
|
+
name: string;
|
|
57
|
+
arguments?: Record<string, unknown>;
|
|
58
|
+
}): Promise<unknown>;
|
|
59
|
+
listResources(): Promise<{
|
|
60
|
+
resources: unknown[];
|
|
61
|
+
}>;
|
|
62
|
+
readResource(params: {
|
|
63
|
+
uri: string;
|
|
64
|
+
}): Promise<unknown>;
|
|
65
|
+
listPrompts(): Promise<{
|
|
66
|
+
prompts: unknown[];
|
|
67
|
+
}>;
|
|
68
|
+
getPrompt(params: {
|
|
69
|
+
name: string;
|
|
70
|
+
arguments?: Record<string, string>;
|
|
71
|
+
}): Promise<unknown>;
|
|
72
|
+
close(): Promise<void>;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Decide which revision to speak to a remote server.
|
|
76
|
+
*
|
|
77
|
+
* `'auto'` runs the spec's own backward-compatibility probe: ask for
|
|
78
|
+
* `server/discover` first. ANY failure — a transport error, a timeout, a
|
|
79
|
+
* non-2026 server, or a response that does not advertise `2026-07-28` — selects
|
|
80
|
+
* the legacy path. Anything other than `'auto'` is an explicit choice by the
|
|
81
|
+
* operator, and the default stays on the legacy path so existing deployments are
|
|
82
|
+
* untouched.
|
|
83
|
+
*/
|
|
84
|
+
export declare function negotiateRemoteProtocol(url: string, configured: string | undefined, headers: Record<string, string> | undefined, fetchImpl?: typeof fetch): Promise<'2026-07-28' | 'legacy'>;
|
|
85
|
+
//# sourceMappingURL=mcp-stateless-client.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-stateless-client.adapter.d.ts","sourceRoot":"","sources":["../../src/remote-mcp/mcp-stateless-client.adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAsB,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE/F,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAC/B,SAAS,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1F,aAAa,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;IACnD,YAAY,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxD,WAAW,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;IAC/C,SAAS,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1F,qBAAqB,IAAI,kBAAkB,GAAG,SAAS,CAAC;IACxD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,qBAAa,yBAA0B,YAAW,gBAAgB;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,YAAY,CAAiC;gBAEzC,OAAO,EAAE,yBAAyB;IAI9C;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,qBAAqB,IAAI,kBAAkB,GAAG,SAAS;IAIjD,SAAS,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAO1C,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzF,aAAa,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAKlD,YAAY,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvD,WAAW,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAK9C,SAAS,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAI7B;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,SAAS,GAAE,OAAO,KAAa,GAC9B,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,CAalC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { FlowBase, httpInputSchema, httpOutputSchema, type FlowRunOptions, type ScopeEntry, type ServerRequest } from '../../common';
|
|
2
2
|
declare const plan: {
|
|
3
3
|
readonly pre: ["traceRequest", "acquireQuota", "acquireSemaphore", "checkAuthorization", "router"];
|
|
4
|
-
readonly execute: ["handleWebFetch", "handleLegacySse", "handleSse", "handleStreamableHttp", "handleStatefulHttp", "handleStatelessHttp", "handleDeleteSession"];
|
|
4
|
+
readonly execute: ["handleMcp2026", "handleWebFetch", "handleLegacySse", "handleSse", "handleStreamableHttp", "handleStatefulHttp", "handleStatelessHttp", "handleDeleteSession"];
|
|
5
5
|
readonly finalize: ["audit", "metrics", "releaseSemaphore", "releaseQuota", "finalize"];
|
|
6
6
|
readonly error: [];
|
|
7
7
|
};
|
|
8
8
|
export declare const httpRequestStateSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
9
9
|
decision: import("@frontmcp/lazy-zod").ZodObject<{
|
|
10
|
-
intent: import("@frontmcp/lazy-zod").ZodUnion<readonly [import("@frontmcp/lazy-zod").ZodLiteral<"legacy-sse">, import("@frontmcp/lazy-zod").ZodLiteral<"sse">, import("@frontmcp/lazy-zod").ZodLiteral<"streamable-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateful-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateless-http">, import("@frontmcp/lazy-zod").ZodLiteral<"delete-session">, import("@frontmcp/lazy-zod").ZodLiteral<"unknown">]>;
|
|
10
|
+
intent: import("@frontmcp/lazy-zod").ZodUnion<readonly [import("@frontmcp/lazy-zod").ZodLiteral<"legacy-sse">, import("@frontmcp/lazy-zod").ZodLiteral<"sse">, import("@frontmcp/lazy-zod").ZodLiteral<"streamable-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateful-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateless-http">, import("@frontmcp/lazy-zod").ZodLiteral<"delete-session">, import("@frontmcp/lazy-zod").ZodLiteral<"mcp-20260728">, import("@frontmcp/lazy-zod").ZodLiteral<"unknown">]>;
|
|
11
11
|
reasons: import("@frontmcp/lazy-zod").ZodArray<import("@frontmcp/lazy-zod").ZodString>;
|
|
12
12
|
recommendation: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodObject<{
|
|
13
13
|
httpStatus: import("@frontmcp/lazy-zod").ZodNumber;
|
|
@@ -19,7 +19,7 @@ export declare const httpRequestStateSchema: import("@frontmcp/lazy-zod").ZodObj
|
|
|
19
19
|
flags: import("@frontmcp/lazy-zod").ZodNumber;
|
|
20
20
|
}, import("zod/v4/core").$strip>>;
|
|
21
21
|
}, import("zod/v4/core").$strip>;
|
|
22
|
-
intent: import("@frontmcp/lazy-zod").ZodUnion<readonly [import("@frontmcp/lazy-zod").ZodLiteral<"legacy-sse">, import("@frontmcp/lazy-zod").ZodLiteral<"sse">, import("@frontmcp/lazy-zod").ZodLiteral<"streamable-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateful-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateless-http">, import("@frontmcp/lazy-zod").ZodLiteral<"delete-session">, import("@frontmcp/lazy-zod").ZodLiteral<"unknown">]>;
|
|
22
|
+
intent: import("@frontmcp/lazy-zod").ZodUnion<readonly [import("@frontmcp/lazy-zod").ZodLiteral<"legacy-sse">, import("@frontmcp/lazy-zod").ZodLiteral<"sse">, import("@frontmcp/lazy-zod").ZodLiteral<"streamable-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateful-http">, import("@frontmcp/lazy-zod").ZodLiteral<"stateless-http">, import("@frontmcp/lazy-zod").ZodLiteral<"delete-session">, import("@frontmcp/lazy-zod").ZodLiteral<"mcp-20260728">, import("@frontmcp/lazy-zod").ZodLiteral<"unknown">]>;
|
|
23
23
|
verifyResult: import("@frontmcp/lazy-zod").ZodUnion<readonly [import("@frontmcp/lazy-zod").ZodObject<{
|
|
24
24
|
kind: import("@frontmcp/lazy-zod").ZodLiteral<"unauthorized">;
|
|
25
25
|
prmMetadataHeader: import("@frontmcp/lazy-zod").ZodString;
|
|
@@ -126,6 +126,12 @@ export default class HttpRequestFlow extends FlowBase<typeof name> {
|
|
|
126
126
|
* execute), and the verified authorization is read from the request token.
|
|
127
127
|
*/
|
|
128
128
|
handleWebFetch(): Promise<void>;
|
|
129
|
+
/**
|
|
130
|
+
* MCP protocol 2026-07-28. Delegates to `handle:mcp-20260728`, which owns header
|
|
131
|
+
* validation, `server/discover`, `subscriptions/listen`, MRTR, and result
|
|
132
|
+
* decoration for that revision.
|
|
133
|
+
*/
|
|
134
|
+
handleMcp2026(): Promise<void>;
|
|
129
135
|
handleLegacySse(): Promise<void>;
|
|
130
136
|
handleSse(): Promise<void>;
|
|
131
137
|
handleStreamableHttp(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.request.flow.d.ts","sourceRoot":"","sources":["../../../src/scope/flows/http.request.flow.ts"],"names":[],"mappings":"AAYA,OAAO,EAKL,QAAQ,EAGR,eAAe,EACf,gBAAgB,EAShB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"http.request.flow.d.ts","sourceRoot":"","sources":["../../../src/scope/flows/http.request.flow.ts"],"names":[],"mappings":"AAYA,OAAO,EAKL,QAAQ,EAGR,eAAe,EACf,gBAAgB,EAShB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;AAKtB,QAAA,MAAM,IAAI;;;;;CAwC2B,CAAC;AAEtC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAIjC,CAAC;AAEH,QAAA,MAAM,IAAI,EAAG,cAAuB,CAAC;AAcrC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,cAAc,EAAE,cAAc,CAC5B,eAAe,EACf,OAAO,IAAI,EACX,OAAO,eAAe,EACtB,OAAO,gBAAgB,EACvB,OAAO,sBAAsB,CAC9B,CAAC;KACH;CACF;AAYD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,QAAQ,CAAC,OAAO,IAAI,CAAC;IAChE,MAAM,wCAA8C;IACpD,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,SAAS,CAAM;IAEvB,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU;IActD,YAAY;IAkDZ,YAAY;IA8BZ,kBAAkB;IAsDxB;;;;;;;;;;;;;;;OAeG;YACW,yBAAyB;IAwCjC,MAAM;IAwSZ;;;;;;;;;;;;;;OAcG;IAEG,cAAc;IAgEpB;;;;OAIG;IAQG,aAAa;IAuBb,eAAe;IAuBf,SAAS;IAuBT,oBAAoB;IAuBpB,kBAAkB;IAuBlB,mBAAmB;IAuBnB,mBAAmB;IAgDnB,QAAQ;IAcd;;;OAGG;IACH,OAAO,CAAC,QAAQ;CA8CjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-runner.d.ts","sourceRoot":"","sources":["../../../src/task/helpers/task-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"task-runner.d.ts","sourceRoot":"","sources":["../../../src/task/helpers/task-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAqC,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,iEAAiE;AACjE,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjH;AAED,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,MAAM,EAAE,UAAU,CAAC;IACnB,+EAA+E;IAC/E,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,oEAAoE;IACpE,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAIxE"}
|
package/task/task.types.d.ts
CHANGED
|
@@ -95,6 +95,22 @@ export interface TaskRecord {
|
|
|
95
95
|
* duration of the task per spec.
|
|
96
96
|
*/
|
|
97
97
|
progressToken?: string | number;
|
|
98
|
+
/**
|
|
99
|
+
* Server→client requests the task is blocked on, set when `status` is
|
|
100
|
+
* `input_required` (tasks extension, protocol 2026-07-28).
|
|
101
|
+
*
|
|
102
|
+
* The client reads these from `tasks/get` and answers them with
|
|
103
|
+
* `tasks/update` — the task equivalent of the MRTR round trip.
|
|
104
|
+
*/
|
|
105
|
+
inputRequests?: Record<string, {
|
|
106
|
+
method: string;
|
|
107
|
+
params?: Record<string, unknown>;
|
|
108
|
+
}>;
|
|
109
|
+
/**
|
|
110
|
+
* Answers accumulated from `tasks/update` calls, keyed the same way as
|
|
111
|
+
* {@link inputRequests}. Replayed into the tool when the task resumes.
|
|
112
|
+
*/
|
|
113
|
+
inputResponses?: Record<string, Record<string, unknown>>;
|
|
98
114
|
/**
|
|
99
115
|
* Identifies the runtime executing the task so we can orphan-detect and
|
|
100
116
|
* cross-process cancel.
|
package/task/task.types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.types.d.ts","sourceRoot":"","sources":["../../src/task/task.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task.types.d.ts","sourceRoot":"","sources":["../../src/task/task.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-tool.flow.d.ts","sourceRoot":"","sources":["../../../src/tool/flows/call-tool.flow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAA+C,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAYnC,OAAO,EAEL,QAAQ,EAIR,WAAW,EACX,SAAS,EAET,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"call-tool.flow.d.ts","sourceRoot":"","sources":["../../../src/tool/flows/call-tool.flow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAA+C,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAYnC,OAAO,EAEL,QAAQ,EAIR,WAAW,EACX,SAAS,EAET,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAsEtB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;gCAIf,CAAC;AAEH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAAuB,CAAC;AAE1C,QAAA,MAAM,WAAW;;;;;cAKiB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cASnB,CAAC,CAAC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;;;;;;;;gCAoB1E,CAAC;AAEH,QAAA,MAAM,IAAI;;;;CAuB2B,CAAC;AAEtC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,iBAAiB,EAAE,cAAc,CAC/B,YAAY,EACZ,OAAO,IAAI,EACX,OAAO,WAAW,EAClB,OAAO,YAAY,EACnB,OAAO,WAAW,CACnB,CAAC;KACH;CACF;AAED,QAAA,MAAM,IAAI,EAAG,iBAA0B,CAAC;AAUxC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,QAAQ,CAAC,OAAO,IAAI,CAAC;IAC7D,MAAM,wCAA0C;IAG1C,UAAU;IAsDhB;;;;OAIG;IAEG,wBAAwB;IA2CxB,QAAQ;IAkHd;;;;;;;;OAQG;IAEG,qBAAqB;IAqJ3B;;;;OAIG;IAEG,sBAAsB;IAiJ5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;;;OAIG;IAEG,qBAAqB;IAwDrB,qBAAqB;IAkE3B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IAEG,oBAAoB;IA2DpB,YAAY;IA4CZ,gBAAgB;IA0ChB,aAAa;IAuBb,OAAO;IAwIP,cAAc;IAed,gBAAgB;IAgBhB,YAAY;IAOlB;;;;OAIG;IAEG,OAAO;IAyLb;;;;;;;;OAQG;IAEG,QAAQ;CAsGf"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { FlowBase, httpInputSchema, httpOutputSchema, type FlowRunOptions } from '../../common';
|
|
2
|
+
import { isProtocol20260728Request, MCP_HEADERS, readHeader } from '../mcp-20260728';
|
|
3
|
+
export declare const plan: {
|
|
4
|
+
readonly pre: ["parseInput", "validate", "router"];
|
|
5
|
+
readonly execute: ["handleNotification", "handleSubscriptions", "handleMessage"];
|
|
6
|
+
readonly post: [];
|
|
7
|
+
readonly finalize: ["cleanup"];
|
|
8
|
+
};
|
|
9
|
+
export declare const stateSchema: import("@frontmcp/lazy-zod").ZodObject<{
|
|
10
|
+
version: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodString>;
|
|
11
|
+
requestType: import("@frontmcp/lazy-zod").ZodOptional<import("@frontmcp/lazy-zod").ZodEnum<{
|
|
12
|
+
message: "message";
|
|
13
|
+
notification: "notification";
|
|
14
|
+
subscriptions: "subscriptions";
|
|
15
|
+
}>>;
|
|
16
|
+
isAnonymous: import("@frontmcp/lazy-zod").ZodDefault<import("@frontmcp/lazy-zod").ZodBoolean>;
|
|
17
|
+
}, import("zod/v4/core").$strip>;
|
|
18
|
+
declare const name: "handle:mcp-202607280728";
|
|
19
|
+
declare global {
|
|
20
|
+
interface ExtendFlows {
|
|
21
|
+
'handle:mcp-202607280728': FlowRunOptions<HandleMcp20260728Flow, typeof plan, typeof httpInputSchema, typeof httpOutputSchema, typeof stateSchema>;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export declare function extractTraceContext(meta: Record<string, unknown>): Record<string, string> | undefined;
|
|
25
|
+
export default class HandleMcp20260728Flow extends FlowBase<typeof name> {
|
|
26
|
+
name: "handle:mcp-202607280728";
|
|
27
|
+
private get log();
|
|
28
|
+
parseInput(): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Enforce the transport rules of this revision BEFORE any handler runs.
|
|
31
|
+
*
|
|
32
|
+
* Header/body agreement is a security control, not a formality: an
|
|
33
|
+
* intermediary may route on `Mcp-Method` / `Mcp-Name` while the server
|
|
34
|
+
* executes on the body, so a disagreement must be refused rather than
|
|
35
|
+
* resolved in favour of one side.
|
|
36
|
+
*/
|
|
37
|
+
validate(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Resolve a tool's input JSON Schema so `x-mcp-header` annotations can be
|
|
40
|
+
* validated against the call arguments.
|
|
41
|
+
*
|
|
42
|
+
* Uses the SAME resolution `tools:call-tool` uses (`getTools(true)` matched on
|
|
43
|
+
* `fullName` or `name`, including hidden tools). Anything looser would let a
|
|
44
|
+
* header-validated call and the call that actually executes disagree about
|
|
45
|
+
* which tool they mean.
|
|
46
|
+
*/
|
|
47
|
+
/**
|
|
48
|
+
* Re-enter this request's `FrontMcpContext` for work deferred past the flow.
|
|
49
|
+
*
|
|
50
|
+
* A streamed response is drained by the renderer after the flow has unwound,
|
|
51
|
+
* so anything that runs there has lost the AsyncLocalStorage scope. Capturing
|
|
52
|
+
* the context here and re-entering it keeps every context-dependent API
|
|
53
|
+
* (`notify`, `progress`, `elicit`, provider resolution) behaving identically
|
|
54
|
+
* whether the response was buffered or streamed.
|
|
55
|
+
*/
|
|
56
|
+
private buildContextRunner;
|
|
57
|
+
private findToolSchema;
|
|
58
|
+
router(): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* A JSON-RPC notification POST is acknowledged with `202 Accepted` and no
|
|
61
|
+
* body. This revision defines no client→server notifications over HTTP
|
|
62
|
+
* (cancellation is signalled by closing the stream), so nothing is dispatched.
|
|
63
|
+
*/
|
|
64
|
+
handleNotification(): Promise<void>;
|
|
65
|
+
/**
|
|
66
|
+
* `subscriptions/listen` owns its HTTP response for the life of the
|
|
67
|
+
* subscription, so it is answered with an SSE stream rather than a buffered
|
|
68
|
+
* result. The stream is an `AsyncIterable`, which the Node writer and the Web
|
|
69
|
+
* response renderer both know how to drain — no runtime-specific branch here.
|
|
70
|
+
*/
|
|
71
|
+
handleSubscriptions(): Promise<void>;
|
|
72
|
+
handleMessage(): Promise<void>;
|
|
73
|
+
cleanup(): Promise<void>;
|
|
74
|
+
}
|
|
75
|
+
/** Re-exported so the router stage of `http:request` can classify without importing the module. */
|
|
76
|
+
export { isProtocol20260728Request, MCP_HEADERS, readHeader };
|
|
77
|
+
//# sourceMappingURL=handle.mcp-20260728.flow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle.mcp-20260728.flow.d.ts","sourceRoot":"","sources":["../../../src/transport/flows/handle.mcp-20260728.flow.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEL,QAAQ,EAER,eAAe,EACf,gBAAgB,EAKhB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAIL,yBAAyB,EACzB,WAAW,EACX,UAAU,EAKX,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,IAAI;;;;;CAKoB,CAAC;AAwBtC,eAAO,MAAM,WAAW;;;;;;;;gCAKtB,CAAC;AAEH,QAAA,MAAM,IAAI,EAAG,yBAAkC,CAAC;AAGhD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,yBAAyB,EAAE,cAAc,CACvC,qBAAqB,EACrB,OAAO,IAAI,EACX,OAAO,eAAe,EACtB,OAAO,gBAAgB,EACvB,OAAO,WAAW,CACnB,CAAC;KACH;CACF;AAuBD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAMrG;AA6ED,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,IAAI,CAAC;IACtE,IAAI,4BAAQ;IAEZ,OAAO,KAAK,GAAG,GAEd;IAGK,UAAU;IAWhB;;;;;;;OAOG;IAEG,QAAQ;IA6Cd;;;;;;;;OAQG;IACH;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,cAAc;IAQhB,MAAM;IAYZ;;;;OAIG;IAIG,kBAAkB;IAIxB;;;;;OAKG;IAIG,mBAAmB;IA4DnB,aAAa;IAwFb,OAAO;CAKd;AAED,mGAAmG;AACnG,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface HeaderParamValidation {
|
|
2
|
+
valid: boolean;
|
|
3
|
+
reason?: string;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Validate every `x-mcp-header` annotation in a tool's input schema.
|
|
7
|
+
*
|
|
8
|
+
* Checks the constraints the spec places on annotation NAMES (non-empty, token
|
|
9
|
+
* syntax, no control characters, case-insensitively unique) and on the annotated
|
|
10
|
+
* property TYPES (primitive; `number` is excluded because it cannot round-trip
|
|
11
|
+
* exactly, integers must stay in the safe range).
|
|
12
|
+
*/
|
|
13
|
+
export declare function validateHeaderParams(inputSchema: unknown): HeaderParamValidation;
|
|
14
|
+
/**
|
|
15
|
+
* Build the `Mcp-Param-*` headers for a tool call.
|
|
16
|
+
*
|
|
17
|
+
* A header is emitted only when the annotated argument is actually present —
|
|
18
|
+
* the spec pairs "value provided" with "client MUST include the header" and
|
|
19
|
+
* "value absent/null" with "client MUST omit it".
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildParamHeaders(inputSchema: unknown, args: unknown, encode: (value: string) => string): Record<string, string>;
|
|
22
|
+
//# sourceMappingURL=header-params.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-params.d.ts","sourceRoot":"","sources":["../../../../src/transport/mcp-20260728/client/header-params.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,OAAO,GAAG,qBAAqB,CAgChF;AAwCD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAChC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transport/mcp-20260728/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC"}
|