@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.
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
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"}
@@ -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.
@@ -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;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,SAAS,gBAAgB,EAAO,EACvC,OAAO,GAAE,wBAA6B,GACrC,OAAO,EAAE,CA0CX;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"}
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"}
@@ -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
- return withCallExamples([
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
@@ -1 +1 @@
1
- {"version":3,"file":"meta-tools.js","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-tools.js","sourceRoot":"","sources":["../src/meta-tools.ts"],"names":[],"mappings":"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"}
@@ -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;CACnB;AAoBD,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI,CAsD9D;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,CAsBnF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CASjF"}
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"}
@@ -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
  /**
@@ -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.32.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
- return withCallExamples([
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
  /**
@@ -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