toolhome 0.6.6 → 0.6.8

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.
Files changed (51) hide show
  1. package/README.md +27 -0
  2. package/README.zh.md +27 -0
  3. package/dist/server/app.d.ts.map +1 -1
  4. package/dist/server/app.js +1 -1
  5. package/dist/server/app.js.map +1 -1
  6. package/dist/server/cli/main.js +7 -0
  7. package/dist/server/cli/main.js.map +1 -1
  8. package/dist/server/config.d.ts +12 -0
  9. package/dist/server/config.d.ts.map +1 -1
  10. package/dist/server/config.js +4 -0
  11. package/dist/server/config.js.map +1 -1
  12. package/dist/server/data-plane/compact-protocol.d.ts +111 -0
  13. package/dist/server/data-plane/compact-protocol.d.ts.map +1 -0
  14. package/dist/server/data-plane/compact-protocol.js +416 -0
  15. package/dist/server/data-plane/compact-protocol.js.map +1 -0
  16. package/dist/server/data-plane/compact-state.d.ts +28 -0
  17. package/dist/server/data-plane/compact-state.d.ts.map +1 -0
  18. package/dist/server/data-plane/compact-state.js +97 -0
  19. package/dist/server/data-plane/compact-state.js.map +1 -0
  20. package/dist/server/data-plane/data-plane.d.ts.map +1 -1
  21. package/dist/server/data-plane/data-plane.js +4 -0
  22. package/dist/server/data-plane/data-plane.js.map +1 -1
  23. package/dist/server/data-plane/gateway-server.d.ts +7 -1
  24. package/dist/server/data-plane/gateway-server.d.ts.map +1 -1
  25. package/dist/server/data-plane/gateway-server.js +424 -38
  26. package/dist/server/data-plane/gateway-server.js.map +1 -1
  27. package/dist/server/data-plane/registry.d.ts +1 -0
  28. package/dist/server/data-plane/registry.d.ts.map +1 -1
  29. package/dist/server/data-plane/registry.js +3 -0
  30. package/dist/server/data-plane/registry.js.map +1 -1
  31. package/dist/server/data-plane/tool-catalog.d.ts +71 -0
  32. package/dist/server/data-plane/tool-catalog.d.ts.map +1 -0
  33. package/dist/server/data-plane/tool-catalog.js +667 -0
  34. package/dist/server/data-plane/tool-catalog.js.map +1 -0
  35. package/dist/server/node/local-gateway.d.ts +20 -0
  36. package/dist/server/node/local-gateway.d.ts.map +1 -1
  37. package/dist/server/node/local-gateway.js +85 -1
  38. package/dist/server/node/local-gateway.js.map +1 -1
  39. package/dist/server/upstream/adapter.d.ts +39 -2
  40. package/dist/server/upstream/adapter.d.ts.map +1 -1
  41. package/dist/server/upstream/adapter.js +37 -6
  42. package/dist/server/upstream/adapter.js.map +1 -1
  43. package/dist/server/upstream/manager.d.ts +9 -2
  44. package/dist/server/upstream/manager.d.ts.map +1 -1
  45. package/dist/server/upstream/manager.js +24 -4
  46. package/dist/server/upstream/manager.js.map +1 -1
  47. package/package.json +1 -1
  48. package/skills/toolhome/SKILL.md +23 -0
  49. package/skills/toolhome/references/cli-reference.md +19 -0
  50. package/skills/toolhome/references/deployment.md +3 -0
  51. package/skills/toolhome/references/troubleshooting.md +18 -0
package/README.md CHANGED
@@ -64,6 +64,8 @@ The per-server entry proxies losslessly; the aggregate virtualizes conflicting n
64
64
 
65
65
  Downstream 2026 requests stay stateless; 2025-era clients use a persistent session bound to the authenticated principal, preserving initialize capability declarations and bidirectional request semantics. Parts of the Final Tasks extension not yet registered by SDK 2.0 are filled in by an isolated compatibility layer that still speaks the official `tasks/*` wire contract.
66
66
 
