stitchkit 0.122.0 → 0.122.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/CHANGELOG.md +34 -0
- package/dist/agent-runtime/deferred-tool-search.d.ts.map +1 -1
- package/dist/agent-runtime/deferred-tool-types.d.ts.map +1 -1
- package/dist/entrypoints/agent-runtime.js +4 -3
- package/dist/entrypoints/cli.js +2 -1
- package/dist/entrypoints/tools/connections.js +7 -1
- package/dist/entrypoints/tools/mcp.js +2 -1
- package/dist/entrypoints/tools/toolkit.js +3 -2
- package/dist/index-332d0m9g.js +37 -0
- package/dist/{index-v8yqk4w7.js → index-aswegq1r.js} +3 -5
- package/dist/{index-knmnj11j.js → index-y6ye582c.js} +7 -5
- package/dist/tools/connections/mcp.d.ts.map +1 -1
- package/dist/tools/mcp/catalog.d.ts.map +1 -1
- package/dist/tools/mcp/mount.d.ts.map +1 -1
- package/dist/tools/mcp/register.d.ts +1 -2
- package/dist/tools/mcp/register.d.ts.map +1 -1
- package/dist/tools/mcp/runtime-tools.d.ts.map +1 -1
- package/dist/tools/read-operation.d.ts +21 -0
- package/dist/tools/read-operation.d.ts.map +1 -0
- package/llms/agent-runtime.2.txt +632 -745
- package/llms/agent-runtime.3.txt +733 -492
- package/llms/agent-runtime.4.txt +521 -88
- package/llms/agent-runtime.5.txt +114 -0
- package/llms/agent-runtime.txt +4 -655
- package/llms/cli.txt +12 -3
- package/llms/tools.2.txt +109 -0
- package/llms/tools.txt +30 -109
- package/llms-full.txt +47 -4
- package/llms.txt +3 -3
- package/package.json +1 -1
- package/dist/tools/cli/repeatable-read.d.ts +0 -9
- package/dist/tools/cli/repeatable-read.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -15,6 +15,40 @@ additive**; the first breaking change landed in 0.10.0. Grep the file for
|
|
|
15
15
|
|
|
16
16
|
## [Unreleased]
|
|
17
17
|
|
|
18
|
+
## [0.122.2] - 2026-11-10
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- `stitchkit/agent-runtime` — a deferred tool search carrying `reason: 'inactive_call'` reads its
|
|
23
|
+
query as a tool name only when it is the exact name of a tool on the surface; any other query
|
|
24
|
+
is ranked like an unmarked one, through `search.select` when configured. The whole query was
|
|
25
|
+
taken as a name whenever the field was present, and a model that set the field on a query in
|
|
26
|
+
words received `NO_MATCH` from a catalog holding the tool. The input schema tells the model the
|
|
27
|
+
field is the runtime's to write; that sentence adds about 50 bytes to the search tool's schema,
|
|
28
|
+
which counts toward `activation.maxSchemaBytes`.
|
|
29
|
+
**Affects:** `stitchkit/agent-runtime` behaviour
|
|
30
|
+
|
|
31
|
+
## [0.122.1] - 2026-11-10
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
|
|
35
|
+
- `stitchkit/tools/mcp` — the MCP server publishes `readOnlyHint: true` for a `GET` tool that
|
|
36
|
+
declared no `readOnlyHint`; it published only declared annotations, so a read was
|
|
37
|
+
indistinguishable from a write to every MCP client. A declared `readOnlyHint` is published as
|
|
38
|
+
written, and a `GET` declaring `destructiveHint: true` gets none. The catalog digest hashes the
|
|
39
|
+
published annotations and moves once on upgrade. A `GET` endpoint with an effect must declare
|
|
40
|
+
`readOnlyHint: false`: a host may run a read-only tool without asking. → ADR 0287
|
|
41
|
+
**Affects:** `stitchkit/tools/mcp` behaviour
|
|
42
|
+
- `stitchkit/tools/connections` — `defineMcpClientConnection` carries the annotations a server
|
|
43
|
+
published onto the tools it mounts; it dropped them, so a CLI built over an MCP surface printed
|
|
44
|
+
a read's complete result on a refused view (`--table` with an unknown column) while the same
|
|
45
|
+
command over the contract printed nothing. A hint of the wrong type is dropped and the tool
|
|
46
|
+
stays. The mounted tool is as read-only as its server says it is. → ADR 0287
|
|
47
|
+
**Affects:** `stitchkit/tools/connections` behaviour
|
|
48
|
+
- `stitchkit/cli` — a `GET` command declaring `destructiveHint: true` without `readOnlyHint`
|
|
49
|
+
keeps its result on stdout after a refused view; it was treated as a read. → ADR 0287
|
|
50
|
+
**Affects:** `stitchkit/cli` behaviour
|
|
51
|
+
|
|
18
52
|
## [0.122.0] - 2026-11-10
|
|
19
53
|
|
|
20
54
|
### ⚠️ Breaking changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferred-tool-search.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/deferred-tool-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAEL,KAAK,+BAA+B,EACpC,KAAK,qBAAqB,EAC3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,KAAK,6BAA6B,EAGlC,8BAA8B,EAC9B,kCAAkC,EAClC,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD,KAAK,gBAAgB,GAAG,+BAA+B,CACrD,OAAO,kCAAkC,EACzC,OAAO,8BAA8B,EACrC,SAAS,EACT,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,8BAA8B,CAAC,CAAC,CACvE,CAAC;AAiBF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAmBxE;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAC9C,MAAM,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAC9C,UAAU,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAC3C,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,
|
|
1
|
+
{"version":3,"file":"deferred-tool-search.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/deferred-tool-search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAEL,KAAK,+BAA+B,EACpC,KAAK,qBAAqB,EAC3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,KAAK,6BAA6B,EAGlC,8BAA8B,EAC9B,kCAAkC,EAClC,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD,KAAK,gBAAgB,GAAG,+BAA+B,CACrD,OAAO,kCAAkC,EACzC,OAAO,8BAA8B,EACrC,SAAS,EACT,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,8BAA8B,CAAC,CAAC,CACvE,CAAC;AAiBF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAmBxE;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAC9C,MAAM,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAC9C,UAAU,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAC3C,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,CAmHlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferred-tool-types.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/deferred-tool-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,KAAK,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEjF,eAAO,MAAM,kCAAkC;;;;;
|
|
1
|
+
{"version":3,"file":"deferred-tool-types.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/deferred-tool-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1028,7 +1028,7 @@ function structuredCompaction(config) {
|
|
|
1028
1028
|
import { z as z3 } from "zod";
|
|
1029
1029
|
var DeferredAgentToolSearchInputSchema = z3.object({
|
|
1030
1030
|
query: z3.string().min(1).describe("An exact tool name, or words describing the tool. Matched as one phrase first, then word by word."),
|
|
1031
|
-
reason: z3.enum(["inactive_call"]).optional()
|
|
1031
|
+
reason: z3.enum(["inactive_call"]).optional().describe("Written by the runtime. Leave it out.")
|
|
1032
1032
|
});
|
|
1033
1033
|
var DeferredAgentToolMatchSchema = z3.object({
|
|
1034
1034
|
name: z3.string(),
|
|
@@ -1174,7 +1174,8 @@ function createDeferredSearchTool(config, runContext, surface) {
|
|
|
1174
1174
|
transports: ["AGENT"],
|
|
1175
1175
|
handler: async ({ input }) => {
|
|
1176
1176
|
const queryOversized = utf8Bytes(input.query) > config.search.maxQueryBytes;
|
|
1177
|
-
const
|
|
1177
|
+
const inactiveCall = input.reason === "inactive_call" && surface.byName.has(input.query);
|
|
1178
|
+
const proposed = queryOversized ? [] : inactiveCall ? [input.query] : config.search.select ? await config.search.select({
|
|
1178
1179
|
query: input.query,
|
|
1179
1180
|
manifest: surface.manifest,
|
|
1180
1181
|
context: runContext.context,
|
|
@@ -1208,7 +1209,7 @@ function createDeferredSearchTool(config, runContext, surface) {
|
|
|
1208
1209
|
}
|
|
1209
1210
|
matches.push({ name, description: entry.description });
|
|
1210
1211
|
}
|
|
1211
|
-
const status = refused ? "SELECTION_REFUSED" :
|
|
1212
|
+
const status = refused ? "SELECTION_REFUSED" : inactiveCall && admitted.length > 0 ? "SEARCH_REQUIRED" : admitted.length > 0 ? "SELECTED" : "NO_MATCH";
|
|
1212
1213
|
let receipt = {
|
|
1213
1214
|
schemaVersion: 1,
|
|
1214
1215
|
kind: "stitchkit.deferred-tool-selection",
|
package/dist/entrypoints/cli.js
CHANGED
|
@@ -16,13 +16,14 @@ import {
|
|
|
16
16
|
renderCliView2,
|
|
17
17
|
pollUntilDone2,
|
|
18
18
|
createCli2
|
|
19
|
-
} from "../index-
|
|
19
|
+
} from "../index-aswegq1r.js";
|
|
20
20
|
import"../index-k42ckyzx.js";
|
|
21
21
|
import"../index-ct75c3at.js";
|
|
22
22
|
import"../index-x4p3kw1p.js";
|
|
23
23
|
import"../index-s3yxw6kt.js";
|
|
24
24
|
import"../index-69t14s4a.js";
|
|
25
25
|
import"../index-ycqhyars.js";
|
|
26
|
+
import"../index-332d0m9g.js";
|
|
26
27
|
import"../index-m5m9rmvt.js";
|
|
27
28
|
import {
|
|
28
29
|
CliBuildSignatureSchema2,
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
readDiscoveredToolAnnotations
|
|
3
|
+
} from "../../index-332d0m9g.js";
|
|
1
4
|
import"../../index-69t14s4a.js";
|
|
2
5
|
import"../../index-ct75c3at.js";
|
|
3
6
|
import {
|
|
@@ -919,6 +922,7 @@ async function mountMcpConnection(connection, instanceId, onSkipped) {
|
|
|
919
922
|
name,
|
|
920
923
|
description,
|
|
921
924
|
identity: { serviceName: connection.name, action: name, method: "POST" },
|
|
925
|
+
...tool.annotations && { annotations: tool.annotations },
|
|
922
926
|
...connection.transports && { transports: connection.transports },
|
|
923
927
|
input,
|
|
924
928
|
output: z2.unknown(),
|
|
@@ -945,10 +949,12 @@ function readDiscoveredTools(listed, connectionName) {
|
|
|
945
949
|
for (const raw of listed.tools) {
|
|
946
950
|
if (!isRecord(raw) || typeof raw.name !== "string")
|
|
947
951
|
continue;
|
|
952
|
+
const annotations = readDiscoveredToolAnnotations(raw.annotations);
|
|
948
953
|
tools.push({
|
|
949
954
|
name: raw.name,
|
|
950
955
|
...typeof raw.description === "string" && { description: raw.description },
|
|
951
|
-
...isRecord(raw.inputSchema) && { inputSchema: raw.inputSchema }
|
|
956
|
+
...isRecord(raw.inputSchema) && { inputSchema: raw.inputSchema },
|
|
957
|
+
...annotations && { annotations }
|
|
952
958
|
});
|
|
953
959
|
}
|
|
954
960
|
return tools;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import"../../index-ct75c3at.js";
|
|
2
|
+
import"../../index-332d0m9g.js";
|
|
2
3
|
import"../../index-k42ckyzx.js";
|
|
3
4
|
import"../../index-dsa676h8.js";
|
|
4
5
|
import"../../index-rbzq0q16.js";
|
|
@@ -20,7 +21,7 @@ import {
|
|
|
20
21
|
createMcpHandler2,
|
|
21
22
|
createMcpHttpRoute2,
|
|
22
23
|
createStdioMcpServer2
|
|
23
|
-
} from "../../index-
|
|
24
|
+
} from "../../index-y6ye582c.js";
|
|
24
25
|
import {
|
|
25
26
|
DEFAULT_PROCESS_SIGNALS,
|
|
26
27
|
defaultSignalSource,
|
|
@@ -11,14 +11,15 @@ import {
|
|
|
11
11
|
} from "../../index-1fyea34p.js";
|
|
12
12
|
import {
|
|
13
13
|
createCli2
|
|
14
|
-
} from "../../index-
|
|
14
|
+
} from "../../index-aswegq1r.js";
|
|
15
|
+
import"../../index-332d0m9g.js";
|
|
15
16
|
import"../../index-m5m9rmvt.js";
|
|
16
17
|
import {
|
|
17
18
|
mountMcp2,
|
|
18
19
|
buildMcpServer2,
|
|
19
20
|
createMcpHandler2,
|
|
20
21
|
createStdioMcpServer2
|
|
21
|
-
} from "../../index-
|
|
22
|
+
} from "../../index-y6ye582c.js";
|
|
22
23
|
import"../../index-aqmadanx.js";
|
|
23
24
|
import"../../index-eeahxwvg.js";
|
|
24
25
|
import"../../index-ff39f9dr.js";
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// src/tools/read-operation.ts
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
function isRepeatableRead(operation) {
|
|
4
|
+
const declared = operation.annotations;
|
|
5
|
+
if (declared?.readOnlyHint !== undefined)
|
|
6
|
+
return declared.readOnlyHint;
|
|
7
|
+
return operation.method === "GET" && declared?.destructiveHint !== true;
|
|
8
|
+
}
|
|
9
|
+
function publishedToolAnnotations(operation) {
|
|
10
|
+
const declared = operation.annotations;
|
|
11
|
+
if (declared?.readOnlyHint !== undefined || !isRepeatableRead(operation))
|
|
12
|
+
return declared;
|
|
13
|
+
return { ...declared, readOnlyHint: true };
|
|
14
|
+
}
|
|
15
|
+
var DiscoveredToolAnnotationsSchema = z.object({
|
|
16
|
+
title: z.string().optional().catch(undefined),
|
|
17
|
+
readOnlyHint: z.boolean().optional().catch(undefined),
|
|
18
|
+
destructiveHint: z.boolean().optional().catch(undefined),
|
|
19
|
+
idempotentHint: z.boolean().optional().catch(undefined),
|
|
20
|
+
openWorldHint: z.boolean().optional().catch(undefined)
|
|
21
|
+
});
|
|
22
|
+
function readDiscoveredToolAnnotations(raw) {
|
|
23
|
+
const parsed = DiscoveredToolAnnotationsSchema.safeParse(raw);
|
|
24
|
+
if (!parsed.success)
|
|
25
|
+
return;
|
|
26
|
+
const { title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint } = parsed.data;
|
|
27
|
+
const annotations = {
|
|
28
|
+
...title !== undefined && { title },
|
|
29
|
+
...readOnlyHint !== undefined && { readOnlyHint },
|
|
30
|
+
...destructiveHint !== undefined && { destructiveHint },
|
|
31
|
+
...idempotentHint !== undefined && { idempotentHint },
|
|
32
|
+
...openWorldHint !== undefined && { openWorldHint }
|
|
33
|
+
};
|
|
34
|
+
return Object.keys(annotations).length > 0 ? annotations : undefined;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { isRepeatableRead, publishedToolAnnotations, readDiscoveredToolAnnotations };
|
|
@@ -23,6 +23,9 @@ import {
|
|
|
23
23
|
createToolRunner,
|
|
24
24
|
formatToolError
|
|
25
25
|
} from "./index-ycqhyars.js";
|
|
26
|
+
import {
|
|
27
|
+
isRepeatableRead
|
|
28
|
+
} from "./index-332d0m9g.js";
|
|
26
29
|
import {
|
|
27
30
|
writeContainedFile
|
|
28
31
|
} from "./index-aqmadanx.js";
|
|
@@ -1782,11 +1785,6 @@ async function prepareInvocation(command, commandArgv, descriptor, config, readS
|
|
|
1782
1785
|
return { ok: true, toolArgs, options };
|
|
1783
1786
|
}
|
|
1784
1787
|
|
|
1785
|
-
// src/tools/cli/repeatable-read.ts
|
|
1786
|
-
function isRepeatableRead(operation) {
|
|
1787
|
-
return operation.annotations?.readOnlyHint ?? operation.method === "GET";
|
|
1788
|
-
}
|
|
1789
|
-
|
|
1790
1788
|
// src/tools/cli/session.ts
|
|
1791
1789
|
function nativeDescriptor(definition) {
|
|
1792
1790
|
return {
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
toJsonSchema
|
|
3
3
|
} from "./index-ct75c3at.js";
|
|
4
|
+
import {
|
|
5
|
+
publishedToolAnnotations
|
|
6
|
+
} from "./index-332d0m9g.js";
|
|
4
7
|
import {
|
|
5
8
|
toolSurfaceOutputSchema,
|
|
6
9
|
staticInputRounds,
|
|
@@ -86,7 +89,7 @@ function toolFingerprint(descriptor) {
|
|
|
86
89
|
description: mountable.method.desc,
|
|
87
90
|
input: descriptor.inputSchema,
|
|
88
91
|
output: descriptor.outputSchema ? toJsonSchema(descriptor.outputSchema, "output", "any") : null,
|
|
89
|
-
annotations: mountable.method
|
|
92
|
+
annotations: publishedToolAnnotations(mountable.method) ?? null
|
|
90
93
|
};
|
|
91
94
|
}
|
|
92
95
|
function mcpCatalogStamp(surface) {
|
|
@@ -556,8 +559,9 @@ function registerMcpTool(server, presentation, descriptor, config) {
|
|
|
556
559
|
};
|
|
557
560
|
if (descriptor.outputSchema)
|
|
558
561
|
toolConfig.outputSchema = descriptor.outputSchema;
|
|
559
|
-
|
|
560
|
-
|
|
562
|
+
const annotations = publishedToolAnnotations(mountable.method);
|
|
563
|
+
if (annotations)
|
|
564
|
+
toolConfig.annotations = annotations;
|
|
561
565
|
if (presentation.ui) {
|
|
562
566
|
toolConfig._meta = {
|
|
563
567
|
ui: presentation.ui,
|
|
@@ -665,7 +669,6 @@ function mountPreparedRuntimeMcp(server, tools, config) {
|
|
|
665
669
|
registerMcpTool(server, {
|
|
666
670
|
name: definition.name,
|
|
667
671
|
description: definition.description,
|
|
668
|
-
annotations: definition.annotations,
|
|
669
672
|
ui: definition.ui,
|
|
670
673
|
...present && { present }
|
|
671
674
|
}, descriptor, {
|
|
@@ -716,7 +719,6 @@ function mountPreparedMcp(mcpServer, prepared, config = {}) {
|
|
|
716
719
|
registerMcpTool(mcpServer, {
|
|
717
720
|
name,
|
|
718
721
|
description: method.desc,
|
|
719
|
-
annotations: method.annotations,
|
|
720
722
|
ui: method.ui
|
|
721
723
|
}, descriptor, {
|
|
722
724
|
runTool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/tools/connections/mcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/tools/connections/mcp.ts"],"names":[],"mappings":"AAIA,OAAO,EAAqB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAIhF,OAAO,EACL,KAAK,0BAA0B,EAIhC,MAAM,WAAW,CAAC;AAGnB,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,SAAS,CAAC;AAUlE,gEAAgE;AAChE,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,mBAAmB,EAC/B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,0BAA0B,GACpC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAyElC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/catalog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/catalog.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,wBAAwB,EAAmB,MAAM,WAAW,CAAC;AAE3E;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAyBD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,wBAAwB,GAAG,eAAe,CAclF;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAQzE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EACvF,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,eAAe,GAAG,SAAS,GACjC,OAAO,CAGT;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EACjF,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,eAAe,GAAG,SAAS,GACjC,OAAO,CAGT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/mount.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EAET,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,WAAW,CAAC;AAClE,OAAO,EAEL,KAAK,yBAAyB,EAE9B,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EAGvB,KAAK,wBAAwB,EAC9B,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,SAAS,CAAC;AAG9D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,qCAAqC;IACrC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAC7C,8DAA8D;IAC9D,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gEAAgE;IAChE,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,mEAAmE;IACnE,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAC7D;AAED,UAAU,sBAAuB,SAAQ,cAAc;IACrD,iBAAiB,CAAC,EAAE,eAAe,CAAC;IACpC,8EAA8E;IAC9E,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,IAAI,CAOzE;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,UAAU,GAAG,UAAU,EAAE,EACnC,MAAM,GAAE,cAAmB,GAC1B,IAAI,CAWN;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,GAAE,sBAA2B,GAClC,IAAI,
|
|
1
|
+
{"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/mount.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type CallToolResult, type McpServer } from '@modelcontextprotocol/server';
|
|
2
|
-
import type {
|
|
2
|
+
import type { EndpointUiMeta } from '../../contract/tool-options.js';
|
|
3
3
|
import type { ToolExecutionOptions } from '../execute.js';
|
|
4
4
|
import type { ToolCallHooks } from '../execute-hooks.js';
|
|
5
5
|
import { type ToolResult } from '../execute-result.js';
|
|
@@ -11,7 +11,6 @@ import { type McpRoundRuntime } from './round.js';
|
|
|
11
11
|
export interface McpToolPresentation {
|
|
12
12
|
name: string;
|
|
13
13
|
description: string;
|
|
14
|
-
annotations?: EndpointToolAnnotations;
|
|
15
14
|
ui?: EndpointUiMeta;
|
|
16
15
|
/** A runtime tool's own MCP answer, built from its validated output. */
|
|
17
16
|
present?(data: unknown): unknown | Promise<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/register.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,SAAS,EACf,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/register.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,SAAS,EACf,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,EAA2B,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE3F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,KAAK,EAAmB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,mBAAmB,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,OAAO,EAAE,KAAK,eAAe,EAA0C,MAAM,WAAW,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,SAAS,CAAC;AAIhE,uFAAuF;AACvF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,cAAc,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACrD;AAED,6EAA6E;AAC7E,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,KACnD,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,aAAa,CAAC;IACvB,YAAY,EAAE,CACZ,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,EACnC,QAAQ,EAAE,MAAM,KACb,cAAc,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,iBAAiB,CAAC,EAAE,eAAe,CAAC;IACpC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,yBAAyB,GAChC,IAAI,CAiIN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/runtime-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,UAAU,sBAAsB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5D,iBAAiB,CAAC,EAAE,eAAe,CAAC;IACpC,8EAA8E;IAC9E,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,YAAY,EAAE,CACZ,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,sBAAsB,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EACxD,QAAQ,EAAE,MAAM,KACb,cAAc,CAAC;CACrB;AAaD;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,SAAS,sBAAsB,EAAE,EACxC,MAAM,EAAE,sBAAsB,GAC7B,IAAI,
|
|
1
|
+
{"version":3,"file":"runtime-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp/runtime-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE9E,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,UAAU,sBAAsB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5D,iBAAiB,CAAC,EAAE,eAAe,CAAC;IACpC,8EAA8E;IAC9E,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,YAAY,EAAE,CACZ,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,sBAAsB,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EACxD,QAAQ,EAAE,MAAM,KACb,cAAc,CAAC;CACrB;AAaD;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,SAAS,sBAAsB,EAAE,EACxC,MAAM,EAAE,sBAAsB,GAC7B,IAAI,CAiCN"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { EndpointToolAnnotations } from '../contract/tool-options.js';
|
|
2
|
+
import type { OperationIdentity } from '../server/types.js';
|
|
3
|
+
type Operation = Pick<OperationIdentity, 'method' | 'annotations'>;
|
|
4
|
+
/**
|
|
5
|
+
* Whether calling the operation again returns its answer without a new effect.
|
|
6
|
+
*
|
|
7
|
+
* The declared `readOnlyHint` decides in either direction. Without one, `GET`
|
|
8
|
+
* is the contract's own statement that the endpoint reads — unless it declares
|
|
9
|
+
* `destructiveHint: true`, which says the opposite in the same breath.
|
|
10
|
+
*/
|
|
11
|
+
export declare function isRepeatableRead(operation: Operation): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* The annotations a tool surface publishes for the operation: the declared
|
|
14
|
+
* ones, with `readOnlyHint: true` stated for a read that declared none. A
|
|
15
|
+
* declared `readOnlyHint`, either way, is published as written.
|
|
16
|
+
*/
|
|
17
|
+
export declare function publishedToolAnnotations(operation: Operation): EndpointToolAnnotations | undefined;
|
|
18
|
+
/** The hints another MCP server published for one of its tools, or `undefined` when it gave none. */
|
|
19
|
+
export declare function readDiscoveredToolAnnotations(raw: unknown): EndpointToolAnnotations | undefined;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=read-operation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-operation.d.ts","sourceRoot":"","sources":["../../src/tools/read-operation.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,KAAK,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,aAAa,CAAC,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAI9D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,SAAS,GACnB,uBAAuB,GAAG,SAAS,CAIrC;AAeD,qGAAqG;AACrG,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,OAAO,GACX,uBAAuB,GAAG,SAAS,CAYrC"}
|