@bevel-software/platform-mcp-core 0.32.0 → 0.34.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/dist/connection-scope-wire.d.ts +53 -0
- package/dist/connection-scope-wire.d.ts.map +1 -0
- package/dist/connection-scope-wire.js +63 -0
- package/dist/connection-scope-wire.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/meta-tools.d.ts +12 -0
- package/dist/meta-tools.d.ts.map +1 -1
- package/dist/meta-tools.js +18 -1
- package/dist/meta-tools.js.map +1 -1
- package/dist/proxied-tool.d.ts +25 -0
- package/dist/proxied-tool.d.ts.map +1 -1
- package/dist/proxied-tool.js +25 -0
- package/dist/proxied-tool.js.map +1 -1
- package/package.json +1 -1
- package/src/connection-scope-wire.ts +81 -0
- package/src/index.ts +16 -0
- package/src/meta-tools.ts +25 -1
- package/src/proxied-tool.ts +40 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a connection's scope says about itself on the wire, and the words
|
|
3
|
+
* both MCP servers — the hosted proxy and the local `hexis-mcp` — build from
|
|
4
|
+
* it: the handshake line, the refusal of a tool the connection does not
|
|
5
|
+
* load, and the sentence a connection that loads nothing carries. ONE
|
|
6
|
+
* module, so the two servers cannot word the same connection differently.
|
|
7
|
+
*
|
|
8
|
+
* The deployment puts the wire on `GET /api/agent/all-tools` and
|
|
9
|
+
* `GET /api/agent/catalog-revision` as their `connection` field; absent for
|
|
10
|
+
* a connection made as Everything, which is told nothing new.
|
|
11
|
+
*/
|
|
12
|
+
/** The `code` beside a refusal of what the caller's connection does not load. */
|
|
13
|
+
export declare const NOT_AVAILABLE_TO_CONNECTION = "not_available_to_connection";
|
|
14
|
+
/**
|
|
15
|
+
* Where the sentence saying why a connection loads nothing rides a
|
|
16
|
+
* `tools/list` answer: the listing has no description of its own, and an
|
|
17
|
+
* empty `tools` array alone would read as an outage.
|
|
18
|
+
*/
|
|
19
|
+
export declare const CONNECTION_META_KEY = "software.bevel.hexis/connection";
|
|
20
|
+
/** The agent a connection was made as, by the file that defines it. */
|
|
21
|
+
export interface ScopeAgent {
|
|
22
|
+
/** Repo-relative path of the agent configuration, as the distribution records it. */
|
|
23
|
+
path: string;
|
|
24
|
+
/** Its name — the frontmatter `name`, else the file's base name; the path when the file cannot be read. */
|
|
25
|
+
name: string;
|
|
26
|
+
}
|
|
27
|
+
/** The `connection` field of the two deployment answers above. */
|
|
28
|
+
export interface ConnectionScopeWire {
|
|
29
|
+
agent: ScopeAgent;
|
|
30
|
+
/** Set when the connection loads nothing because its file cannot be used: the one sentence saying why. */
|
|
31
|
+
unavailable?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* The wire an answer carries, validated at the boundary: HTTP loses the
|
|
35
|
+
* type. A malformed one is dropped — undefined, the Everything reading —
|
|
36
|
+
* which serves what the answer listed, itself already narrowed by the
|
|
37
|
+
* deployment's agent surfaces.
|
|
38
|
+
*/
|
|
39
|
+
export declare function connectionWireOf(body: unknown): ConnectionScopeWire | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* The answer to a call of `toolName` that the connection described by
|
|
42
|
+
* `wire` does not load: names the tool and the agent, so the caller knows
|
|
43
|
+
* the tool was refused by the connection's choice and not missing from the
|
|
44
|
+
* deployment; for a file that cannot be used, the sentence that says why.
|
|
45
|
+
* The ONE wording — the tool route and both MCP servers answer with it.
|
|
46
|
+
*/
|
|
47
|
+
export declare function connectionRefusal(toolName: string, wire: ConnectionScopeWire | undefined): string;
|
|
48
|
+
/**
|
|
49
|
+
* The one line an agent is told about its connection (the MCP handshake, the
|
|
50
|
+
* agent guide); null for Everything, which is told nothing new.
|
|
51
|
+
*/
|
|
52
|
+
export declare function describeConnection(wire: ConnectionScopeWire | undefined): string | null;
|
|
53
|
+
//# sourceMappingURL=connection-scope-wire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection-scope-wire.d.ts","sourceRoot":"","sources":["../src/connection-scope-wire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,gCAAgC,CAAC;AAEzE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AAErE,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,qFAAqF;IACrF,IAAI,EAAE,MAAM,CAAC;IACb,2GAA2G;IAC3G,IAAI,EAAE,MAAM,CAAC;CACd;AAED,kEAAkE;AAClE,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,UAAU,CAAC;IAClB,0GAA0G;IAC1G,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,mBAAmB,GAAG,SAAS,CAQ/E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAOjG;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAOvF"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a connection's scope says about itself on the wire, and the words
|
|
3
|
+
* both MCP servers — the hosted proxy and the local `hexis-mcp` — build from
|
|
4
|
+
* it: the handshake line, the refusal of a tool the connection does not
|
|
5
|
+
* load, and the sentence a connection that loads nothing carries. ONE
|
|
6
|
+
* module, so the two servers cannot word the same connection differently.
|
|
7
|
+
*
|
|
8
|
+
* The deployment puts the wire on `GET /api/agent/all-tools` and
|
|
9
|
+
* `GET /api/agent/catalog-revision` as their `connection` field; absent for
|
|
10
|
+
* a connection made as Everything, which is told nothing new.
|
|
11
|
+
*/
|
|
12
|
+
/** The `code` beside a refusal of what the caller's connection does not load. */
|
|
13
|
+
export const NOT_AVAILABLE_TO_CONNECTION = 'not_available_to_connection';
|
|
14
|
+
/**
|
|
15
|
+
* Where the sentence saying why a connection loads nothing rides a
|
|
16
|
+
* `tools/list` answer: the listing has no description of its own, and an
|
|
17
|
+
* empty `tools` array alone would read as an outage.
|
|
18
|
+
*/
|
|
19
|
+
export const CONNECTION_META_KEY = 'software.bevel.hexis/connection';
|
|
20
|
+
/**
|
|
21
|
+
* The wire an answer carries, validated at the boundary: HTTP loses the
|
|
22
|
+
* type. A malformed one is dropped — undefined, the Everything reading —
|
|
23
|
+
* which serves what the answer listed, itself already narrowed by the
|
|
24
|
+
* deployment's agent surfaces.
|
|
25
|
+
*/
|
|
26
|
+
export function connectionWireOf(body) {
|
|
27
|
+
const raw = body
|
|
28
|
+
?.connection;
|
|
29
|
+
if (!raw || typeof raw.agent?.path !== 'string' || typeof raw.agent.name !== 'string')
|
|
30
|
+
return undefined;
|
|
31
|
+
return {
|
|
32
|
+
agent: { path: raw.agent.path, name: raw.agent.name },
|
|
33
|
+
...(typeof raw.unavailable === 'string' && raw.unavailable ? { unavailable: raw.unavailable } : {}),
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The answer to a call of `toolName` that the connection described by
|
|
38
|
+
* `wire` does not load: names the tool and the agent, so the caller knows
|
|
39
|
+
* the tool was refused by the connection's choice and not missing from the
|
|
40
|
+
* deployment; for a file that cannot be used, the sentence that says why.
|
|
41
|
+
* The ONE wording — the tool route and both MCP servers answer with it.
|
|
42
|
+
*/
|
|
43
|
+
export function connectionRefusal(toolName, wire) {
|
|
44
|
+
if (!wire)
|
|
45
|
+
return `The tool "${toolName}" is not available to this connection.`;
|
|
46
|
+
if (wire.unavailable)
|
|
47
|
+
return wire.unavailable;
|
|
48
|
+
return (`The tool "${toolName}" is not available to this connection: it is connected as the agent ` +
|
|
49
|
+
`"${wire.agent.name}" (\`${wire.agent.path}\`), which does not load it.`);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* The one line an agent is told about its connection (the MCP handshake, the
|
|
53
|
+
* agent guide); null for Everything, which is told nothing new.
|
|
54
|
+
*/
|
|
55
|
+
export function describeConnection(wire) {
|
|
56
|
+
if (!wire)
|
|
57
|
+
return null;
|
|
58
|
+
if (wire.unavailable)
|
|
59
|
+
return wire.unavailable;
|
|
60
|
+
return (`This connection is connected as the agent "${wire.agent.name}" (\`${wire.agent.path}\`): it loads only the ` +
|
|
61
|
+
'platform tools, connectors, skills and plugins that file lists, and of those only what you may read.');
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=connection-scope-wire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection-scope-wire.js","sourceRoot":"","sources":["../src/connection-scope-wire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iFAAiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,6BAA6B,CAAC;AAEzE;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AAiBrE;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,MAAM,GAAG,GAAI,IAAsG;QACjH,EAAE,UAAU,CAAC;IACf,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACxG,OAAO;QACL,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;QACrD,GAAG,CAAC,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,IAAqC;IACvF,IAAI,CAAC,IAAI;QAAE,OAAO,aAAa,QAAQ,wCAAwC,CAAC;IAChF,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC,WAAW,CAAC;IAC9C,OAAO,CACL,aAAa,QAAQ,sEAAsE;QAC3F,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,8BAA8B,CACzE,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAqC;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC,WAAW,CAAC;IAC9C,OAAO,CACL,8CAA8C,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,yBAAyB;QAC7G,sGAAsG,CACvG,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -25,11 +25,11 @@
|
|
|
25
25
|
* REGISTRATION retry policy (see `registerManual`) — which is not the same
|
|
26
26
|
* thing as session recovery, and stays each surface's own.
|
|
27
27
|
*/
|
|
28
|
-
export { type ProxiedTool, toListedTool, sanitizeInputSchema, flattenManualTool, flattenDiscoveredTool, } from './proxied-tool.js';
|
|
28
|
+
export { type ProxiedTool, READ_ONLY_TAG, withReadOnlyOverride, toListedTool, sanitizeInputSchema, flattenManualTool, flattenDiscoveredTool, } from './proxied-tool.js';
|
|
29
29
|
export { type SchemaDefect, inputSchemaDefect, schemaDefectMarker, } from './schema-validity.js';
|
|
30
30
|
export { MCP_APP_UI_META_KEY, MCP_APP_MIME_TYPE, MCP_APP_URI_SCHEME, type McpAppToolUi, type McpAppResourceUi, type McpAppResource, type McpAppManifest, toolUiMeta, resourceUiMeta, toListedResource, toReadResourceResult, parseMcpAppManifest, } from './mcp-app.js';
|
|
31
31
|
export { describeToolFailure, withTransportDetail, toCallToolResult, renderProgress, toolError, needsAuthorizationResult, MCP_IMAGE_RESULT_KIND, type McpImageResult, mcpImageResult, isMcpImageResult, omitImagePayloads, NOT_JSON_KIND, pageInsteadOfJson, } from './results.js';
|
|
32
|
-
export { codeModeMetaTools, chainNamespaceExample, META_TOOL_NAMES, CALL_TOOL_CHAIN_MAX_OUTPUT, CALL_TOOL_CHAIN_NAME, CHAIN_FAILURES_RULE, CHAIN_LARGE_RESULTS_RULE, type CodeModeMetaToolsOptions, type SpillPort, dispatchMetaTool, } from './meta-tools.js';
|
|
32
|
+
export { codeModeMetaTools, chainNamespaceExample, META_TOOL_NAMES, META_TOOL_READ_ONLY, CALL_TOOL_CHAIN_MAX_OUTPUT, CALL_TOOL_CHAIN_NAME, CHAIN_FAILURES_RULE, CHAIN_LARGE_RESULTS_RULE, type CodeModeMetaToolsOptions, type SpillPort, dispatchMetaTool, } from './meta-tools.js';
|
|
33
33
|
export { CHAIN_RUNTIME_PRELUDE, CHAIN_TIMEOUT_DEFAULT_MS, CHAIN_TIMEOUT_MAX_MS, CHAIN_TIMEOUT_MIN_MS, type ChainNamespaces, type ToolChainOutcome, chainNamespaces, chainOutOfMemoryMessage, chainTimeoutMessage, describeChainFailure, runToolChain, unknownNamespaceMessage, withChainRuntime, } from './chain-runtime.js';
|
|
34
34
|
export { type ChainExample, type ChainExampleTool, chainExample, } from './chain-example.js';
|
|
35
35
|
export { registerManual, dispatchToolCall } from './dispatch.js';
|
|
@@ -42,5 +42,6 @@ export { type SkillSummary, type LoadedSkill, skillPromptText, } from './skills.
|
|
|
42
42
|
export { utcpNamespacePrefix, utcpNamespacedKey, seedBevelHostedManualVars, isPlatformHostedUrl, } from './utcp-namespace.js';
|
|
43
43
|
export { sanitizeIdentifier, utcpNameToTsInterfaceName, findToolByName, findToolsByNames, AmbiguousToolNameError, } from './code-mode-names.js';
|
|
44
44
|
export { printable } from './printable.js';
|
|
45
|
+
export { CONNECTION_META_KEY, NOT_AVAILABLE_TO_CONNECTION, connectionRefusal, connectionWireOf, describeConnection, type ConnectionScopeWire, type ScopeAgent, } from './connection-scope-wire.js';
|
|
45
46
|
export { GOOGLE_SERVICE_ACCOUNT_AUTH_TYPE, GOOGLE_TOKEN_URL, GoogleAuthHttpProtocol, GoogleServiceAccountTokenSource, ServiceAccountAuthError, findUnservedGoogleServiceAccountAuth, holdsLiteralGoogleServiceAccountKey, installGoogleServiceAccountAuth, isGoogleServiceAccountAuth, type GoogleServiceAccountAuth, type IServiceAccountTokenSource, } from './google-service-account/index.js';
|
|
46
47
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,KAAK,YAAY,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,cAAc,EACnB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,YAAY,EACZ,QAAQ,EACR,KAAK,aAAa,GACnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5F,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,sBAAsB,GAC5B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -25,11 +25,11 @@
|
|
|
25
25
|
* REGISTRATION retry policy (see `registerManual`) — which is not the same
|
|
26
26
|
* thing as session recovery, and stays each surface's own.
|
|
27
27
|
*/
|
|
28
|
-
export { toListedTool, sanitizeInputSchema, flattenManualTool, flattenDiscoveredTool, } from './proxied-tool.js';
|
|
28
|
+
export { READ_ONLY_TAG, withReadOnlyOverride, toListedTool, sanitizeInputSchema, flattenManualTool, flattenDiscoveredTool, } from './proxied-tool.js';
|
|
29
29
|
export { inputSchemaDefect, schemaDefectMarker, } from './schema-validity.js';
|
|
30
30
|
export { MCP_APP_UI_META_KEY, MCP_APP_MIME_TYPE, MCP_APP_URI_SCHEME, toolUiMeta, resourceUiMeta, toListedResource, toReadResourceResult, parseMcpAppManifest, } from './mcp-app.js';
|
|
31
31
|
export { describeToolFailure, withTransportDetail, toCallToolResult, renderProgress, toolError, needsAuthorizationResult, MCP_IMAGE_RESULT_KIND, mcpImageResult, isMcpImageResult, omitImagePayloads, NOT_JSON_KIND, pageInsteadOfJson, } from './results.js';
|
|
32
|
-
export { codeModeMetaTools, chainNamespaceExample, META_TOOL_NAMES, CALL_TOOL_CHAIN_MAX_OUTPUT, CALL_TOOL_CHAIN_NAME, CHAIN_FAILURES_RULE, CHAIN_LARGE_RESULTS_RULE, dispatchMetaTool, } from './meta-tools.js';
|
|
32
|
+
export { codeModeMetaTools, chainNamespaceExample, META_TOOL_NAMES, META_TOOL_READ_ONLY, CALL_TOOL_CHAIN_MAX_OUTPUT, CALL_TOOL_CHAIN_NAME, CHAIN_FAILURES_RULE, CHAIN_LARGE_RESULTS_RULE, dispatchMetaTool, } from './meta-tools.js';
|
|
33
33
|
export { CHAIN_RUNTIME_PRELUDE, CHAIN_TIMEOUT_DEFAULT_MS, CHAIN_TIMEOUT_MAX_MS, CHAIN_TIMEOUT_MIN_MS, chainNamespaces, chainOutOfMemoryMessage, chainTimeoutMessage, describeChainFailure, runToolChain, unknownNamespaceMessage, withChainRuntime, } from './chain-runtime.js';
|
|
34
34
|
export { chainExample, } from './chain-example.js';
|
|
35
35
|
export { registerManual, dispatchToolCall } from './dispatch.js';
|
|
@@ -42,6 +42,10 @@ export { skillPromptText, } from './skills.js';
|
|
|
42
42
|
export { utcpNamespacePrefix, utcpNamespacedKey, seedBevelHostedManualVars, isPlatformHostedUrl, } from './utcp-namespace.js';
|
|
43
43
|
export { sanitizeIdentifier, utcpNameToTsInterfaceName, findToolByName, findToolsByNames, AmbiguousToolNameError, } from './code-mode-names.js';
|
|
44
44
|
export { printable } from './printable.js';
|
|
45
|
+
// A connection made as an `.agent` file, as the deployment says it on the
|
|
46
|
+
// wire and as both MCP servers word it: one module, so the hosted proxy and
|
|
47
|
+
// the local server cannot describe or refuse the same connection differently.
|
|
48
|
+
export { CONNECTION_META_KEY, NOT_AVAILABLE_TO_CONNECTION, connectionRefusal, connectionWireOf, describeConnection, } from './connection-scope-wire.js';
|
|
45
49
|
// Loading this package teaches UTCP `auth_type: google_service_account`, on
|
|
46
50
|
// both surfaces alike: the auth type validates and the `http` protocol mints
|
|
47
51
|
// the token. A side effect of the import, like the `@utcp/http` registration
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAEL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAEL,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAKlB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,wBAAwB,EACxB,qBAAqB,EAErB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EAGxB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EAGpB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAGL,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,YAAY,EACZ,QAAQ,GAET,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5F,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,sBAAsB,GAEvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAGL,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,yDAAyD;AACzD,OAAO,EACL,gCAAgC,EAChC,gBAAgB,EAChB,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,oCAAoC,EACpC,mCAAmC,EACnC,+BAA+B,EAC/B,0BAA0B,GAG3B,MAAM,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAEL,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAEL,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAKlB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,wBAAwB,EACxB,qBAAqB,EAErB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EAGxB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EAGpB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAGL,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,YAAY,EACZ,QAAQ,GAET,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5F,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,sBAAsB,GAEvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAGL,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,0EAA0E;AAC1E,4EAA4E;AAC5E,8EAA8E;AAC9E,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GAGnB,MAAM,4BAA4B,CAAC;AAEpC,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,yDAAyD;AACzD,OAAO,EACL,gCAAgC,EAChC,gBAAgB,EAChB,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,oCAAoC,EACpC,mCAAmC,EACnC,+BAA+B,EAC/B,0BAA0B,GAG3B,MAAM,mCAAmC,CAAC"}
|
package/dist/meta-tools.d.ts
CHANGED
|
@@ -79,7 +79,19 @@ export interface CodeModeMetaToolsOptions {
|
|
|
79
79
|
* Absent, the description carries the chain's rules itself.
|
|
80
80
|
*/
|
|
81
81
|
sharedRulesPointer?: string;
|
|
82
|
+
/**
|
|
83
|
+
* The read-only hint each meta-tool is listed with, by name, where the
|
|
84
|
+
* deployment overrides it. A name left out lists its built-in value
|
|
85
|
+
* ({@link META_TOOL_READ_ONLY}).
|
|
86
|
+
*/
|
|
87
|
+
readOnly?: Readonly<Record<string, boolean>>;
|
|
82
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Each meta-tool's built-in read-only hint. `list_tools` and `tools_info`
|
|
91
|
+
* describe the registry and change nothing; `call_tool_chain` runs code that
|
|
92
|
+
* can call any tool, writers included, so it is not read-only.
|
|
93
|
+
*/
|
|
94
|
+
export declare const META_TOOL_READ_ONLY: Readonly<Record<string, boolean>>;
|
|
83
95
|
/**
|
|
84
96
|
* The three meta-tools, with every example written against the namespace this
|
|
85
97
|
* connection really exposes and a tool name its catalog really has.
|
package/dist/meta-tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-tools.d.ts","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAmC,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAW5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,yEAAyE;AACzE,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,wUAA8W,CAAC;AAE/Y,qGAAqG;AACrG,eAAO,MAAM,wBAAwB,oYAC+U,CAAC;AA0CrX,wEAAwE;AACxE,MAAM,WAAW,wBAAwB;IACvC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"meta-tools.d.ts","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAmC,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAW5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,yEAAyE;AACzE,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,wUAA8W,CAAC;AAE/Y,qGAAqG;AACrG,eAAO,MAAM,wBAAwB,oYAC+U,CAAC;AA0CrX,wEAAwE;AACxE,MAAM,WAAW,wBAAwB;IACvC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC9C;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIhE,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,SAAS,gBAAgB,EAAO,EACvC,OAAO,GAAE,wBAA6B,GACrC,OAAO,EAAE,CAiDX;AAeD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,MAAM,CAA+D,CAAC;AAChH,qFAAqF;AACrF,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAgBlD;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9D;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,kBAAkB,EAC1B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,CAAC,EAAE,SAAS,GAChB,OAAO,CAAC,cAAc,CAAC,CA4HzB"}
|
package/dist/meta-tools.js
CHANGED
|
@@ -112,6 +112,16 @@ function callToolChainDescription(example, sharedRulesPointer) {
|
|
|
112
112
|
return `${howToWriteOne.join('\n\n')}${sharedRulesPointer}`;
|
|
113
113
|
return [...howToWriteOne, CHAIN_FAILURES_RULE, CHAIN_LARGE_RESULTS_RULE, CHAIN_IMAGES_RULE].join('\n\n');
|
|
114
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Each meta-tool's built-in read-only hint. `list_tools` and `tools_info`
|
|
117
|
+
* describe the registry and change nothing; `call_tool_chain` runs code that
|
|
118
|
+
* can call any tool, writers included, so it is not read-only.
|
|
119
|
+
*/
|
|
120
|
+
export const META_TOOL_READ_ONLY = Object.freeze({
|
|
121
|
+
list_tools: true,
|
|
122
|
+
tools_info: true,
|
|
123
|
+
call_tool_chain: false,
|
|
124
|
+
});
|
|
115
125
|
/**
|
|
116
126
|
* The three meta-tools, with every example written against the namespace this
|
|
117
127
|
* connection really exposes and a tool name its catalog really has.
|
|
@@ -128,7 +138,7 @@ function callToolChainDescription(example, sharedRulesPointer) {
|
|
|
128
138
|
export function codeModeMetaTools(namespace, tools = [], options = {}) {
|
|
129
139
|
const example = chainExample(namespace, tools);
|
|
130
140
|
const { name } = example;
|
|
131
|
-
|
|
141
|
+
const metaTools = withCallExamples([
|
|
132
142
|
{
|
|
133
143
|
name: 'list_tools',
|
|
134
144
|
description: `List every UTCP tool currently registered, in TypeScript-accessible form${name ? ` (e.g. \`${name}\`)` : ''} for use inside \`call_tool_chain\`.`,
|
|
@@ -166,6 +176,13 @@ export function codeModeMetaTools(namespace, tools = [], options = {}) {
|
|
|
166
176
|
},
|
|
167
177
|
},
|
|
168
178
|
]);
|
|
179
|
+
// The one annotation the platform emits (see `toListedTool`): the
|
|
180
|
+
// deployment's override where it has one, the built-in value otherwise.
|
|
181
|
+
return metaTools.map((t) => {
|
|
182
|
+
const override = options.readOnly && Object.hasOwn(options.readOnly, t.name) ? options.readOnly[t.name] : undefined;
|
|
183
|
+
const readOnlyHint = typeof override === 'boolean' ? override : META_TOOL_READ_ONLY[t.name] === true;
|
|
184
|
+
return { ...t, annotations: { readOnlyHint } };
|
|
185
|
+
});
|
|
169
186
|
}
|
|
170
187
|
/**
|
|
171
188
|
* Each of the three with its call example ahead of its description, from the
|
package/dist/meta-tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-tools.js","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACvG,OAAO,EAAE,YAAY,EAA4C,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACxH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,yEAAyE;AACzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAEtD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,OAAO,kBAAkB,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,oJAAoJ,wBAAwB,gBAAgB,oBAAoB,2JAA2J,CAAC;AAE/Y,qGAAqG;AACrG,MAAM,CAAC,MAAM,wBAAwB,GACnC,kXAAkX,CAAC;AAErX;;;;;GAKG;AACH,MAAM,iBAAiB,GACrB,2PAA2P,CAAC;AAE9P;;;;;;;;;;;;;GAaG;AACH,SAAS,wBAAwB,CAAC,OAAqB,EAAE,kBAA2B;IAClF,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC9C,2EAA2E;IAC3E,8EAA8E;IAC9E,8BAA8B;IAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,mDAAmD,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,sEAAsE;IACtE,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,MAAM,aAAa,GAAG;QACpB,mMAAmM,MAAM,wPAAwP;QACjc,sHAAsH,EAAE,oEAAoE;QAC5L,mEAAmE,WAAW,mQAAmQ;KAClV,CAAC;IACF,IAAI,kBAAkB,KAAK,SAAS;QAAE,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,kBAAkB,EAAE,CAAC;IAClG,OAAO,CAAC,GAAG,aAAa,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3G,CAAC;
|
|
1
|
+
{"version":3,"file":"meta-tools.js","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/proxied-tool.d.ts
CHANGED
|
@@ -20,7 +20,32 @@ export interface ProxiedTool {
|
|
|
20
20
|
* ignores the field, so carrying it costs nothing.
|
|
21
21
|
*/
|
|
22
22
|
ui?: McpAppToolUi;
|
|
23
|
+
/**
|
|
24
|
+
* Whether MCP clients are told this tool only reads (`annotations.readOnlyHint`).
|
|
25
|
+
*
|
|
26
|
+
* Set for the platform's own tools only, from the {@link READ_ONLY_TAG} the
|
|
27
|
+
* deployment's manual carries on each one whose write declaration makes it
|
|
28
|
+
* read-only; an admin's override is joined on per listing
|
|
29
|
+
* ({@link withReadOnlyOverride}). Left unset for a tool from
|
|
30
|
+
* anywhere else (a `.tool` manual, a plugin's MCP server): such a tool is
|
|
31
|
+
* listed with no annotation at all, exactly as before.
|
|
32
|
+
*/
|
|
33
|
+
readOnly?: boolean;
|
|
23
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* The UTCP tag the deployment's manual puts on a platform tool whose
|
|
37
|
+
* effective read-only hint is true. A tag rather than a field because tags are
|
|
38
|
+
* already part of the UTCP tool shape and survive the manual serializer.
|
|
39
|
+
*/
|
|
40
|
+
export declare const READ_ONLY_TAG = "read-only";
|
|
41
|
+
/**
|
|
42
|
+
* A tool with the deployment's override of its read-only hint, where it has
|
|
43
|
+
* one, joined on at LISTING time: the manual's tag carries the built-in value,
|
|
44
|
+
* in a surface that may be cached across listings, and an override baked into
|
|
45
|
+
* that would outlive the toggle that set it. Only a tool that carries a hint
|
|
46
|
+
* at all (the platform's own); any other stays unannotated whatever its name.
|
|
47
|
+
*/
|
|
48
|
+
export declare function withReadOnlyOverride(tool: ProxiedTool, overrides: Readonly<Record<string, boolean>> | undefined): ProxiedTool;
|
|
24
49
|
/** A discovered tool as an MCP listing entry, or null if its name can't be listed. */
|
|
25
50
|
export declare function toListedTool(tool: ProxiedTool): McpTool | null;
|
|
26
51
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxied-tool.d.ts","sourceRoot":"","sources":["../src/proxied-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE9D,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAE7D,2FAA2F;AAC3F,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,UAAU,CAAC;IACxB;qFACiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;OAQG;IACH,EAAE,CAAC,EAAE,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"proxied-tool.d.ts","sourceRoot":"","sources":["../src/proxied-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE9D,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAE7D,2FAA2F;AAC3F,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,UAAU,CAAC;IACxB;qFACiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;OAQG;IACH,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GACvD,WAAW,CAIb;AAoBD,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI,CAyD9D;AA+ED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAoK5D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,WAAW,CAyBnF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CASjF"}
|
package/dist/proxied-tool.js
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
import { withCallExample } from './tool-interface.js';
|
|
2
2
|
import { toolUiMeta } from './mcp-app.js';
|
|
3
|
+
/**
|
|
4
|
+
* The UTCP tag the deployment's manual puts on a platform tool whose
|
|
5
|
+
* effective read-only hint is true. A tag rather than a field because tags are
|
|
6
|
+
* already part of the UTCP tool shape and survive the manual serializer.
|
|
7
|
+
*/
|
|
8
|
+
export const READ_ONLY_TAG = 'read-only';
|
|
9
|
+
/**
|
|
10
|
+
* A tool with the deployment's override of its read-only hint, where it has
|
|
11
|
+
* one, joined on at LISTING time: the manual's tag carries the built-in value,
|
|
12
|
+
* in a surface that may be cached across listings, and an override baked into
|
|
13
|
+
* that would outlive the toggle that set it. Only a tool that carries a hint
|
|
14
|
+
* at all (the platform's own); any other stays unannotated whatever its name.
|
|
15
|
+
*/
|
|
16
|
+
export function withReadOnlyOverride(tool, overrides) {
|
|
17
|
+
if (tool.readOnly === undefined || !overrides || !Object.hasOwn(overrides, tool.mcpName))
|
|
18
|
+
return tool;
|
|
19
|
+
const override = overrides[tool.mcpName];
|
|
20
|
+
return typeof override === 'boolean' ? { ...tool, readOnly: override } : tool;
|
|
21
|
+
}
|
|
3
22
|
/**
|
|
4
23
|
* MCP tool-name grammar (also the Anthropic API's), and a length bound. A
|
|
5
24
|
* remote MCP server can expose a tool whose flattened name breaks this — too
|
|
@@ -66,6 +85,9 @@ export function toListedTool(tool) {
|
|
|
66
85
|
// every client is required to tolerate, so a client without the
|
|
67
86
|
// extension reads the tool exactly as it did before.
|
|
68
87
|
...(tool.ui ? { _meta: toolUiMeta(tool.ui) } : {}),
|
|
88
|
+
// The read-only hint, and no other annotation: only for a tool whose
|
|
89
|
+
// effect the platform knows (see `ProxiedTool.readOnly`).
|
|
90
|
+
...(tool.readOnly !== undefined ? { annotations: { readOnlyHint: tool.readOnly } } : {}),
|
|
69
91
|
};
|
|
70
92
|
}
|
|
71
93
|
/**
|
|
@@ -385,6 +407,9 @@ export function flattenManualTool(tool, kbManualName) {
|
|
|
385
407
|
description: tool.description,
|
|
386
408
|
inputSchema: tool.inputs,
|
|
387
409
|
manualName: manual,
|
|
410
|
+
// Only the platform's own manual speaks for its tools' effect; every other
|
|
411
|
+
// manual's tags are its author's, and its tools stay unannotated.
|
|
412
|
+
...(manual === kbManualName ? { readOnly: (tool.tags ?? []).includes(READ_ONLY_TAG) } : {}),
|
|
388
413
|
};
|
|
389
414
|
}
|
|
390
415
|
/**
|
package/dist/proxied-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxied-tool.js","sourceRoot":"","sources":["../src/proxied-tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"proxied-tool.js","sourceRoot":"","sources":["../src/proxied-tool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bevel-software/platform-mcp-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"description": "The transport-agnostic half of Bevel's MCP surface: UTCP manual registration, tool discovery, MCP listing/dispatch and the code-mode meta-tools. Shared by the hosted proxy and the local stdio server.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a connection's scope says about itself on the wire, and the words
|
|
3
|
+
* both MCP servers — the hosted proxy and the local `hexis-mcp` — build from
|
|
4
|
+
* it: the handshake line, the refusal of a tool the connection does not
|
|
5
|
+
* load, and the sentence a connection that loads nothing carries. ONE
|
|
6
|
+
* module, so the two servers cannot word the same connection differently.
|
|
7
|
+
*
|
|
8
|
+
* The deployment puts the wire on `GET /api/agent/all-tools` and
|
|
9
|
+
* `GET /api/agent/catalog-revision` as their `connection` field; absent for
|
|
10
|
+
* a connection made as Everything, which is told nothing new.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/** The `code` beside a refusal of what the caller's connection does not load. */
|
|
14
|
+
export const NOT_AVAILABLE_TO_CONNECTION = 'not_available_to_connection';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Where the sentence saying why a connection loads nothing rides a
|
|
18
|
+
* `tools/list` answer: the listing has no description of its own, and an
|
|
19
|
+
* empty `tools` array alone would read as an outage.
|
|
20
|
+
*/
|
|
21
|
+
export const CONNECTION_META_KEY = 'software.bevel.hexis/connection';
|
|
22
|
+
|
|
23
|
+
/** The agent a connection was made as, by the file that defines it. */
|
|
24
|
+
export interface ScopeAgent {
|
|
25
|
+
/** Repo-relative path of the agent configuration, as the distribution records it. */
|
|
26
|
+
path: string;
|
|
27
|
+
/** Its name — the frontmatter `name`, else the file's base name; the path when the file cannot be read. */
|
|
28
|
+
name: string;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** The `connection` field of the two deployment answers above. */
|
|
32
|
+
export interface ConnectionScopeWire {
|
|
33
|
+
agent: ScopeAgent;
|
|
34
|
+
/** Set when the connection loads nothing because its file cannot be used: the one sentence saying why. */
|
|
35
|
+
unavailable?: string;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The wire an answer carries, validated at the boundary: HTTP loses the
|
|
40
|
+
* type. A malformed one is dropped — undefined, the Everything reading —
|
|
41
|
+
* which serves what the answer listed, itself already narrowed by the
|
|
42
|
+
* deployment's agent surfaces.
|
|
43
|
+
*/
|
|
44
|
+
export function connectionWireOf(body: unknown): ConnectionScopeWire | undefined {
|
|
45
|
+
const raw = (body as { connection?: { agent?: { path?: unknown; name?: unknown }; unavailable?: unknown } } | null)
|
|
46
|
+
?.connection;
|
|
47
|
+
if (!raw || typeof raw.agent?.path !== 'string' || typeof raw.agent.name !== 'string') return undefined;
|
|
48
|
+
return {
|
|
49
|
+
agent: { path: raw.agent.path, name: raw.agent.name },
|
|
50
|
+
...(typeof raw.unavailable === 'string' && raw.unavailable ? { unavailable: raw.unavailable } : {}),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* The answer to a call of `toolName` that the connection described by
|
|
56
|
+
* `wire` does not load: names the tool and the agent, so the caller knows
|
|
57
|
+
* the tool was refused by the connection's choice and not missing from the
|
|
58
|
+
* deployment; for a file that cannot be used, the sentence that says why.
|
|
59
|
+
* The ONE wording — the tool route and both MCP servers answer with it.
|
|
60
|
+
*/
|
|
61
|
+
export function connectionRefusal(toolName: string, wire: ConnectionScopeWire | undefined): string {
|
|
62
|
+
if (!wire) return `The tool "${toolName}" is not available to this connection.`;
|
|
63
|
+
if (wire.unavailable) return wire.unavailable;
|
|
64
|
+
return (
|
|
65
|
+
`The tool "${toolName}" is not available to this connection: it is connected as the agent ` +
|
|
66
|
+
`"${wire.agent.name}" (\`${wire.agent.path}\`), which does not load it.`
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* The one line an agent is told about its connection (the MCP handshake, the
|
|
72
|
+
* agent guide); null for Everything, which is told nothing new.
|
|
73
|
+
*/
|
|
74
|
+
export function describeConnection(wire: ConnectionScopeWire | undefined): string | null {
|
|
75
|
+
if (!wire) return null;
|
|
76
|
+
if (wire.unavailable) return wire.unavailable;
|
|
77
|
+
return (
|
|
78
|
+
`This connection is connected as the agent "${wire.agent.name}" (\`${wire.agent.path}\`): it loads only the ` +
|
|
79
|
+
'platform tools, connectors, skills and plugins that file lists, and of those only what you may read.'
|
|
80
|
+
);
|
|
81
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -28,6 +28,8 @@
|
|
|
28
28
|
|
|
29
29
|
export {
|
|
30
30
|
type ProxiedTool,
|
|
31
|
+
READ_ONLY_TAG,
|
|
32
|
+
withReadOnlyOverride,
|
|
31
33
|
toListedTool,
|
|
32
34
|
sanitizeInputSchema,
|
|
33
35
|
flattenManualTool,
|
|
@@ -75,6 +77,7 @@ export {
|
|
|
75
77
|
codeModeMetaTools,
|
|
76
78
|
chainNamespaceExample,
|
|
77
79
|
META_TOOL_NAMES,
|
|
80
|
+
META_TOOL_READ_ONLY,
|
|
78
81
|
CALL_TOOL_CHAIN_MAX_OUTPUT,
|
|
79
82
|
CALL_TOOL_CHAIN_NAME,
|
|
80
83
|
CHAIN_FAILURES_RULE,
|
|
@@ -166,6 +169,19 @@ export {
|
|
|
166
169
|
|
|
167
170
|
export { printable } from './printable.js';
|
|
168
171
|
|
|
172
|
+
// A connection made as an `.agent` file, as the deployment says it on the
|
|
173
|
+
// wire and as both MCP servers word it: one module, so the hosted proxy and
|
|
174
|
+
// the local server cannot describe or refuse the same connection differently.
|
|
175
|
+
export {
|
|
176
|
+
CONNECTION_META_KEY,
|
|
177
|
+
NOT_AVAILABLE_TO_CONNECTION,
|
|
178
|
+
connectionRefusal,
|
|
179
|
+
connectionWireOf,
|
|
180
|
+
describeConnection,
|
|
181
|
+
type ConnectionScopeWire,
|
|
182
|
+
type ScopeAgent,
|
|
183
|
+
} from './connection-scope-wire.js';
|
|
184
|
+
|
|
169
185
|
// Loading this package teaches UTCP `auth_type: google_service_account`, on
|
|
170
186
|
// both surfaces alike: the auth type validates and the `http` protocol mints
|
|
171
187
|
// the token. A side effect of the import, like the `@utcp/http` registration
|
package/src/meta-tools.ts
CHANGED
|
@@ -138,8 +138,25 @@ export interface CodeModeMetaToolsOptions {
|
|
|
138
138
|
* Absent, the description carries the chain's rules itself.
|
|
139
139
|
*/
|
|
140
140
|
sharedRulesPointer?: string;
|
|
141
|
+
/**
|
|
142
|
+
* The read-only hint each meta-tool is listed with, by name, where the
|
|
143
|
+
* deployment overrides it. A name left out lists its built-in value
|
|
144
|
+
* ({@link META_TOOL_READ_ONLY}).
|
|
145
|
+
*/
|
|
146
|
+
readOnly?: Readonly<Record<string, boolean>>;
|
|
141
147
|
}
|
|
142
148
|
|
|
149
|
+
/**
|
|
150
|
+
* Each meta-tool's built-in read-only hint. `list_tools` and `tools_info`
|
|
151
|
+
* describe the registry and change nothing; `call_tool_chain` runs code that
|
|
152
|
+
* can call any tool, writers included, so it is not read-only.
|
|
153
|
+
*/
|
|
154
|
+
export const META_TOOL_READ_ONLY: Readonly<Record<string, boolean>> = Object.freeze({
|
|
155
|
+
list_tools: true,
|
|
156
|
+
tools_info: true,
|
|
157
|
+
call_tool_chain: false,
|
|
158
|
+
});
|
|
159
|
+
|
|
143
160
|
/**
|
|
144
161
|
* The three meta-tools, with every example written against the namespace this
|
|
145
162
|
* connection really exposes and a tool name its catalog really has.
|
|
@@ -160,7 +177,7 @@ export function codeModeMetaTools(
|
|
|
160
177
|
): McpTool[] {
|
|
161
178
|
const example = chainExample(namespace, tools);
|
|
162
179
|
const { name } = example;
|
|
163
|
-
|
|
180
|
+
const metaTools = withCallExamples([
|
|
164
181
|
{
|
|
165
182
|
name: 'list_tools',
|
|
166
183
|
description: `List every UTCP tool currently registered, in TypeScript-accessible form${name ? ` (e.g. \`${name}\`)` : ''} for use inside \`call_tool_chain\`.`,
|
|
@@ -199,6 +216,13 @@ export function codeModeMetaTools(
|
|
|
199
216
|
} as McpTool['inputSchema'],
|
|
200
217
|
},
|
|
201
218
|
]);
|
|
219
|
+
// The one annotation the platform emits (see `toListedTool`): the
|
|
220
|
+
// deployment's override where it has one, the built-in value otherwise.
|
|
221
|
+
return metaTools.map((t) => {
|
|
222
|
+
const override = options.readOnly && Object.hasOwn(options.readOnly, t.name) ? options.readOnly[t.name] : undefined;
|
|
223
|
+
const readOnlyHint = typeof override === 'boolean' ? override : META_TOOL_READ_ONLY[t.name] === true;
|
|
224
|
+
return { ...t, annotations: { readOnlyHint } };
|
|
225
|
+
});
|
|
202
226
|
}
|
|
203
227
|
|
|
204
228
|
/**
|
package/src/proxied-tool.ts
CHANGED
|
@@ -22,6 +22,40 @@ export interface ProxiedTool {
|
|
|
22
22
|
* ignores the field, so carrying it costs nothing.
|
|
23
23
|
*/
|
|
24
24
|
ui?: McpAppToolUi;
|
|
25
|
+
/**
|
|
26
|
+
* Whether MCP clients are told this tool only reads (`annotations.readOnlyHint`).
|
|
27
|
+
*
|
|
28
|
+
* Set for the platform's own tools only, from the {@link READ_ONLY_TAG} the
|
|
29
|
+
* deployment's manual carries on each one whose write declaration makes it
|
|
30
|
+
* read-only; an admin's override is joined on per listing
|
|
31
|
+
* ({@link withReadOnlyOverride}). Left unset for a tool from
|
|
32
|
+
* anywhere else (a `.tool` manual, a plugin's MCP server): such a tool is
|
|
33
|
+
* listed with no annotation at all, exactly as before.
|
|
34
|
+
*/
|
|
35
|
+
readOnly?: boolean;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The UTCP tag the deployment's manual puts on a platform tool whose
|
|
40
|
+
* effective read-only hint is true. A tag rather than a field because tags are
|
|
41
|
+
* already part of the UTCP tool shape and survive the manual serializer.
|
|
42
|
+
*/
|
|
43
|
+
export const READ_ONLY_TAG = 'read-only';
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* A tool with the deployment's override of its read-only hint, where it has
|
|
47
|
+
* one, joined on at LISTING time: the manual's tag carries the built-in value,
|
|
48
|
+
* in a surface that may be cached across listings, and an override baked into
|
|
49
|
+
* that would outlive the toggle that set it. Only a tool that carries a hint
|
|
50
|
+
* at all (the platform's own); any other stays unannotated whatever its name.
|
|
51
|
+
*/
|
|
52
|
+
export function withReadOnlyOverride(
|
|
53
|
+
tool: ProxiedTool,
|
|
54
|
+
overrides: Readonly<Record<string, boolean>> | undefined,
|
|
55
|
+
): ProxiedTool {
|
|
56
|
+
if (tool.readOnly === undefined || !overrides || !Object.hasOwn(overrides, tool.mcpName)) return tool;
|
|
57
|
+
const override = overrides[tool.mcpName];
|
|
58
|
+
return typeof override === 'boolean' ? { ...tool, readOnly: override } : tool;
|
|
25
59
|
}
|
|
26
60
|
|
|
27
61
|
/**
|
|
@@ -96,6 +130,9 @@ export function toListedTool(tool: ProxiedTool): McpTool | null {
|
|
|
96
130
|
// every client is required to tolerate, so a client without the
|
|
97
131
|
// extension reads the tool exactly as it did before.
|
|
98
132
|
...(tool.ui ? { _meta: toolUiMeta(tool.ui) } : {}),
|
|
133
|
+
// The read-only hint, and no other annotation: only for a tool whose
|
|
134
|
+
// effect the platform knows (see `ProxiedTool.readOnly`).
|
|
135
|
+
...(tool.readOnly !== undefined ? { annotations: { readOnlyHint: tool.readOnly } } : {}),
|
|
99
136
|
};
|
|
100
137
|
}
|
|
101
138
|
|
|
@@ -407,6 +444,9 @@ export function flattenManualTool(tool: UtcpTool, kbManualName: string): Proxied
|
|
|
407
444
|
description: tool.description,
|
|
408
445
|
inputSchema: tool.inputs,
|
|
409
446
|
manualName: manual,
|
|
447
|
+
// Only the platform's own manual speaks for its tools' effect; every other
|
|
448
|
+
// manual's tags are its author's, and its tools stay unannotated.
|
|
449
|
+
...(manual === kbManualName ? { readOnly: (tool.tags ?? []).includes(READ_ONLY_TAG) } : {}),
|
|
410
450
|
};
|
|
411
451
|
}
|
|
412
452
|
|