67
+ Aggregate capability lists retain results from healthy upstreams when another upstream fails. Partial responses identify failed server slugs in `_meta["toolhome/failed-servers"]`; when every eligible upstream fails, the list returns a protocol error. Cancelling a client request preserves upstream runtime status. Individual endpoints report their own upstream errors.
68
+
67
69
  Aggregated tool names use `{server_slug}_{encoded_upstream_name}`. UTF-8 bytes outside ASCII letters and digits are encoded as `-hh` (hex), so `github.search_code` becomes `github_search-5fcode`. Long names are shortened with a stable hash. Prompts retain `{server_slug}.{upstream_name}`. Unknown extension methods use `toolhome/{server_slug}/{upstream_method}` on the aggregate and pass through untouched on per-server entries. MCP Apps that use original tool names are routed by App resource context or globally unique names; use a per-server entry when names collide.
68
70
 
69
71
  When a modern harness calls a legacy upstream, ToolHome suspends push-style Elicitation, Sampling, and Roots in Tool, Prompt, and Resource Read calls, converts them to modern `input_required` multi-turn interactions, then resumes the same upstream request. Legacy extensions that issue private server-to-client requests inside a custom method have no standard representation in the closed MRTR type set; use a legacy harness or upgrade the upstream protocol for those.
@@ -170,6 +172,30 @@ The data plane also implements OAuth 2.1: a harness can discover the authorizati
170
172
 
171
173
  Downstream Dynamic Client Registration returns a stateless Client ID signed with the master key — no in-process registry, valid across restarts with the same key. HTTPS URL-based Client Metadata is also supported, with limits on response size, redirects, and non-public targets.
172
174
 
175
+ ## Tool Exposure Modes
176
+
177
+ The aggregate `POST /mcp` endpoint supports two exposure modes. `full` is the default and lists every enabled server's tools directly. `compact` is opt-in and exposes exactly two tools:
178
+
179
+ - `search` — `action: "servers"` lists the usable server catalog, `action: "find"` ranks tools for a task, and `action: "describe"` returns a selected tool's complete input schema.
180
+ - `exec` — runs one exact tool returned by `search`, validating that tool's current contract before a fresh call.
181
+
182
+ Enable it per entry, not globally:
183
+
184
+ - Host: `TOOLHOME_MCP_TOOL_MODE=compact`.
185
+ - Local node: `toolhome mcp stdio --tool-mode compact`.
186
+
187
+ Discovery reads only definitions already stored on the entry: `search` makes no upstream request and spawns no process. Execution connects only to the selected server. After changing the mode, reconnect the client because many clients cache `tools/list`. Individual `/mcp/{server_slug}` endpoints and `full` behavior are unchanged.
188
+
189
+ **Response budgets and compatibility.** Complete MCP directory and candidate-summary results are limited to 8 KiB; complete definitions are limited to 16 KiB. Definitions include the argument contract and required upstream instructions. Oversized definitions return `definition_too_large` with full/individual-endpoint guidance; execution enforces the same limit. Business results preserve upstream content. Servers with MCP Apps use individual endpoints; Task-required tools and incompatible Task requests receive guidance before side effects. After `definition_changed`, describe the tool and explicitly invoke exec again. `may_have_run` means an earlier invocation may have produced effects, so check its state first. Modern upstreams own their suspended state; the current protocol has no generic suspended-invocation termination method.
190
+
191
+ **Retrieval scope.** The first version uses local lexical ranking. Chinese-only tasks commonly need English tool or task keywords; native Chinese semantic retrieval remains a limitation. Fixed definitions reduce initial tool schemas. Complete task cost includes discovery rounds, complete contracts and business outputs, and should be measured for the actual client.
192
+
193
+ **Local scope.** Node-placed servers still run only on their owning machine, and the local compact catalog covers only servers placed on that node. At startup the local entry mirrors the control plane's tool visibility; if a server's projection cannot be read it stays out of the compact catalog (fail closed) until the next start or explicit refresh. Changing visibility on the control plane requires the local entry to reconnect before it takes effect.
194
+
195
+ **Roll back to full.** Set `TOOLHOME_MCP_TOOL_MODE=full` (or remove it) on the host, or drop `--tool-mode` from `toolhome mcp stdio`, then reconnect the client. No data migration is needed: full mode clears any compact-mirrored visibility rows so every enabled tool is exposed again.
196
+
197
+ **Keep one discovery layer.** Do not nest ToolHome compact behind an upstream that already performs its own search/exec or Code Mode. Pick either ToolHome `full`/individual endpoints or the upstream's full tool list. For Cloudflare API MCP, opt out explicitly yourself with its documented `?codemode=false` URL; ToolHome never rewrites upstream URLs or query parameters, and `truncateToolResult` is a separate switch that is never changed for you.
198
+
173
199
  ## Upstream Authentication
