@toolgrain/mcp 0.0.0-stage → 0.1.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/LICENSE +21 -0
- package/README.md +85 -2
- package/dist/auth/abort.d.ts +3 -0
- package/dist/auth/abort.d.ts.map +1 -0
- package/dist/auth/abort.js +14 -0
- package/dist/auth/abort.js.map +1 -0
- package/dist/auth/audience.d.ts +3 -0
- package/dist/auth/audience.d.ts.map +1 -0
- package/dist/auth/audience.js +17 -0
- package/dist/auth/audience.js.map +1 -0
- package/dist/auth/authorization.d.ts +7 -0
- package/dist/auth/authorization.d.ts.map +1 -0
- package/dist/auth/authorization.js +58 -0
- package/dist/auth/authorization.js.map +1 -0
- package/dist/auth/context.d.ts +8 -0
- package/dist/auth/context.d.ts.map +1 -0
- package/dist/auth/context.js +37 -0
- package/dist/auth/context.js.map +1 -0
- package/dist/auth/errors.d.ts +14 -0
- package/dist/auth/errors.d.ts.map +1 -0
- package/dist/auth/errors.js +23 -0
- package/dist/auth/errors.js.map +1 -0
- package/dist/auth/types.d.ts +28 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +2 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/auth/url.d.ts +3 -0
- package/dist/auth/url.d.ts.map +1 -0
- package/dist/auth/url.js +18 -0
- package/dist/auth/url.js.map +1 -0
- package/dist/connection.d.ts +12 -0
- package/dist/connection.d.ts.map +1 -0
- package/dist/connection.js +151 -0
- package/dist/connection.js.map +1 -0
- package/dist/context/access.d.ts +7 -0
- package/dist/context/access.d.ts.map +1 -0
- package/dist/context/access.js +22 -0
- package/dist/context/access.js.map +1 -0
- package/dist/context/definition.d.ts +24 -0
- package/dist/context/definition.d.ts.map +1 -0
- package/dist/context/definition.js +57 -0
- package/dist/context/definition.js.map +1 -0
- package/dist/context/registry.d.ts +5 -0
- package/dist/context/registry.d.ts.map +1 -0
- package/dist/context/registry.js +15 -0
- package/dist/context/registry.js.map +1 -0
- package/dist/context/scope.d.ts +5 -0
- package/dist/context/scope.d.ts.map +1 -0
- package/dist/context/scope.js +56 -0
- package/dist/context/scope.js.map +1 -0
- package/dist/diagnostics.d.ts +10 -0
- package/dist/diagnostics.d.ts.map +1 -0
- package/dist/diagnostics.js +13 -0
- package/dist/diagnostics.js.map +1 -0
- package/dist/dispatcher.d.ts +19 -0
- package/dist/dispatcher.d.ts.map +1 -0
- package/dist/dispatcher.js +23 -0
- package/dist/dispatcher.js.map +1 -0
- package/dist/execute-request.d.ts +7 -0
- package/dist/execute-request.d.ts.map +1 -0
- package/dist/execute-request.js +20 -0
- package/dist/execute-request.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/legacy/connection.d.ts +26 -0
- package/dist/legacy/connection.d.ts.map +1 -0
- package/dist/legacy/connection.js +73 -0
- package/dist/legacy/connection.js.map +1 -0
- package/dist/legacy/dispatcher.d.ts +10 -0
- package/dist/legacy/dispatcher.d.ts.map +1 -0
- package/dist/legacy/dispatcher.js +41 -0
- package/dist/legacy/dispatcher.js.map +1 -0
- package/dist/legacy/handlers.d.ts +12 -0
- package/dist/legacy/handlers.d.ts.map +1 -0
- package/dist/legacy/handlers.js +44 -0
- package/dist/legacy/handlers.js.map +1 -0
- package/dist/legacy/messages.d.ts +31 -0
- package/dist/legacy/messages.d.ts.map +1 -0
- package/dist/legacy/messages.js +27 -0
- package/dist/legacy/messages.js.map +1 -0
- package/dist/legacy/responses.d.ts +5 -0
- package/dist/legacy/responses.d.ts.map +1 -0
- package/dist/legacy/responses.js +8 -0
- package/dist/legacy/responses.js.map +1 -0
- package/dist/legacy/results.d.ts +5 -0
- package/dist/legacy/results.d.ts.map +1 -0
- package/dist/legacy/results.js +19 -0
- package/dist/legacy/results.js.map +1 -0
- package/dist/modern/dispatcher.d.ts +7 -0
- package/dist/modern/dispatcher.d.ts.map +1 -0
- package/dist/modern/dispatcher.js +37 -0
- package/dist/modern/dispatcher.js.map +1 -0
- package/dist/modern/handlers.d.ts +9 -0
- package/dist/modern/handlers.d.ts.map +1 -0
- package/dist/modern/handlers.js +36 -0
- package/dist/modern/handlers.js.map +1 -0
- package/dist/modern/messages.d.ts +142 -0
- package/dist/modern/messages.d.ts.map +1 -0
- package/dist/modern/messages.js +14 -0
- package/dist/modern/messages.js.map +1 -0
- package/dist/modern/metadata.d.ts +45 -0
- package/dist/modern/metadata.d.ts.map +1 -0
- package/dist/modern/metadata.js +49 -0
- package/dist/modern/metadata.js.map +1 -0
- package/dist/modern/responses.d.ts +3 -0
- package/dist/modern/responses.d.ts.map +1 -0
- package/dist/modern/responses.js +15 -0
- package/dist/modern/responses.js.map +1 -0
- package/dist/modern/results.d.ts +4 -0
- package/dist/modern/results.d.ts.map +1 -0
- package/dist/modern/results.js +4 -0
- package/dist/modern/results.js.map +1 -0
- package/dist/pending-requests.d.ts +12 -0
- package/dist/pending-requests.d.ts.map +1 -0
- package/dist/pending-requests.js +30 -0
- package/dist/pending-requests.js.map +1 -0
- package/dist/protocol/decode.d.ts +21 -0
- package/dist/protocol/decode.d.ts.map +1 -0
- package/dist/protocol/decode.js +40 -0
- package/dist/protocol/decode.js.map +1 -0
- package/dist/protocol/icon.d.ts +11 -0
- package/dist/protocol/icon.d.ts.map +1 -0
- package/dist/protocol/icon.js +8 -0
- package/dist/protocol/icon.js.map +1 -0
- package/dist/protocol/messages.d.ts +19 -0
- package/dist/protocol/messages.d.ts.map +1 -0
- package/dist/protocol/messages.js +21 -0
- package/dist/protocol/messages.js.map +1 -0
- package/dist/protocol/responses.d.ts +9 -0
- package/dist/protocol/responses.d.ts.map +1 -0
- package/dist/protocol/responses.js +20 -0
- package/dist/protocol/responses.js.map +1 -0
- package/dist/protocol/version-metadata.d.ts +7 -0
- package/dist/protocol/version-metadata.d.ts.map +1 -0
- package/dist/protocol/version-metadata.js +21 -0
- package/dist/protocol/version-metadata.js.map +1 -0
- package/dist/server.d.ts +35 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +101 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/adapter.d.ts +12 -0
- package/dist/tools/adapter.d.ts.map +1 -0
- package/dist/tools/adapter.js +45 -0
- package/dist/tools/adapter.js.map +1 -0
- package/dist/tools/call.d.ts +8 -0
- package/dist/tools/call.d.ts.map +1 -0
- package/dist/tools/call.js +9 -0
- package/dist/tools/call.js.map +1 -0
- package/dist/tools/content.d.ts +181 -0
- package/dist/tools/content.d.ts.map +1 -0
- package/dist/tools/content.js +54 -0
- package/dist/tools/content.js.map +1 -0
- package/dist/tools/context.d.ts +36 -0
- package/dist/tools/context.d.ts.map +1 -0
- package/dist/tools/context.js +50 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/definition.d.ts +55 -0
- package/dist/tools/definition.d.ts.map +1 -0
- package/dist/tools/definition.js +44 -0
- package/dist/tools/definition.js.map +1 -0
- package/dist/tools/errors.d.ts +11 -0
- package/dist/tools/errors.d.ts.map +1 -0
- package/dist/tools/errors.js +19 -0
- package/dist/tools/errors.js.map +1 -0
- package/dist/tools/json-value.d.ts +15 -0
- package/dist/tools/json-value.d.ts.map +1 -0
- package/dist/tools/json-value.js +42 -0
- package/dist/tools/json-value.js.map +1 -0
- package/dist/tools/name.d.ts +6 -0
- package/dist/tools/name.d.ts.map +1 -0
- package/dist/tools/name.js +13 -0
- package/dist/tools/name.js.map +1 -0
- package/dist/tools/registry.d.ts +14 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +31 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/results.d.ts +14 -0
- package/dist/tools/results.d.ts.map +1 -0
- package/dist/tools/results.js +71 -0
- package/dist/tools/results.js.map +1 -0
- package/dist/tools/rich-result.d.ts +44 -0
- package/dist/tools/rich-result.d.ts.map +1 -0
- package/dist/tools/rich-result.js +24 -0
- package/dist/tools/rich-result.js.map +1 -0
- package/dist/tools/schema.d.ts +18 -0
- package/dist/tools/schema.d.ts.map +1 -0
- package/dist/tools/schema.js +70 -0
- package/dist/tools/schema.js.map +1 -0
- package/dist/transport-ownership.d.ts +4 -0
- package/dist/transport-ownership.d.ts.map +1 -0
- package/dist/transport-ownership.js +13 -0
- package/dist/transport-ownership.js.map +1 -0
- package/dist/transport.d.ts +24 -0
- package/dist/transport.d.ts.map +1 -0
- package/dist/transport.js +4 -0
- package/dist/transport.js.map +1 -0
- package/package.json +65 -4
- package/src/auth/abort.ts +14 -0
- package/src/auth/audience.ts +22 -0
- package/src/auth/authorization.ts +81 -0
- package/src/auth/context.ts +43 -0
- package/src/auth/errors.ts +35 -0
- package/src/auth/types.ts +34 -0
- package/src/auth/url.ts +22 -0
- package/src/connection.ts +207 -0
- package/src/context/access.ts +36 -0
- package/src/context/definition.ts +100 -0
- package/src/context/registry.ts +25 -0
- package/src/context/scope.ts +82 -0
- package/src/diagnostics.ts +25 -0
- package/src/dispatcher.ts +70 -0
- package/src/execute-request.ts +35 -0
- package/src/index.ts +41 -0
- package/src/legacy/connection.ts +101 -0
- package/src/legacy/dispatcher.ts +72 -0
- package/src/legacy/handlers.ts +76 -0
- package/src/legacy/messages.ts +27 -0
- package/src/legacy/responses.ts +20 -0
- package/src/legacy/results.ts +20 -0
- package/src/modern/dispatcher.ts +77 -0
- package/src/modern/handlers.ts +55 -0
- package/src/modern/messages.ts +14 -0
- package/src/modern/metadata.ts +49 -0
- package/src/modern/responses.ts +25 -0
- package/src/modern/results.ts +6 -0
- package/src/pending-requests.ts +30 -0
- package/src/protocol/decode.ts +69 -0
- package/src/protocol/icon.ts +8 -0
- package/src/protocol/messages.ts +29 -0
- package/src/protocol/responses.ts +27 -0
- package/src/protocol/version-metadata.ts +42 -0
- package/src/server.ts +164 -0
- package/src/tools/adapter.ts +76 -0
- package/src/tools/call.ts +18 -0
- package/src/tools/content.ts +57 -0
- package/src/tools/context.ts +119 -0
- package/src/tools/definition.ts +144 -0
- package/src/tools/errors.ts +21 -0
- package/src/tools/json-value.ts +81 -0
- package/src/tools/name.ts +13 -0
- package/src/tools/registry.ts +52 -0
- package/src/tools/results.ts +100 -0
- package/src/tools/rich-result.ts +70 -0
- package/src/tools/schema.ts +86 -0
- package/src/transport-ownership.ts +17 -0
- package/src/transport.ts +34 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { INVALID_PARAMS, LEGACY_PROTOCOL_VERSION, } from "@toolgrain/protocol";
|
|
2
|
+
import { ProtocolError } from "../protocol/responses.js";
|
|
3
|
+
import { callTool as executeToolCall } from "../tools/call.js";
|
|
4
|
+
import { callParams, commonParams, initializeParams, listParams, } from "./messages.js";
|
|
5
|
+
import { toolResult } from "./results.js";
|
|
6
|
+
/** Initialization can only negotiate the initialization-based revision. */
|
|
7
|
+
export function initialize(params, identity, instructions) {
|
|
8
|
+
if (!initializeParams.safeParse(params).success)
|
|
9
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid initialization parameters");
|
|
10
|
+
return {
|
|
11
|
+
protocolVersion: LEGACY_PROTOCOL_VERSION,
|
|
12
|
+
capabilities: { tools: {} },
|
|
13
|
+
serverInfo: { ...identity },
|
|
14
|
+
...(instructions === undefined ? {} : { instructions }),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export function ping(params) {
|
|
18
|
+
if (!commonParams.safeParse(params ?? {}).success)
|
|
19
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid ping parameters");
|
|
20
|
+
return {};
|
|
21
|
+
}
|
|
22
|
+
export function listTools(params, tools) {
|
|
23
|
+
const parsed = listParams.safeParse(params ?? {});
|
|
24
|
+
if (!parsed.success || parsed.data.cursor)
|
|
25
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid tool list parameters");
|
|
26
|
+
return {
|
|
27
|
+
tools: tools
|
|
28
|
+
.list()
|
|
29
|
+
.map(({ icons: _icons, outputSchema, ...definition }) => ({
|
|
30
|
+
...definition,
|
|
31
|
+
...(outputSchema?.type === "object"
|
|
32
|
+
? { outputSchema: { ...outputSchema, type: "object" } }
|
|
33
|
+
: {}),
|
|
34
|
+
})),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export async function callTool(params, tools, ctx) {
|
|
38
|
+
const parsed = callParams.safeParse(params);
|
|
39
|
+
if (!parsed.success)
|
|
40
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid tool call parameters");
|
|
41
|
+
const result = await executeToolCall(parsed.data, tools, ctx(parsed.data));
|
|
42
|
+
return result ? toolResult(result) : undefined;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=handlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/legacy/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EACL,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,2EAA2E;AAC3E,MAAM,UAAU,UAAU,CACxB,MAAe,EACf,QAAwB,EACxB,YAAqB;IAErB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO;QAC7C,MAAM,IAAI,aAAa,CACrB,cAAc,EACd,mCAAmC,CACpC,CAAC;IACJ,OAAO;QACL,eAAe,EAAE,uBAAuB;QACxC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QAC3B,UAAU,EAAE,EAAE,GAAG,QAAQ,EAAE;QAC3B,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,MAAe;IAClC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO;QAC/C,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC;IACrE,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,MAAe,EACf,KAAkB;IAElB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM;QACvC,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC1E,OAAO;QACL,KAAK,EAAE,KAAK;aACT,IAAI,EAAE;aACN,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;YACxD,GAAG,UAAU;YACb,GAAG,CAAC,YAAY,EAAE,IAAI,KAAK,QAAQ;gBACjC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE;gBAChE,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;KACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAe,EACf,KAAkB,EAClB,GAA6E;IAE7E,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,OAAO;QACjB,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const commonParams: z.ZodObject<{
|
|
3
|
+
_meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
4
|
+
}, z.core.$loose>;
|
|
5
|
+
export declare const initializeParams: z.ZodObject<{
|
|
6
|
+
_meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
7
|
+
protocolVersion: z.ZodString;
|
|
8
|
+
capabilities: z.ZodObject<{
|
|
9
|
+
experimental: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
10
|
+
roots: z.ZodOptional<z.ZodObject<{
|
|
11
|
+
listChanged: z.ZodOptional<z.ZodBoolean>;
|
|
12
|
+
}, z.core.$loose>>;
|
|
13
|
+
sampling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
14
|
+
elicitation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
15
|
+
}, z.core.$loose>;
|
|
16
|
+
clientInfo: z.ZodObject<{
|
|
17
|
+
name: z.ZodString;
|
|
18
|
+
version: z.ZodString;
|
|
19
|
+
title: z.ZodOptional<z.ZodString>;
|
|
20
|
+
}, z.core.$loose>;
|
|
21
|
+
}, z.core.$loose>;
|
|
22
|
+
export declare const listParams: z.ZodObject<{
|
|
23
|
+
_meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
24
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
25
|
+
}, z.core.$loose>;
|
|
26
|
+
export declare const callParams: z.ZodObject<{
|
|
27
|
+
_meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
28
|
+
name: z.ZodString;
|
|
29
|
+
arguments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
30
|
+
}, z.core.$loose>;
|
|
31
|
+
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/legacy/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,YAAY;;iBAEvB,CAAC;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;iBAa3B,CAAC;AACH,eAAO,MAAM,UAAU;;;iBAErB,CAAC;AACH,eAAO,MAAM,UAAU;;;;iBAGrB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { object } from "../protocol/messages.js";
|
|
3
|
+
export const commonParams = z.looseObject({
|
|
4
|
+
_meta: object.optional(),
|
|
5
|
+
});
|
|
6
|
+
export const initializeParams = commonParams.extend({
|
|
7
|
+
protocolVersion: z.string(),
|
|
8
|
+
capabilities: z.looseObject({
|
|
9
|
+
experimental: z.record(z.string(), object).optional(),
|
|
10
|
+
roots: z.looseObject({ listChanged: z.boolean().optional() }).optional(),
|
|
11
|
+
sampling: object.optional(),
|
|
12
|
+
elicitation: object.optional(),
|
|
13
|
+
}),
|
|
14
|
+
clientInfo: z.looseObject({
|
|
15
|
+
name: z.string(),
|
|
16
|
+
version: z.string(),
|
|
17
|
+
title: z.string().optional(),
|
|
18
|
+
}),
|
|
19
|
+
});
|
|
20
|
+
export const listParams = commonParams.extend({
|
|
21
|
+
cursor: z.string().optional(),
|
|
22
|
+
});
|
|
23
|
+
export const callParams = commonParams.extend({
|
|
24
|
+
name: z.string(),
|
|
25
|
+
arguments: object.optional(),
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/legacy/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;CACzB,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAC;IAClD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC;QAC1B,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE;QACrD,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;QACxE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;KAC/B,CAAC;IACF,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC;QACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;CACH,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type JSONRPCErrorResponse, type LegacyJSONRPCErrorResponse, type RequestId } from "@toolgrain/protocol";
|
|
2
|
+
import type { JSONRPCResponse, Result } from "@toolgrain/protocol/2025-06-18";
|
|
3
|
+
export declare function successResponse(id: RequestId, result: Result): JSONRPCResponse;
|
|
4
|
+
export declare function errorResponse(response: JSONRPCErrorResponse): LegacyJSONRPCErrorResponse;
|
|
5
|
+
//# sourceMappingURL=responses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../src/legacy/responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAE9E,wBAAgB,eAAe,CAC7B,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,MAAM,GACb,eAAe,CAEjB;AAED,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,oBAAoB,GAC7B,0BAA0B,CAE5B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { JSONRPC_VERSION, } from "@toolgrain/protocol";
|
|
2
|
+
export function successResponse(id, result) {
|
|
3
|
+
return { jsonrpc: JSONRPC_VERSION, id, result };
|
|
4
|
+
}
|
|
5
|
+
export function errorResponse(response) {
|
|
6
|
+
return { ...response, id: response.id ?? null };
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=responses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/legacy/responses.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAIhB,MAAM,qBAAqB,CAAC;AAG7B,MAAM,UAAU,eAAe,CAC7B,EAAa,EACb,MAAc;IAEd,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAA8B;IAE9B,OAAO,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { CallToolResult } from "@toolgrain/protocol/2025-06-18";
|
|
2
|
+
import type { ToolExecutionResult } from "../tools/results.js";
|
|
3
|
+
/** The initialization-based format permits structured content only at an object root. */
|
|
4
|
+
export declare function toolResult(result: ToolExecutionResult): CallToolResult;
|
|
5
|
+
//# sourceMappingURL=results.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../src/legacy/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,yFAAyF;AACzF,wBAAgB,UAAU,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAetE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** The initialization-based format permits structured content only at an object root. */
|
|
2
|
+
export function toolResult(result) {
|
|
3
|
+
const { structuredContent, ...content } = result;
|
|
4
|
+
return {
|
|
5
|
+
...content,
|
|
6
|
+
content: content.content.map((block) => {
|
|
7
|
+
if (block.type !== "resource_link")
|
|
8
|
+
return block;
|
|
9
|
+
const { icons: _icons, ...resource } = block;
|
|
10
|
+
return resource;
|
|
11
|
+
}),
|
|
12
|
+
...(structuredContent !== null &&
|
|
13
|
+
typeof structuredContent === "object" &&
|
|
14
|
+
!Array.isArray(structuredContent)
|
|
15
|
+
? { structuredContent: structuredContent }
|
|
16
|
+
: {}),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=results.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/legacy/results.ts"],"names":[],"mappings":"AAGA,yFAAyF;AACzF,MAAM,UAAU,UAAU,CAAC,MAA2B;IACpD,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC;IACjD,OAAO;QACL,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe;gBAAE,OAAO,KAAK,CAAC;YACjD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC;YAC7C,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;QACF,GAAG,CAAC,iBAAiB,KAAK,IAAI;YAC9B,OAAO,iBAAiB,KAAK,QAAQ;YACrC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAC/B,CAAC,CAAC,EAAE,iBAAiB,EAAE,iBAA4C,EAAE;YACrE,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Implementation, type JSONRPCResultResponse } from "@toolgrain/protocol";
|
|
2
|
+
import type { ContextRegistry } from "../context/registry.js";
|
|
3
|
+
import type { RequestScope } from "../dispatcher.js";
|
|
4
|
+
import type { Request } from "../protocol/messages.js";
|
|
5
|
+
import type { ToolAdapter } from "../tools/adapter.js";
|
|
6
|
+
export declare function createModernDispatcher(tools: ToolAdapter, identity: Implementation, instructions?: string, providers?: ContextRegistry): (request: Request, scope: RequestScope) => Promise<JSONRPCResultResponse | undefined>;
|
|
7
|
+
//# sourceMappingURL=dispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/modern/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,qBAAqB,EAM3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAMvD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,eAAe,aAGhB,OAAO,SACT,YAAY,KAClB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CA8C9C"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { INVALID_PARAMS, METHOD_NOT_FOUND, PROTOCOL_VERSION, SUPPORTED_PROTOCOL_VERSIONS, UNSUPPORTED_PROTOCOL_VERSION, } from "@toolgrain/protocol";
|
|
2
|
+
import { ProtocolError } from "../protocol/responses.js";
|
|
3
|
+
import { createToolContext, toolClient } from "../tools/context.js";
|
|
4
|
+
import { callTool, discover, listTools } from "./handlers.js";
|
|
5
|
+
import { metadata } from "./metadata.js";
|
|
6
|
+
import { successResponse } from "./responses.js";
|
|
7
|
+
export function createModernDispatcher(tools, identity, instructions, providers) {
|
|
8
|
+
return async (request, scope) => {
|
|
9
|
+
const parsed = metadata.safeParse(request.params?._meta);
|
|
10
|
+
if (!parsed.success)
|
|
11
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid request metadata");
|
|
12
|
+
const revision = parsed.data["io.modelcontextprotocol/protocolVersion"];
|
|
13
|
+
if (revision !== PROTOCOL_VERSION)
|
|
14
|
+
throw new ProtocolError(UNSUPPORTED_PROTOCOL_VERSION, "Unsupported protocol version", { supported: [...SUPPORTED_PROTOCOL_VERSIONS], requested: revision });
|
|
15
|
+
let result;
|
|
16
|
+
switch (request.method) {
|
|
17
|
+
case "server/discover":
|
|
18
|
+
result = discover(request.params, instructions);
|
|
19
|
+
break;
|
|
20
|
+
case "tools/list":
|
|
21
|
+
result = listTools(request.params, tools);
|
|
22
|
+
break;
|
|
23
|
+
case "tools/call":
|
|
24
|
+
result = await callTool(request.params, tools, (params) => createToolContext(scope.signal, {
|
|
25
|
+
id: request.id,
|
|
26
|
+
protocolVersion: PROTOCOL_VERSION,
|
|
27
|
+
client: toolClient(parsed.data["io.modelcontextprotocol/clientInfo"], parsed.data["io.modelcontextprotocol/clientCapabilities"]),
|
|
28
|
+
meta: params._meta ?? {},
|
|
29
|
+
}, scope.auth, providers));
|
|
30
|
+
break;
|
|
31
|
+
default:
|
|
32
|
+
throw new ProtocolError(METHOD_NOT_FOUND, "Method not found");
|
|
33
|
+
}
|
|
34
|
+
return result ? successResponse(request.id, result, identity) : undefined;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=dispatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/modern/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,EAEd,gBAAgB,EAChB,gBAAgB,EAEhB,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,UAAU,sBAAsB,CACpC,KAAkB,EAClB,QAAwB,EACxB,YAAqB,EACrB,SAA2B;IAE3B,OAAO,KAAK,EACV,OAAgB,EAChB,KAAmB,EACyB,EAAE;QAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACxE,IAAI,QAAQ,KAAK,gBAAgB;YAC/B,MAAM,IAAI,aAAa,CACrB,4BAA4B,EAC5B,8BAA8B,EAC9B,EAAE,SAAS,EAAE,CAAC,GAAG,2BAA2B,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CACrE,CAAC;QACJ,IAAI,MAA0B,CAAC;QAC/B,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;YACvB,KAAK,iBAAiB;gBACpB,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAChD,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1C,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CACxD,iBAAiB,CACf,KAAK,CAAC,MAAM,EACZ;oBACE,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,eAAe,EAAE,gBAAgB;oBACjC,MAAM,EAAE,UAAU,CAChB,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAEnC,EACb,MAAM,CAAC,IAAI,CACT,4CAA4C,CACvB,CACxB;oBACD,IAAI,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;iBACzB,EACD,KAAK,CAAC,IAAI,EACV,SAAS,CACV,CACF,CAAC;gBACF,MAAM;YACR;gBACE,MAAM,IAAI,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type DiscoverResult, type ListToolsResult } from "@toolgrain/protocol";
|
|
2
|
+
import type { ToolAdapter } from "../tools/adapter.js";
|
|
3
|
+
import type { ToolContext } from "../tools/context.js";
|
|
4
|
+
export declare function discover(params: unknown, instructions?: string): DiscoverResult;
|
|
5
|
+
export declare function listTools(params: unknown, tools: ToolAdapter): ListToolsResult;
|
|
6
|
+
export declare function callTool(params: unknown, tools: ToolAdapter, ctx: (params: {
|
|
7
|
+
_meta?: Record<string, unknown> | undefined;
|
|
8
|
+
}) => ToolContext): Promise<import("@toolgrain/protocol").CallToolResult | undefined>;
|
|
9
|
+
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/modern/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,eAAe,EAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIvD,wBAAgB,QAAQ,CACtB,MAAM,EAAE,OAAO,EACf,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CAWhB;AAED,wBAAgB,SAAS,CACvB,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,WAAW,GACjB,eAAe,CAUjB;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,WAAW,EAClB,GAAG,EAAE,CAAC,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;CAAE,KAAK,WAAW,qEAO9E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { INVALID_PARAMS, SUPPORTED_PROTOCOL_VERSIONS, } from "@toolgrain/protocol";
|
|
2
|
+
import { ProtocolError } from "../protocol/responses.js";
|
|
3
|
+
import { callTool as executeToolCall } from "../tools/call.js";
|
|
4
|
+
import { callParams, commonParams, listParams } from "./messages.js";
|
|
5
|
+
import { toolResult } from "./results.js";
|
|
6
|
+
export function discover(params, instructions) {
|
|
7
|
+
if (!commonParams.safeParse(params).success)
|
|
8
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid discovery parameters");
|
|
9
|
+
return {
|
|
10
|
+
resultType: "complete",
|
|
11
|
+
ttlMs: 0,
|
|
12
|
+
cacheScope: "private",
|
|
13
|
+
supportedVersions: [...SUPPORTED_PROTOCOL_VERSIONS],
|
|
14
|
+
capabilities: { tools: {} },
|
|
15
|
+
...(instructions === undefined ? {} : { instructions }),
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export function listTools(params, tools) {
|
|
19
|
+
const parsed = listParams.safeParse(params);
|
|
20
|
+
if (!parsed.success || parsed.data.cursor)
|
|
21
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid tool list parameters");
|
|
22
|
+
return {
|
|
23
|
+
resultType: "complete",
|
|
24
|
+
ttlMs: 0,
|
|
25
|
+
cacheScope: "private",
|
|
26
|
+
tools: tools.list(),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export async function callTool(params, tools, ctx) {
|
|
30
|
+
const parsed = callParams.safeParse(params);
|
|
31
|
+
if (!parsed.success)
|
|
32
|
+
throw new ProtocolError(INVALID_PARAMS, "Invalid tool call parameters");
|
|
33
|
+
const result = await executeToolCall(parsed.data, tools, ctx(parsed.data));
|
|
34
|
+
return result ? toolResult(result) : undefined;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=handlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/modern/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAEd,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,UAAU,QAAQ,CACtB,MAAe,EACf,YAAqB;IAErB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO;QACzC,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC1E,OAAO;QACL,UAAU,EAAE,UAAU;QACtB,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,SAAS;QACrB,iBAAiB,EAAE,CAAC,GAAG,2BAA2B,CAAC;QACnD,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QAC3B,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,MAAe,EACf,KAAkB;IAElB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM;QACvC,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC1E,OAAO;QACL,UAAU,EAAE,UAAU;QACtB,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAe,EACf,KAAkB,EAClB,GAA6E;IAE7E,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,OAAO;QACjB,MAAM,IAAI,aAAa,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const commonParams: z.ZodObject<{
|
|
3
|
+
_meta: z.ZodObject<{
|
|
4
|
+
"io.modelcontextprotocol/protocolVersion": z.ZodString;
|
|
5
|
+
"io.modelcontextprotocol/clientCapabilities": z.ZodObject<{
|
|
6
|
+
experimental: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
7
|
+
roots: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
8
|
+
sampling: z.ZodOptional<z.ZodObject<{
|
|
9
|
+
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
10
|
+
tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
11
|
+
}, z.core.$loose>>;
|
|
12
|
+
elicitation: z.ZodOptional<z.ZodObject<{
|
|
13
|
+
form: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
14
|
+
url: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
15
|
+
}, z.core.$loose>>;
|
|
16
|
+
extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
17
|
+
}, z.core.$loose>;
|
|
18
|
+
"io.modelcontextprotocol/clientInfo": z.ZodOptional<z.ZodObject<{
|
|
19
|
+
name: z.ZodString;
|
|
20
|
+
version: z.ZodString;
|
|
21
|
+
title: z.ZodOptional<z.ZodString>;
|
|
22
|
+
description: z.ZodOptional<z.ZodString>;
|
|
23
|
+
websiteUrl: z.ZodOptional<z.ZodString>;
|
|
24
|
+
icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
25
|
+
src: z.ZodString;
|
|
26
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
|
27
|
+
sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
28
|
+
theme: z.ZodOptional<z.ZodEnum<{
|
|
29
|
+
dark: "dark";
|
|
30
|
+
light: "light";
|
|
31
|
+
}>>;
|
|
32
|
+
}, z.core.$loose>>>;
|
|
33
|
+
}, z.core.$loose>>;
|
|
34
|
+
"io.modelcontextprotocol/logLevel": z.ZodOptional<z.ZodEnum<{
|
|
35
|
+
alert: "alert";
|
|
36
|
+
critical: "critical";
|
|
37
|
+
debug: "debug";
|
|
38
|
+
emergency: "emergency";
|
|
39
|
+
error: "error";
|
|
40
|
+
info: "info";
|
|
41
|
+
notice: "notice";
|
|
42
|
+
warning: "warning";
|
|
43
|
+
}>>;
|
|
44
|
+
progressToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
45
|
+
}, z.core.$loose>;
|
|
46
|
+
}, z.core.$loose>;
|
|
47
|
+
export declare const listParams: z.ZodObject<{
|
|
48
|
+
_meta: z.ZodObject<{
|
|
49
|
+
"io.modelcontextprotocol/protocolVersion": z.ZodString;
|
|
50
|
+
"io.modelcontextprotocol/clientCapabilities": z.ZodObject<{
|
|
51
|
+
experimental: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
52
|
+
roots: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
53
|
+
sampling: z.ZodOptional<z.ZodObject<{
|
|
54
|
+
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
55
|
+
tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
56
|
+
}, z.core.$loose>>;
|
|
57
|
+
elicitation: z.ZodOptional<z.ZodObject<{
|
|
58
|
+
form: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
59
|
+
url: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
60
|
+
}, z.core.$loose>>;
|
|
61
|
+
extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
62
|
+
}, z.core.$loose>;
|
|
63
|
+
"io.modelcontextprotocol/clientInfo": z.ZodOptional<z.ZodObject<{
|
|
64
|
+
name: z.ZodString;
|
|
65
|
+
version: z.ZodString;
|
|
66
|
+
title: z.ZodOptional<z.ZodString>;
|
|
67
|
+
description: z.ZodOptional<z.ZodString>;
|
|
68
|
+
websiteUrl: z.ZodOptional<z.ZodString>;
|
|
69
|
+
icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
70
|
+
src: z.ZodString;
|
|
71
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
|
72
|
+
sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
73
|
+
theme: z.ZodOptional<z.ZodEnum<{
|
|
74
|
+
dark: "dark";
|
|
75
|
+
light: "light";
|
|
76
|
+
}>>;
|
|
77
|
+
}, z.core.$loose>>>;
|
|
78
|
+
}, z.core.$loose>>;
|
|
79
|
+
"io.modelcontextprotocol/logLevel": z.ZodOptional<z.ZodEnum<{
|
|
80
|
+
alert: "alert";
|
|
81
|
+
critical: "critical";
|
|
82
|
+
debug: "debug";
|
|
83
|
+
emergency: "emergency";
|
|
84
|
+
error: "error";
|
|
85
|
+
info: "info";
|
|
86
|
+
notice: "notice";
|
|
87
|
+
warning: "warning";
|
|
88
|
+
}>>;
|
|
89
|
+
progressToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
90
|
+
}, z.core.$loose>;
|
|
91
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
92
|
+
}, z.core.$loose>;
|
|
93
|
+
export declare const callParams: z.ZodObject<{
|
|
94
|
+
_meta: z.ZodObject<{
|
|
95
|
+
"io.modelcontextprotocol/protocolVersion": z.ZodString;
|
|
96
|
+
"io.modelcontextprotocol/clientCapabilities": z.ZodObject<{
|
|
97
|
+
experimental: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
98
|
+
roots: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
99
|
+
sampling: z.ZodOptional<z.ZodObject<{
|
|
100
|
+
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
101
|
+
tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
102
|
+
}, z.core.$loose>>;
|
|
103
|
+
elicitation: z.ZodOptional<z.ZodObject<{
|
|
104
|
+
form: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
105
|
+
url: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
106
|
+
}, z.core.$loose>>;
|
|
107
|
+
extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
108
|
+
}, z.core.$loose>;
|
|
109
|
+
"io.modelcontextprotocol/clientInfo": z.ZodOptional<z.ZodObject<{
|
|
110
|
+
name: z.ZodString;
|
|
111
|
+
version: z.ZodString;
|
|
112
|
+
title: z.ZodOptional<z.ZodString>;
|
|
113
|
+
description: z.ZodOptional<z.ZodString>;
|
|
114
|
+
websiteUrl: z.ZodOptional<z.ZodString>;
|
|
115
|
+
icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
116
|
+
src: z.ZodString;
|
|
117
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
|
118
|
+
sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
119
|
+
theme: z.ZodOptional<z.ZodEnum<{
|
|
120
|
+
dark: "dark";
|
|
121
|
+
light: "light";
|
|
122
|
+
}>>;
|
|
123
|
+
}, z.core.$loose>>>;
|
|
124
|
+
}, z.core.$loose>>;
|
|
125
|
+
"io.modelcontextprotocol/logLevel": z.ZodOptional<z.ZodEnum<{
|
|
126
|
+
alert: "alert";
|
|
127
|
+
critical: "critical";
|
|
128
|
+
debug: "debug";
|
|
129
|
+
emergency: "emergency";
|
|
130
|
+
error: "error";
|
|
131
|
+
info: "info";
|
|
132
|
+
notice: "notice";
|
|
133
|
+
warning: "warning";
|
|
134
|
+
}>>;
|
|
135
|
+
progressToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
136
|
+
}, z.core.$loose>;
|
|
137
|
+
name: z.ZodString;
|
|
138
|
+
arguments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
139
|
+
requestState: z.ZodOptional<z.ZodString>;
|
|
140
|
+
inputResponses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
141
|
+
}, z.core.$loose>;
|
|
142
|
+
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/modern/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAqC,CAAC;AAC/D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAErB,CAAC;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKrB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { object } from "../protocol/messages.js";
|
|
3
|
+
import { metadata } from "./metadata.js";
|
|
4
|
+
export const commonParams = z.looseObject({ _meta: metadata });
|
|
5
|
+
export const listParams = commonParams.extend({
|
|
6
|
+
cursor: z.string().optional(),
|
|
7
|
+
});
|
|
8
|
+
export const callParams = commonParams.extend({
|
|
9
|
+
name: z.string(),
|
|
10
|
+
arguments: object.optional(),
|
|
11
|
+
requestState: z.string().optional(),
|
|
12
|
+
inputResponses: object.optional(),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/modern/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE;IAC5B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const metadata: z.ZodObject<{
|
|
3
|
+
"io.modelcontextprotocol/protocolVersion": z.ZodString;
|
|
4
|
+
"io.modelcontextprotocol/clientCapabilities": z.ZodObject<{
|
|
5
|
+
experimental: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
6
|
+
roots: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
7
|
+
sampling: z.ZodOptional<z.ZodObject<{
|
|
8
|
+
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
9
|
+
tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
10
|
+
}, z.core.$loose>>;
|
|
11
|
+
elicitation: z.ZodOptional<z.ZodObject<{
|
|
12
|
+
form: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
13
|
+
url: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
14
|
+
}, z.core.$loose>>;
|
|
15
|
+
extensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
|
|
16
|
+
}, z.core.$loose>;
|
|
17
|
+
"io.modelcontextprotocol/clientInfo": z.ZodOptional<z.ZodObject<{
|
|
18
|
+
name: z.ZodString;
|
|
19
|
+
version: z.ZodString;
|
|
20
|
+
title: z.ZodOptional<z.ZodString>;
|
|
21
|
+
description: z.ZodOptional<z.ZodString>;
|
|
22
|
+
websiteUrl: z.ZodOptional<z.ZodString>;
|
|
23
|
+
icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
24
|
+
src: z.ZodString;
|
|
25
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
|
26
|
+
sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
|
+
theme: z.ZodOptional<z.ZodEnum<{
|
|
28
|
+
dark: "dark";
|
|
29
|
+
light: "light";
|
|
30
|
+
}>>;
|
|
31
|
+
}, z.core.$loose>>>;
|
|
32
|
+
}, z.core.$loose>>;
|
|
33
|
+
"io.modelcontextprotocol/logLevel": z.ZodOptional<z.ZodEnum<{
|
|
34
|
+
alert: "alert";
|
|
35
|
+
critical: "critical";
|
|
36
|
+
debug: "debug";
|
|
37
|
+
emergency: "emergency";
|
|
38
|
+
error: "error";
|
|
39
|
+
info: "info";
|
|
40
|
+
notice: "notice";
|
|
41
|
+
warning: "warning";
|
|
42
|
+
}>>;
|
|
43
|
+
progressToken: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
44
|
+
}, z.core.$loose>;
|
|
45
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/modern/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+BxB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiBnB,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { icon } from "../protocol/icon.js";
|
|
3
|
+
import { object } from "../protocol/messages.js";
|
|
4
|
+
const capabilityObject = z.record(z.string(), z.json());
|
|
5
|
+
const requestId = z.union([z.string(), z.number().finite()]);
|
|
6
|
+
const capabilities = z.looseObject({
|
|
7
|
+
experimental: z.record(z.string(), capabilityObject).optional(),
|
|
8
|
+
roots: object.optional(),
|
|
9
|
+
sampling: z
|
|
10
|
+
.looseObject({
|
|
11
|
+
context: capabilityObject.optional(),
|
|
12
|
+
tools: capabilityObject.optional(),
|
|
13
|
+
})
|
|
14
|
+
.optional(),
|
|
15
|
+
elicitation: z
|
|
16
|
+
.looseObject({
|
|
17
|
+
form: capabilityObject.optional(),
|
|
18
|
+
url: capabilityObject.optional(),
|
|
19
|
+
})
|
|
20
|
+
.optional(),
|
|
21
|
+
extensions: z.record(z.string(), capabilityObject).optional(),
|
|
22
|
+
});
|
|
23
|
+
const implementation = z.looseObject({
|
|
24
|
+
name: z.string(),
|
|
25
|
+
version: z.string(),
|
|
26
|
+
title: z.string().optional(),
|
|
27
|
+
description: z.string().optional(),
|
|
28
|
+
websiteUrl: z.string().optional(),
|
|
29
|
+
icons: z.array(icon).optional(),
|
|
30
|
+
});
|
|
31
|
+
export const metadata = z.looseObject({
|
|
32
|
+
"io.modelcontextprotocol/protocolVersion": z.string(),
|
|
33
|
+
"io.modelcontextprotocol/clientCapabilities": capabilities,
|
|
34
|
+
"io.modelcontextprotocol/clientInfo": implementation.optional(),
|
|
35
|
+
"io.modelcontextprotocol/logLevel": z
|
|
36
|
+
.enum([
|
|
37
|
+
"debug",
|
|
38
|
+
"info",
|
|
39
|
+
"notice",
|
|
40
|
+
"warning",
|
|
41
|
+
"error",
|
|
42
|
+
"critical",
|
|
43
|
+
"alert",
|
|
44
|
+
"emergency",
|
|
45
|
+
])
|
|
46
|
+
.optional(),
|
|
47
|
+
progressToken: requestId.optional(),
|
|
48
|
+
});
|
|
49
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/modern/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACxD,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC7D,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IAC/D,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;IACxB,QAAQ,EAAE,CAAC;SACR,WAAW,CAAC;QACX,OAAO,EAAE,gBAAgB,CAAC,QAAQ,EAAE;QACpC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,EAAE;KACnC,CAAC;SACD,QAAQ,EAAE;IACb,WAAW,EAAE,CAAC;SACX,WAAW,CAAC;QACX,IAAI,EAAE,gBAAgB,CAAC,QAAQ,EAAE;QACjC,GAAG,EAAE,gBAAgB,CAAC,QAAQ,EAAE;KACjC,CAAC;SACD,QAAQ,EAAE;IACb,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,QAAQ,EAAE;CAC9D,CAAC,CAAC;AACH,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC;IACpC,yCAAyC,EAAE,CAAC,CAAC,MAAM,EAAE;IACrD,4CAA4C,EAAE,YAAY;IAC1D,oCAAoC,EAAE,cAAc,CAAC,QAAQ,EAAE;IAC/D,kCAAkC,EAAE,CAAC;SAClC,IAAI,CAAC;QACJ,OAAO;QACP,MAAM;QACN,QAAQ;QACR,SAAS;QACT,OAAO;QACP,UAAU;QACV,OAAO;QACP,WAAW;KACZ,CAAC;SACD,QAAQ,EAAE;IACb,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../src/modern/responses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,SAAS,EACT,MAAM,EACP,MAAM,qBAAqB,CAAC;AAG7B,wBAAgB,eAAe,CAC7B,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,cAAc,GACvB,qBAAqB,CAYvB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { JSONRPC_VERSION } from "@toolgrain/protocol";
|
|
2
|
+
export function successResponse(id, result, identity) {
|
|
3
|
+
return {
|
|
4
|
+
jsonrpc: JSONRPC_VERSION,
|
|
5
|
+
id,
|
|
6
|
+
result: {
|
|
7
|
+
...result,
|
|
8
|
+
_meta: {
|
|
9
|
+
...result._meta,
|
|
10
|
+
"io.modelcontextprotocol/serverInfo": { ...identity },
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=responses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/modern/responses.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,UAAU,eAAe,CAC7B,EAAa,EACb,MAAc,EACd,QAAwB;IAExB,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,EAAE;QACF,MAAM,EAAE;YACN,GAAG,MAAM;YACT,KAAK,EAAE;gBACL,GAAG,MAAM,CAAC,KAAK;gBACf,oCAAoC,EAAE,EAAE,GAAG,QAAQ,EAAE;aACtD;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../src/modern/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,wBAAgB,UAAU,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAEtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/modern/results.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CAAC,MAA2B;IACpD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,EAAE,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { RequestId } from "@toolgrain/protocol";
|
|
2
|
+
/** Owns duplicate detection and cancellation signals for in-flight requests. */
|
|
3
|
+
export declare function createPendingRequests(isOpen: () => boolean): {
|
|
4
|
+
begin(id: RequestId): {
|
|
5
|
+
signal: AbortSignal;
|
|
6
|
+
isActive: () => boolean;
|
|
7
|
+
finish: () => void;
|
|
8
|
+
} | undefined;
|
|
9
|
+
cancel(id: RequestId): void;
|
|
10
|
+
clear(): void;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=pending-requests.d.ts.map
|