174
200
 
175
201
  Remote-native servers support:
@@ -260,6 +286,7 @@ Backups contain plaintext secrets and deserve the same protection as the master
260
286
  | `TOOLHOME_WEB_DIR` | Web console static files directory | disabled |
261
287
  | `TOOLHOME_MARKET_DIR` | Market npm install directory | `<dataDir>/market` |
262
288
  | `TOOLHOME_OAUTH_URL_CLIENT_ID` | Enable URL-based Client Metadata | `true` |
289
+ | `TOOLHOME_MCP_TOOL_MODE` | Aggregate `/mcp` tool exposure: `full` or `compact` | `full` |
263
290
 
264
291
  ## Security Model
265
292
 
package/README.zh.md CHANGED
@@ -64,6 +64,8 @@ ToolHome 有两个一等平面:
64
64
 
65
65
  下游 2026 请求保持无状态;2025-era 使用与认证 principal 绑定的持久 Session,保留 initialize 能力声明和双向请求语义。最终 Tasks extension 在 SDK 2.0 尚未注册的部分由隔离兼容层补齐,对外仍是官方 `tasks/*` wire contract。
66
66
 
67
+ 聚合能力列表在部分上游失败时保留健康上游的结果,并在 `_meta["toolhome/failed-servers"]` 中列出失败的服务器 slug。所有具备相应能力的上游均失败时,列表返回协议错误。客户端取消请求时保持上游运行状态。独立入口返回自身上游的错误。
68
+
67
69
  聚合工具名为 `{server_slug}_{encoded_upstream_name}`,上游名称中除 ASCII 字母与数字外的 UTF-8 字节编码为 `-hh`(十六进制),例如 `github.search_code` 映射为 `github_search-5fcode`;超长名称使用稳定哈希缩短。Prompt 名称仍为 `{server_slug}.{upstream_name}`。未知扩展方法在聚合入口使用 `toolhome/{server_slug}/{upstream_method}`;独立入口原样透传。MCP App 若使用原始工具名,ToolHome 会根据 App 资源上下文或全局唯一名称路由;存在同名歧义时应使用独立入口。
68
70
 
69
71
  当现代 Harness 调用旧式上游时,ToolHome 会把 Tool、Prompt 和 Resource Read 中的 push-style Elicitation、Sampling、Roots 暂停并转换成现代 `input_required` 多轮交互,再恢复同一个上游请求。旧式自定义扩展若在自定义 method 内主动发起私有 server-to-client request,则没有可映射到现代 MRTR 封闭类型集的标准表示;这类扩展应使用 legacy Harness 或升级上游协议。
@@ -170,6 +172,30 @@ ToolHome 的数据面也实现 OAuth 2.1:Harness 可通过 RFC 9728 元数据
170
172
 
171
173
  下游 Dynamic Client Registration 返回由主密钥签名的无状态 Client ID,不依赖进程内注册表;使用同一主密钥重启后仍然有效。同时支持 HTTPS URL-based Client Metadata,并限制响应大小、重定向和非公网目标。
172
174
 
175
+ ## 工具暴露模式
176
+
177
+ 聚合入口 `POST /mcp` 支持两种工具暴露模式。`full` 为默认,直接列出每个启用 Server 的工具;`compact` 需显式启用,只暴露两个工具:
178
+
179
+ - `search` —— `action: "servers"` 列出可用服务器目录,`action: "find"` 按任务返回排序候选,`action: "describe"` 返回选中工具的完整参数 schema。
180
+ - `exec` —— 执行 `search` 返回的某个精确工具,并在真实调用前校验其当前合同。
181
+
182
+ 按入口分别启用,而不是全局开关:
183
+
184
+ - Host:`TOOLHOME_MCP_TOOL_MODE=compact`。
185
+ - 本机 node:`toolhome mcp stdio --tool-mode compact`。
186
+
187
+ 发现只读取入口本地已保存的定义:`search` 不发起上游请求,也不启动子进程;执行只连接被选中的 Server。切换模式后需要重新连接客户端,因为多数客户端会缓存 `tools/list`。独立入口 `/mcp/{server_slug}` 与 `full` 行为保持不变。
188
+
189
+ **响应预算与兼容边界。** 目录和候选摘要的完整 MCP 结果上限为 8 KiB;完整定义上限为 16 KiB。定义包含参数合同与所需上游说明,超限时返回 `definition_too_large` 和 full/独立入口指引,执行前也遵守该限制。业务结果保留上游内容。带 MCP App 的服务器使用独立入口;要求 Task 的工具和不兼容的 Task 请求会在副作用前给出指引。`definition_changed` 应先 describe,再显式 exec;`may_have_run` 表示此前调用可能已产生副作用,应先核对状态。现代上游的挂起状态由上游管理,当前协议没有通用的挂起调用终止方法。
190
+
191
+ **检索范围。** 首版采用本地词项排序。纯中文任务通常需要补充英文工具或任务关键词;它未提供原生中文语义检索。固定定义减少初始工具 schema,完整任务成本仍包含发现轮次、完整合同和业务输出,应按实际客户端测量。
192
+
193
+ **本机范围。** Node-hosted Server 仍然只在所属机器上运行,本机 compact 目录只包含放置在该 node 的 Server。启动时本机入口会镜像控制面的工具可见性;若某个 Server 的投影读取失败,它会一直排除在 compact 目录之外(fail closed),直到下次启动或显式刷新。在控制面修改可见性后,本机入口需要重新连接才会生效。
194
+
195
+ **回退到 full。** 在 Host 上把 `TOOLHOME_MCP_TOOL_MODE` 设回 `full`(或删除该变量),或去掉 `toolhome mcp stdio --tool-mode`,然后重新连接客户端。无需数据迁移:full 会清除 compact 镜像写入的可见性行,重新暴露全部启用工具。
196
+
197
+ **只保留一层发现。** 不要把 ToolHome compact 叠加在已经自带 search/exec 或 Code Mode 的上游之上。二选一:使用 ToolHome `full`/独立入口,或使用上游的完整工具列表。对 Cloudflare API MCP,如需退出 Code Mode,请自行使用其文档给出的 `?codemode=false` URL;ToolHome 不会改写上游 URL 或查询参数,`truncateToolResult` 是另一个独立开关,也不会替你修改。
198
+
173
199
  ## 上游鉴权
174
200
 
175
201
  Remote-native Server 支持:
@@ -246,6 +272,7 @@ npm run cli -- config import backup.json
246
272
  | `TOOLHOME_WEB_DIR` | Web 控制台静态文件目录 | 未启用 |
247
273
  | `TOOLHOME_MARKET_DIR` | Market npm 安装目录 | `<dataDir>/market` |
248
274
  | `TOOLHOME_OAUTH_URL_CLIENT_ID` | 是否启用 URL-based Client Metadata | `true` |
275
+ | `TOOLHOME_MCP_TOOL_MODE` | 聚合 `/mcp` 工具暴露模式:`full` 或 `compact` | `full` |
249
276
 
250
277
  ## 安全模型
251
278
 
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAS7D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAKvD,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAYtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAKxD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxC,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAkBD,wBAAgB,iBAAiB,CAAC,MAAM,GAAE,aAA4B,GAAG,kBAAkB,CA8K1F"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAS7D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAKvD,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAYtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAKxD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxC,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAkBD,wBAAgB,iBAAiB,CAAC,MAAM,GAAE,aAA4B,GAAG,kBAAkB,CA+K1F"}
@@ -60,7 +60,7 @@ export function createApplication(config = loadConfig()) {
60
60
  const cursors = new CursorCodec(config.masterKey);
61
61
  const projections = new ToolProjectionService(store);
62
62
  const callRecorder = new CallRecorder(store, logger, config.callsRetentionDays);
63
- const gatewayFactory = new GatewayServerFactory(registry, upstreams, cursors, config.masterKey, projections, callRecorder);
63
+ const gatewayFactory = new GatewayServerFactory(registry, upstreams, cursors, config.masterKey, projections, callRecorder, { toolMode: config.mcpToolMode ?? 'full', scope: 'host' });
64
64
  const dataPlane = new DataPlane(gatewayFactory, registry, upstreams, auth, oauth, store, logger);
65
65
  const app = dataPlane.createApp({
66
66
  host: config.host,
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"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"}
@@ -211,6 +211,7 @@ mcp
211
211
  .command('stdio')
212
212
  .description('Serve every node-placed server for this machine over one stdio connection')
213
213
  .option('--node <id>', 'node label whose servers this machine runs (default: nodeId in the local config, else the hostname)')
214
+ .option('--tool-mode <mode>', 'tool exposure for this entry: full or compact (default: full)', parseToolMode, 'full')
214
215
  .action(run(async (client, options) => {
215
216
  const nodeId = options.node ?? loadLocalConfig()?.nodeId ?? (hostname().split('.')[0] || '');
216
217
  if (nodeId === '') {
@@ -220,6 +221,7 @@ mcp
220
221
  client,
221
222
  nodeId,
222
223
  storePath: resolve(dirname(configPath()), 'node.sqlite'),
224
+ toolMode: options.toolMode,
223
225
  });
224
226
  process.stderr.write(`toolhome: serving node "${nodeId}" over stdio — end the stream to stop\n`);
225
227
  // Children are killed when the client closes its side, and on signals, so a
@@ -602,6 +604,11 @@ function print(value, output) {
602
604
  function parseOutput(value) {
603
605
  return z.enum(['human', 'json']).parse(value);
604
606
  }
607
+ function parseToolMode(value) {
608
+ if (value === 'full' || value === 'compact')
609
+ return value;
610
+ throw new Error(`--tool-mode must be "full" or "compact", got "${value}"`);
611
+ }
605
612
  function resolveCredential(credentials, value) {
606
613
  const byId = credentials.find((credential) => credential.id === value);
607
614
  if (byId)
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/cli/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/cli/main.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
+ import { z } from 'zod';
2
+ /** Aggregate `/mcp` tool exposure: full tool list, or the opt-in search/exec pair. */
3
+ export declare const mcpToolModeSchema: z.ZodEnum<{
4
+ compact: "compact";
5
+ full: "full";
6
+ }>;
7
+ export type McpToolMode = z.infer<typeof mcpToolModeSchema>;
1
8
  export interface RuntimeConfig {
2
9
  host: string;
3
10
  port: number;
@@ -15,6 +22,11 @@ export interface RuntimeConfig {
15
22
  callsRetentionDays: number;
16
23
  /** Seconds between automatic sweeps that refresh expiring OAuth credentials. */
17
24
  oauthRefreshIntervalSeconds: number;
25
+ /**
26
+ * Aggregate `/mcp` tool exposure. `compact` exposes only `search`/`exec`.
27
+ * Optional so manually built configurations keep defaulting to `full`.
28
+ */
29
+ mcpToolMode?: McpToolMode;
18
30
  }
19
31
  export declare function loadConfig(env?: NodeJS.ProcessEnv): RuntimeConfig;
20
32
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAuDA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gFAAgF;IAChF,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,aAAa,CA8B9E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,sFAAsF;AACtF,eAAO,MAAM,iBAAiB;;;EAA8B,CAAC;AAC7D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAsC5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gFAAgF;IAChF,2BAA2B,EAAE,MAAM,CAAC;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,aAAa,CA+B9E"}
@@ -16,6 +16,8 @@ const publicUrlSchema = z.url().superRefine((value, context) => {
16
16
  context.addIssue({ code: 'custom', message: 'Public URL must not contain credentials' });
17
17
  }
18
18
  });
19
+ /** Aggregate `/mcp` tool exposure: full tool list, or the opt-in search/exec pair. */
20
+ export const mcpToolModeSchema = z.enum(['full', 'compact']);
19
21
  const envSchema = z
20
22
  .object({
21
23
  TOOLHOME_HOST: z.string().default('127.0.0.1'),
@@ -37,6 +39,7 @@ const envSchema = z
37
39
  .min(1)
38
40
  .max(86_400)
39
41
  .default(300),
42
+ TOOLHOME_MCP_TOOL_MODE: mcpToolModeSchema.default('full'),
40
43
  })
41
44
  .superRefine((value, context) => {
42
45
  if (value.TOOLHOME_BOOTSTRAP_CONTROL_KEY === value.TOOLHOME_MASTER_KEY) {
@@ -75,6 +78,7 @@ export function loadConfig(env = process.env) {
75
78
  : { uvIndexUrl: parsed.TOOLHOME_UV_INDEX_URL.toString() }),
76
79
  callsRetentionDays: parsed.TOOLHOME_CALLS_RETENTION_DAYS,
77
80
  oauthRefreshIntervalSeconds: parsed.TOOLHOME_OAUTH_REFRESH_INTERVAL_SECONDS,
81
+ mcpToolMode: parsed.TOOLHOME_MCP_TOOL_MODE,
78
82
  };
79
83
  }
80
84
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ import type { CallToolResult, Tool } from '@modelcontextprotocol/server';
2
+ /**
3
+ * Wire contract for the compact discovery surface: the two fixed tools
4
+ * (`search`/`exec`), argument validation, budgets and the shared machine
5
+ * readable error shape. Everything here is deterministic and makes no network
6
+ * or subprocess calls.
7
+ */
8
+ export declare const COMPACT_PROTOCOL_VERSION = "1";
9
+ /** Scorer choice for benchmark comparisons; scoring itself lives in tool-catalog.ts. */
10
+ export type RankAlgorithm = 'field-score' | 'bm25';
11
+ export declare const DEFAULT_RANK_ALGORITHM: RankAlgorithm;
12
+ export declare const RANK_ALGORITHM: RankAlgorithm;
13
+ /** Output budgets, measured on the complete MCP result package. */
14
+ export declare const COMPACT_BUDGETS: {
15
+ /** Fixed search+exec description and schema, estimated tokens. */
16
+ readonly fixedSchemaTokens: 2000;
17
+ readonly serversBytes: number;
18
+ readonly findSummaryBytes: number;
19
+ readonly findDefinitionBytes: number;
20
+ readonly describeBytes: number;
21
+ /** Error results fit the smallest discovery budget even with oversized input. */
22
+ readonly errorBytes: number;
23
+ };
24
+ export type CompactBudgetName = keyof typeof COMPACT_BUDGETS;
25
+ export type CompactErrorCode = 'invalid_arguments' | 'unknown_server' | 'unknown_tool' | 'invalid_cursor' | 'catalog_unavailable' | 'definition_changed' | 'definition_too_large' | 'individual_endpoint_required' | 'upstream_failure' | 'continuation_rejected';
26
+ export type CompactNextStepAction = 'retry_search' | 'describe' | 'refresh_catalog' | 'use_full' | 'use_individual' | 'check_status' | 'request_approval' | 'fix_arguments';
27
+ export type CompactCallEffect = 'not_started' | 'may_have_run';
28
+ export interface CompactNextStep {
29
+ action: CompactNextStepAction;
30
+ arguments?: Record<string, unknown>;
31
+ guidance?: string;
32
+ }
33
+ export interface CompactErrorData {
34
+ kind: 'error';
35
+ code: CompactErrorCode;
36
+ message: string;
37
+ source: 'gateway' | 'upstream';
38
+ callEffect: CompactCallEffect;
39
+ nextStep: CompactNextStep;
40
+ retryable?: boolean;
41
+ details?: Record<string, unknown>;
42
+ }
43
+ export interface CompactErrorOptions {
44
+ source?: 'gateway' | 'upstream';
45
+ callEffect?: CompactCallEffect;
46
+ nextStep?: CompactNextStep;
47
+ retryable?: boolean;
48
+ details?: Record<string, unknown>;
49
+ }
50
+ export declare class CompactError extends Error {
51
+ readonly options: CompactErrorOptions;
52
+ readonly code: CompactErrorCode;
53
+ constructor(code: CompactErrorCode, message: string, options?: CompactErrorOptions);
54
+ get source(): 'gateway' | 'upstream';
55
+ get callEffect(): CompactCallEffect;
56
+ get nextStep(): CompactNextStep;
57
+ toData(): CompactErrorData;
58
+ static isInstance(value: unknown): value is CompactError;
59
+ }
60
+ export declare function invalidArguments(message: string, details?: Record<string, unknown>): CompactError;
61
+ export declare function unknownServerError(server: string): CompactError;
62
+ export declare function unknownToolError(tool: string): CompactError;
63
+ export declare function invalidCursorError(): CompactError;
64
+ export declare function definitionTooLargeError(details: Record<string, unknown>): CompactError;
65
+ export declare function jsonToolResult(payload: Record<string, unknown>): CallToolResult;
66
+ /**
67
+ * Errors share the discovery budgets: oversized tool ids, messages or details
68
+ * are dropped/clamped so the complete package stays inside `errorBytes`.
69
+ */
70
+ export declare function compactErrorResult(error: CompactError): CallToolResult;
71
+ /** Byte length of the complete MCP result package (text + structuredContent). */
72
+ export declare function resultByteLength(result: CallToolResult): number;
73
+ /** Deterministic token estimate used for the fixed-schema budget gate. */
74
+ export declare function estimateTokens(value: unknown): number;
75
+ export declare const SEARCH_TOOL_NAME = "search";
76
+ export declare const EXEC_TOOL_NAME = "exec";
77
+ export declare const SEARCH_ACTIONS: readonly ['servers', 'find', 'describe'];
78
+ export type SearchAction = (typeof SEARCH_ACTIONS)[number];
79
+ export declare const SEARCH_DETAILS: readonly ['summary', 'definition'];
80
+ export type SearchDetail = (typeof SEARCH_DETAILS)[number];
81
+ /**
82
+ * Fixed `search` schema. `additionalProperties: false` keeps per-action
83
+ * combinations strict; the handler validates which fields each action accepts.
84
+ */
85
+ export declare const searchInputSchema: Tool['inputSchema'];
86
+ export declare const execInputSchema: Tool['inputSchema'];
87
+ export declare const searchTool: Tool;
88
+ export declare const execTool: Tool;
89
+ /** The two fixed compact tools; the list is constant even with an empty catalog. */
90
+ export declare function compactTools(): Tool[];
91
+ export declare function estimateCompactToolsTokens(): number;
92
+ /** MCP App tools are launched through the individual endpoint, not a generic exec. */
93
+ export declare function appResourceUri(tool: Tool): string | null;
94
+ export declare function executionBoundaryForTool(tool: Tool): 'exec' | 'individualEndpoint';
95
+ export interface SearchArgs {
96
+ action: SearchAction;
97
+ query?: string;
98
+ server?: string;
99
+ tool?: string;
100
+ limit: number;
101
+ cursor?: string;
102
+ detail: SearchDetail;
103
+ }
104
+ export interface ExecArgs {
105
+ tool: string;
106
+ arguments: Record<string, unknown>;
107
+ definition?: string;
108
+ }
109
+ export declare function parseSearchArgs(input: unknown): SearchArgs;
110
+ export declare function parseExecArgs(input: unknown): ExecArgs;
111
+ //# sourceMappingURL=compact-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compact-protocol.d.ts","sourceRoot":"","sources":["../../../src/data-plane/compact-protocol.ts"],"names":[],"mappings":"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"}