@vibesdotdev/mcp 0.0.0-stage → 1.0.0-rc.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.
Files changed (602) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +96 -2
  3. package/dist/adapters/auth-middleware.d.ts +68 -0
  4. package/dist/adapters/auth-middleware.d.ts.map +1 -0
  5. package/dist/adapters/auth-middleware.js +161 -0
  6. package/dist/adapters/auth-middleware.js.map +1 -0
  7. package/dist/adapters/compatibility.d.ts +20 -0
  8. package/dist/adapters/compatibility.d.ts.map +1 -0
  9. package/dist/adapters/compatibility.js +57 -0
  10. package/dist/adapters/compatibility.js.map +1 -0
  11. package/dist/adapters/host-context.consumer.d.ts +12 -0
  12. package/dist/adapters/host-context.consumer.d.ts.map +1 -0
  13. package/dist/adapters/host-context.consumer.js +10 -0
  14. package/dist/adapters/host-context.consumer.js.map +1 -0
  15. package/dist/adapters/host-context.d.ts +32 -0
  16. package/dist/adapters/host-context.d.ts.map +1 -0
  17. package/dist/adapters/host-context.js +17 -0
  18. package/dist/adapters/host-context.js.map +1 -0
  19. package/dist/adapters/index.d.ts +12 -0
  20. package/dist/adapters/index.d.ts.map +1 -0
  21. package/dist/adapters/index.js +13 -0
  22. package/dist/adapters/index.js.map +1 -0
  23. package/dist/adapters/mcp/ambient-envelope.d.ts +26 -0
  24. package/dist/adapters/mcp/ambient-envelope.d.ts.map +1 -0
  25. package/dist/adapters/mcp/ambient-envelope.js +70 -0
  26. package/dist/adapters/mcp/ambient-envelope.js.map +1 -0
  27. package/dist/adapters/mcp/catalog.d.ts +15 -0
  28. package/dist/adapters/mcp/catalog.d.ts.map +1 -0
  29. package/dist/adapters/mcp/catalog.js +26 -0
  30. package/dist/adapters/mcp/catalog.js.map +1 -0
  31. package/dist/adapters/mcp/connection-identity.d.ts +81 -0
  32. package/dist/adapters/mcp/connection-identity.d.ts.map +1 -0
  33. package/dist/adapters/mcp/connection-identity.js +114 -0
  34. package/dist/adapters/mcp/connection-identity.js.map +1 -0
  35. package/dist/adapters/mcp/context.d.ts +137 -0
  36. package/dist/adapters/mcp/context.d.ts.map +1 -0
  37. package/dist/adapters/mcp/context.js +230 -0
  38. package/dist/adapters/mcp/context.js.map +1 -0
  39. package/dist/adapters/mcp/formatters.d.ts +41 -0
  40. package/dist/adapters/mcp/formatters.d.ts.map +1 -0
  41. package/dist/adapters/mcp/formatters.js +102 -0
  42. package/dist/adapters/mcp/formatters.js.map +1 -0
  43. package/dist/adapters/mcp/from-api-endpoint.d.ts +59 -0
  44. package/dist/adapters/mcp/from-api-endpoint.d.ts.map +1 -0
  45. package/dist/adapters/mcp/from-api-endpoint.js +206 -0
  46. package/dist/adapters/mcp/from-api-endpoint.js.map +1 -0
  47. package/dist/adapters/mcp/generation-contract.d.ts +5 -0
  48. package/dist/adapters/mcp/generation-contract.d.ts.map +1 -0
  49. package/dist/adapters/mcp/generation-contract.js +34 -0
  50. package/dist/adapters/mcp/generation-contract.js.map +1 -0
  51. package/dist/adapters/mcp/host-registry.d.ts +159 -0
  52. package/dist/adapters/mcp/host-registry.d.ts.map +1 -0
  53. package/dist/adapters/mcp/host-registry.js +237 -0
  54. package/dist/adapters/mcp/host-registry.js.map +1 -0
  55. package/dist/adapters/mcp/index.d.ts +12 -0
  56. package/dist/adapters/mcp/index.d.ts.map +1 -0
  57. package/dist/adapters/mcp/index.js +17 -0
  58. package/dist/adapters/mcp/index.js.map +1 -0
  59. package/dist/adapters/mcp/isolated-notice.d.ts +111 -0
  60. package/dist/adapters/mcp/isolated-notice.d.ts.map +1 -0
  61. package/dist/adapters/mcp/isolated-notice.js +217 -0
  62. package/dist/adapters/mcp/isolated-notice.js.map +1 -0
  63. package/dist/adapters/mcp/json-rpc.d.ts +16 -0
  64. package/dist/adapters/mcp/json-rpc.d.ts.map +1 -0
  65. package/dist/adapters/mcp/json-rpc.js +32 -0
  66. package/dist/adapters/mcp/json-rpc.js.map +1 -0
  67. package/dist/adapters/mcp/local-origin.d.ts +18 -0
  68. package/dist/adapters/mcp/local-origin.d.ts.map +1 -0
  69. package/dist/adapters/mcp/local-origin.js +37 -0
  70. package/dist/adapters/mcp/local-origin.js.map +1 -0
  71. package/dist/adapters/mcp/logging/mcp-cloud.descriptor.d.ts +11 -0
  72. package/dist/adapters/mcp/logging/mcp-cloud.descriptor.d.ts.map +1 -0
  73. package/dist/adapters/mcp/logging/mcp-cloud.descriptor.js +21 -0
  74. package/dist/adapters/mcp/logging/mcp-cloud.descriptor.js.map +1 -0
  75. package/dist/adapters/mcp/logging/mcp-http.descriptor.d.ts +10 -0
  76. package/dist/adapters/mcp/logging/mcp-http.descriptor.d.ts.map +1 -0
  77. package/dist/adapters/mcp/logging/mcp-http.descriptor.js +20 -0
  78. package/dist/adapters/mcp/logging/mcp-http.descriptor.js.map +1 -0
  79. package/dist/adapters/mcp/logging/mcp-server.descriptor.d.ts +9 -0
  80. package/dist/adapters/mcp/logging/mcp-server.descriptor.d.ts.map +1 -0
  81. package/dist/adapters/mcp/logging/mcp-server.descriptor.js +25 -0
  82. package/dist/adapters/mcp/logging/mcp-server.descriptor.js.map +1 -0
  83. package/dist/adapters/mcp/logging/mcp-stdio.descriptor.d.ts +10 -0
  84. package/dist/adapters/mcp/logging/mcp-stdio.descriptor.d.ts.map +1 -0
  85. package/dist/adapters/mcp/logging/mcp-stdio.descriptor.js +20 -0
  86. package/dist/adapters/mcp/logging/mcp-stdio.descriptor.js.map +1 -0
  87. package/dist/adapters/mcp/mcp-http-session.d.ts +140 -0
  88. package/dist/adapters/mcp/mcp-http-session.d.ts.map +1 -0
  89. package/dist/adapters/mcp/mcp-http-session.js +797 -0
  90. package/dist/adapters/mcp/mcp-http-session.js.map +1 -0
  91. package/dist/adapters/mcp/mcp-wire-name.d.ts +9 -0
  92. package/dist/adapters/mcp/mcp-wire-name.d.ts.map +1 -0
  93. package/dist/adapters/mcp/mcp-wire-name.js +52 -0
  94. package/dist/adapters/mcp/mcp-wire-name.js.map +1 -0
  95. package/dist/adapters/mcp/projection-doctor.d.ts +101 -0
  96. package/dist/adapters/mcp/projection-doctor.d.ts.map +1 -0
  97. package/dist/adapters/mcp/projection-doctor.js +285 -0
  98. package/dist/adapters/mcp/projection-doctor.js.map +1 -0
  99. package/dist/adapters/mcp/projection.d.ts +36 -0
  100. package/dist/adapters/mcp/projection.d.ts.map +1 -0
  101. package/dist/adapters/mcp/projection.js +136 -0
  102. package/dist/adapters/mcp/projection.js.map +1 -0
  103. package/dist/adapters/mcp/prompts/continuity-wake.prompt.descriptor.d.ts +113 -0
  104. package/dist/adapters/mcp/prompts/continuity-wake.prompt.descriptor.d.ts.map +1 -0
  105. package/dist/adapters/mcp/prompts/continuity-wake.prompt.descriptor.js +15 -0
  106. package/dist/adapters/mcp/prompts/continuity-wake.prompt.descriptor.js.map +1 -0
  107. package/dist/adapters/mcp/prompts/empty-tool-kind.prompt.descriptor.d.ts +113 -0
  108. package/dist/adapters/mcp/prompts/empty-tool-kind.prompt.descriptor.d.ts.map +1 -0
  109. package/dist/adapters/mcp/prompts/empty-tool-kind.prompt.descriptor.js +18 -0
  110. package/dist/adapters/mcp/prompts/empty-tool-kind.prompt.descriptor.js.map +1 -0
  111. package/dist/adapters/mcp/prompts/index.d.ts +113 -0
  112. package/dist/adapters/mcp/prompts/index.d.ts.map +1 -0
  113. package/dist/adapters/mcp/prompts/index.js +24 -0
  114. package/dist/adapters/mcp/prompts/index.js.map +1 -0
  115. package/dist/adapters/mcp/prompts/isolated-runtime.prompt.descriptor.d.ts +114 -0
  116. package/dist/adapters/mcp/prompts/isolated-runtime.prompt.descriptor.d.ts.map +1 -0
  117. package/dist/adapters/mcp/prompts/isolated-runtime.prompt.descriptor.js +37 -0
  118. package/dist/adapters/mcp/prompts/isolated-runtime.prompt.descriptor.js.map +1 -0
  119. package/dist/adapters/mcp/prompts/local-tools.prompt.descriptor.d.ts +113 -0
  120. package/dist/adapters/mcp/prompts/local-tools.prompt.descriptor.d.ts.map +1 -0
  121. package/dist/adapters/mcp/prompts/local-tools.prompt.descriptor.js +20 -0
  122. package/dist/adapters/mcp/prompts/local-tools.prompt.descriptor.js.map +1 -0
  123. package/dist/adapters/mcp/prompts/max-tools.prompt.descriptor.d.ts +113 -0
  124. package/dist/adapters/mcp/prompts/max-tools.prompt.descriptor.d.ts.map +1 -0
  125. package/dist/adapters/mcp/prompts/max-tools.prompt.descriptor.js +20 -0
  126. package/dist/adapters/mcp/prompts/max-tools.prompt.descriptor.js.map +1 -0
  127. package/dist/adapters/mcp/prompts/private-runtime.prompt.descriptor.d.ts +114 -0
  128. package/dist/adapters/mcp/prompts/private-runtime.prompt.descriptor.d.ts.map +1 -0
  129. package/dist/adapters/mcp/prompts/private-runtime.prompt.descriptor.js +21 -0
  130. package/dist/adapters/mcp/prompts/private-runtime.prompt.descriptor.js.map +1 -0
  131. package/dist/adapters/mcp/prompts/registration-failure.prompt.descriptor.d.ts +113 -0
  132. package/dist/adapters/mcp/prompts/registration-failure.prompt.descriptor.d.ts.map +1 -0
  133. package/dist/adapters/mcp/prompts/registration-failure.prompt.descriptor.js +19 -0
  134. package/dist/adapters/mcp/prompts/registration-failure.prompt.descriptor.js.map +1 -0
  135. package/dist/adapters/mcp/prompts/required-checklist.prompt.descriptor.d.ts +113 -0
  136. package/dist/adapters/mcp/prompts/required-checklist.prompt.descriptor.d.ts.map +1 -0
  137. package/dist/adapters/mcp/prompts/required-checklist.prompt.descriptor.js +18 -0
  138. package/dist/adapters/mcp/prompts/required-checklist.prompt.descriptor.js.map +1 -0
  139. package/dist/adapters/mcp/prompts/required-tools-missing.prompt.descriptor.d.ts +113 -0
  140. package/dist/adapters/mcp/prompts/required-tools-missing.prompt.descriptor.d.ts.map +1 -0
  141. package/dist/adapters/mcp/prompts/required-tools-missing.prompt.descriptor.js +19 -0
  142. package/dist/adapters/mcp/prompts/required-tools-missing.prompt.descriptor.js.map +1 -0
  143. package/dist/adapters/mcp/prompts/unknown-client.prompt.descriptor.d.ts +113 -0
  144. package/dist/adapters/mcp/prompts/unknown-client.prompt.descriptor.d.ts.map +1 -0
  145. package/dist/adapters/mcp/prompts/unknown-client.prompt.descriptor.js +18 -0
  146. package/dist/adapters/mcp/prompts/unknown-client.prompt.descriptor.js.map +1 -0
  147. package/dist/adapters/mcp/request-context.d.ts +28 -0
  148. package/dist/adapters/mcp/request-context.d.ts.map +1 -0
  149. package/dist/adapters/mcp/request-context.js +49 -0
  150. package/dist/adapters/mcp/request-context.js.map +1 -0
  151. package/dist/adapters/mcp/roster-announcer.d.ts +3 -0
  152. package/dist/adapters/mcp/roster-announcer.d.ts.map +1 -0
  153. package/dist/adapters/mcp/roster-announcer.js +22 -0
  154. package/dist/adapters/mcp/roster-announcer.js.map +1 -0
  155. package/dist/adapters/mcp/sampling-context.d.ts +12 -0
  156. package/dist/adapters/mcp/sampling-context.d.ts.map +1 -0
  157. package/dist/adapters/mcp/sampling-context.js +30 -0
  158. package/dist/adapters/mcp/sampling-context.js.map +1 -0
  159. package/dist/adapters/mcp/sampling.d.ts +17 -0
  160. package/dist/adapters/mcp/sampling.d.ts.map +1 -0
  161. package/dist/adapters/mcp/sampling.js +43 -0
  162. package/dist/adapters/mcp/sampling.js.map +1 -0
  163. package/dist/adapters/mcp/schemas/index.d.ts +37 -0
  164. package/dist/adapters/mcp/schemas/index.d.ts.map +1 -0
  165. package/dist/adapters/mcp/schemas/index.js +5 -0
  166. package/dist/adapters/mcp/schemas/index.js.map +1 -0
  167. package/dist/adapters/mcp/schemas/tool-selection.d.ts +12 -0
  168. package/dist/adapters/mcp/schemas/tool-selection.d.ts.map +1 -0
  169. package/dist/adapters/mcp/schemas/tool-selection.js +2 -0
  170. package/dist/adapters/mcp/schemas/tool-selection.js.map +1 -0
  171. package/dist/adapters/mcp/serve-identity.d.ts +64 -0
  172. package/dist/adapters/mcp/serve-identity.d.ts.map +1 -0
  173. package/dist/adapters/mcp/serve-identity.js +220 -0
  174. package/dist/adapters/mcp/serve-identity.js.map +1 -0
  175. package/dist/adapters/mcp/server.consumer.d.ts +5 -0
  176. package/dist/adapters/mcp/server.consumer.d.ts.map +1 -0
  177. package/dist/adapters/mcp/server.consumer.js +300 -0
  178. package/dist/adapters/mcp/server.consumer.js.map +1 -0
  179. package/dist/adapters/mcp/server.d.ts +56 -0
  180. package/dist/adapters/mcp/server.d.ts.map +1 -0
  181. package/dist/adapters/mcp/server.js +1423 -0
  182. package/dist/adapters/mcp/server.js.map +1 -0
  183. package/dist/adapters/mcp/stale-body.consumer.d.ts +85 -0
  184. package/dist/adapters/mcp/stale-body.consumer.d.ts.map +1 -0
  185. package/dist/adapters/mcp/stale-body.consumer.js +183 -0
  186. package/dist/adapters/mcp/stale-body.consumer.js.map +1 -0
  187. package/dist/adapters/mcp/startup-refusal.d.ts +8 -0
  188. package/dist/adapters/mcp/startup-refusal.d.ts.map +1 -0
  189. package/dist/adapters/mcp/startup-refusal.js +141 -0
  190. package/dist/adapters/mcp/startup-refusal.js.map +1 -0
  191. package/dist/adapters/mcp/stdio-relay.d.ts +232 -0
  192. package/dist/adapters/mcp/stdio-relay.d.ts.map +1 -0
  193. package/dist/adapters/mcp/stdio-relay.js +1169 -0
  194. package/dist/adapters/mcp/stdio-relay.js.map +1 -0
  195. package/dist/adapters/mcp/tool-audit-live.d.ts +109 -0
  196. package/dist/adapters/mcp/tool-audit-live.d.ts.map +1 -0
  197. package/dist/adapters/mcp/tool-audit-live.js +538 -0
  198. package/dist/adapters/mcp/tool-audit-live.js.map +1 -0
  199. package/dist/adapters/mcp/tool-audit.d.ts +44 -0
  200. package/dist/adapters/mcp/tool-audit.d.ts.map +1 -0
  201. package/dist/adapters/mcp/tool-audit.js +168 -0
  202. package/dist/adapters/mcp/tool-audit.js.map +1 -0
  203. package/dist/adapters/mcp/tool-catalog.d.ts +179 -0
  204. package/dist/adapters/mcp/tool-catalog.d.ts.map +1 -0
  205. package/dist/adapters/mcp/tool-catalog.js +330 -0
  206. package/dist/adapters/mcp/tool-catalog.js.map +1 -0
  207. package/dist/adapters/mcp/tool-selection.d.ts +77 -0
  208. package/dist/adapters/mcp/tool-selection.d.ts.map +1 -0
  209. package/dist/adapters/mcp/tool-selection.js +266 -0
  210. package/dist/adapters/mcp/tool-selection.js.map +1 -0
  211. package/dist/adapters/mcp/transport-registry.d.ts +5 -0
  212. package/dist/adapters/mcp/transport-registry.d.ts.map +1 -0
  213. package/dist/adapters/mcp/transport-registry.js +13 -0
  214. package/dist/adapters/mcp/transport-registry.js.map +1 -0
  215. package/dist/adapters/mcp/trust-tag.d.ts +69 -0
  216. package/dist/adapters/mcp/trust-tag.d.ts.map +1 -0
  217. package/dist/adapters/mcp/trust-tag.js +120 -0
  218. package/dist/adapters/mcp/trust-tag.js.map +1 -0
  219. package/dist/adapters/mcp/vibes-types.d.ts +115 -0
  220. package/dist/adapters/mcp/vibes-types.d.ts.map +1 -0
  221. package/dist/adapters/mcp/vibes-types.js +7 -0
  222. package/dist/adapters/mcp/vibes-types.js.map +1 -0
  223. package/dist/adapters/mcp/web-handler.d.ts +49 -0
  224. package/dist/adapters/mcp/web-handler.d.ts.map +1 -0
  225. package/dist/adapters/mcp/web-handler.js +129 -0
  226. package/dist/adapters/mcp/web-handler.js.map +1 -0
  227. package/dist/adapters/session-id.d.ts +3 -0
  228. package/dist/adapters/session-id.d.ts.map +1 -0
  229. package/dist/adapters/session-id.js +42 -0
  230. package/dist/adapters/session-id.js.map +1 -0
  231. package/dist/adapters/transport-bun-http.d.ts +39 -0
  232. package/dist/adapters/transport-bun-http.d.ts.map +1 -0
  233. package/dist/adapters/transport-bun-http.js +42 -0
  234. package/dist/adapters/transport-bun-http.js.map +1 -0
  235. package/dist/adapters/types.d.ts +135 -0
  236. package/dist/adapters/types.d.ts.map +1 -0
  237. package/dist/adapters/types.js +2 -0
  238. package/dist/adapters/types.js.map +1 -0
  239. package/dist/adapters/web-compatibility.d.ts +6 -0
  240. package/dist/adapters/web-compatibility.d.ts.map +1 -0
  241. package/dist/adapters/web-compatibility.js +13 -0
  242. package/dist/adapters/web-compatibility.js.map +1 -0
  243. package/dist/adapters/zod-mcp.d.ts +139 -0
  244. package/dist/adapters/zod-mcp.d.ts.map +1 -0
  245. package/dist/adapters/zod-mcp.js +617 -0
  246. package/dist/adapters/zod-mcp.js.map +1 -0
  247. package/dist/cli/mcp/audit/dev.audit.tools.descriptor.d.ts +15 -0
  248. package/dist/cli/mcp/audit/dev.audit.tools.descriptor.d.ts.map +1 -0
  249. package/dist/cli/mcp/audit/dev.audit.tools.descriptor.js +58 -0
  250. package/dist/cli/mcp/audit/dev.audit.tools.descriptor.js.map +1 -0
  251. package/dist/cli/mcp/audit/dev.audit.tools.impl.consumer.d.ts +6 -0
  252. package/dist/cli/mcp/audit/dev.audit.tools.impl.consumer.d.ts.map +1 -0
  253. package/dist/cli/mcp/audit/dev.audit.tools.impl.consumer.js +180 -0
  254. package/dist/cli/mcp/audit/dev.audit.tools.impl.consumer.js.map +1 -0
  255. package/dist/cli/mcp/lifecycle/dev.mcp.restart.descriptor.d.ts +22 -0
  256. package/dist/cli/mcp/lifecycle/dev.mcp.restart.descriptor.d.ts.map +1 -0
  257. package/dist/cli/mcp/lifecycle/dev.mcp.restart.descriptor.js +19 -0
  258. package/dist/cli/mcp/lifecycle/dev.mcp.restart.descriptor.js.map +1 -0
  259. package/dist/cli/mcp/lifecycle/dev.mcp.restart.impl.consumer.d.ts +23 -0
  260. package/dist/cli/mcp/lifecycle/dev.mcp.restart.impl.consumer.d.ts.map +1 -0
  261. package/dist/cli/mcp/lifecycle/dev.mcp.restart.impl.consumer.js +41 -0
  262. package/dist/cli/mcp/lifecycle/dev.mcp.restart.impl.consumer.js.map +1 -0
  263. package/dist/cli/mcp/lifecycle/dev.mcp.serve.descriptor.d.ts +75 -0
  264. package/dist/cli/mcp/lifecycle/dev.mcp.serve.descriptor.d.ts.map +1 -0
  265. package/dist/cli/mcp/lifecycle/dev.mcp.serve.descriptor.js +84 -0
  266. package/dist/cli/mcp/lifecycle/dev.mcp.serve.descriptor.js.map +1 -0
  267. package/dist/cli/mcp/lifecycle/dev.mcp.start.descriptor.d.ts +35 -0
  268. package/dist/cli/mcp/lifecycle/dev.mcp.start.descriptor.d.ts.map +1 -0
  269. package/dist/cli/mcp/lifecycle/dev.mcp.start.descriptor.js +28 -0
  270. package/dist/cli/mcp/lifecycle/dev.mcp.start.descriptor.js.map +1 -0
  271. package/dist/cli/mcp/lifecycle/dev.mcp.start.impl.consumer.d.ts +11 -0
  272. package/dist/cli/mcp/lifecycle/dev.mcp.start.impl.consumer.d.ts.map +1 -0
  273. package/dist/cli/mcp/lifecycle/dev.mcp.start.impl.consumer.js +47 -0
  274. package/dist/cli/mcp/lifecycle/dev.mcp.start.impl.consumer.js.map +1 -0
  275. package/dist/cli/mcp/lifecycle/dev.mcp.stop.descriptor.d.ts +18 -0
  276. package/dist/cli/mcp/lifecycle/dev.mcp.stop.descriptor.d.ts.map +1 -0
  277. package/dist/cli/mcp/lifecycle/dev.mcp.stop.descriptor.js +18 -0
  278. package/dist/cli/mcp/lifecycle/dev.mcp.stop.descriptor.js.map +1 -0
  279. package/dist/cli/mcp/lifecycle/dev.mcp.stop.impl.consumer.d.ts +12 -0
  280. package/dist/cli/mcp/lifecycle/dev.mcp.stop.impl.consumer.d.ts.map +1 -0
  281. package/dist/cli/mcp/lifecycle/dev.mcp.stop.impl.consumer.js +17 -0
  282. package/dist/cli/mcp/lifecycle/dev.mcp.stop.impl.consumer.js.map +1 -0
  283. package/dist/cli/mcp/management/dev.mcp.install.descriptor.d.ts +41 -0
  284. package/dist/cli/mcp/management/dev.mcp.install.descriptor.d.ts.map +1 -0
  285. package/dist/cli/mcp/management/dev.mcp.install.descriptor.js +49 -0
  286. package/dist/cli/mcp/management/dev.mcp.install.descriptor.js.map +1 -0
  287. package/dist/cli/mcp/management/dev.mcp.install.impl.consumer.d.ts +16 -0
  288. package/dist/cli/mcp/management/dev.mcp.install.impl.consumer.d.ts.map +1 -0
  289. package/dist/cli/mcp/management/dev.mcp.install.impl.consumer.js +244 -0
  290. package/dist/cli/mcp/management/dev.mcp.install.impl.consumer.js.map +1 -0
  291. package/dist/cli/mcp/management/dev.mcp.list.descriptor.d.ts +22 -0
  292. package/dist/cli/mcp/management/dev.mcp.list.descriptor.d.ts.map +1 -0
  293. package/dist/cli/mcp/management/dev.mcp.list.descriptor.js +24 -0
  294. package/dist/cli/mcp/management/dev.mcp.list.descriptor.js.map +1 -0
  295. package/dist/cli/mcp/management/dev.mcp.list.impl.consumer.d.ts +29 -0
  296. package/dist/cli/mcp/management/dev.mcp.list.impl.consumer.d.ts.map +1 -0
  297. package/dist/cli/mcp/management/dev.mcp.list.impl.consumer.js +127 -0
  298. package/dist/cli/mcp/management/dev.mcp.list.impl.consumer.js.map +1 -0
  299. package/dist/cli/mcp/management/dev.mcp.status.descriptor.d.ts +48 -0
  300. package/dist/cli/mcp/management/dev.mcp.status.descriptor.d.ts.map +1 -0
  301. package/dist/cli/mcp/management/dev.mcp.status.descriptor.js +56 -0
  302. package/dist/cli/mcp/management/dev.mcp.status.descriptor.js.map +1 -0
  303. package/dist/cli/mcp/management/dev.mcp.status.impl.consumer.d.ts +9 -0
  304. package/dist/cli/mcp/management/dev.mcp.status.impl.consumer.d.ts.map +1 -0
  305. package/dist/cli/mcp/management/dev.mcp.status.impl.consumer.js +253 -0
  306. package/dist/cli/mcp/management/dev.mcp.status.impl.consumer.js.map +1 -0
  307. package/dist/cli/mcp/management/install-helpers.d.ts +26 -0
  308. package/dist/cli/mcp/management/install-helpers.d.ts.map +1 -0
  309. package/dist/cli/mcp/management/install-helpers.js +95 -0
  310. package/dist/cli/mcp/management/install-helpers.js.map +1 -0
  311. package/dist/cli/mcp/management/process-audit.impl.consumer.d.ts +38 -0
  312. package/dist/cli/mcp/management/process-audit.impl.consumer.d.ts.map +1 -0
  313. package/dist/cli/mcp/management/process-audit.impl.consumer.js +145 -0
  314. package/dist/cli/mcp/management/process-audit.impl.consumer.js.map +1 -0
  315. package/dist/cli/mcp/management/rules-debt-summary.impl.consumer.d.ts +21 -0
  316. package/dist/cli/mcp/management/rules-debt-summary.impl.consumer.d.ts.map +1 -0
  317. package/dist/cli/mcp/management/rules-debt-summary.impl.consumer.js +82 -0
  318. package/dist/cli/mcp/management/rules-debt-summary.impl.consumer.js.map +1 -0
  319. package/dist/cli/mcp/management/status-doctor.d.ts +22 -0
  320. package/dist/cli/mcp/management/status-doctor.d.ts.map +1 -0
  321. package/dist/cli/mcp/management/status-doctor.js +153 -0
  322. package/dist/cli/mcp/management/status-doctor.js.map +1 -0
  323. package/dist/cli/mcp/schemas/status-doctor.d.ts +75 -0
  324. package/dist/cli/mcp/schemas/status-doctor.d.ts.map +1 -0
  325. package/dist/cli/mcp/schemas/status-doctor.js +2 -0
  326. package/dist/cli/mcp/schemas/status-doctor.js.map +1 -0
  327. package/dist/cli/mcp/support/host-port.d.ts +31 -0
  328. package/dist/cli/mcp/support/host-port.d.ts.map +1 -0
  329. package/dist/cli/mcp/support/host-port.js +31 -0
  330. package/dist/cli/mcp/support/host-port.js.map +1 -0
  331. package/dist/cli/mcp/support/server-process.impl.consumer.d.ts +24 -0
  332. package/dist/cli/mcp/support/server-process.impl.consumer.d.ts.map +1 -0
  333. package/dist/cli/mcp/support/server-process.impl.consumer.js +86 -0
  334. package/dist/cli/mcp/support/server-process.impl.consumer.js.map +1 -0
  335. package/dist/cli/mcp/support/status-doctor.d.ts +33 -0
  336. package/dist/cli/mcp/support/status-doctor.d.ts.map +1 -0
  337. package/dist/cli/mcp/support/status-doctor.js +104 -0
  338. package/dist/cli/mcp/support/status-doctor.js.map +1 -0
  339. package/dist/cli/print.d.ts +12 -0
  340. package/dist/cli/print.d.ts.map +1 -0
  341. package/dist/cli/print.js +25 -0
  342. package/dist/cli/print.js.map +1 -0
  343. package/dist/cli/surface-mcp/client-connection-identity.consumer.d.ts +19 -0
  344. package/dist/cli/surface-mcp/client-connection-identity.consumer.d.ts.map +1 -0
  345. package/dist/cli/surface-mcp/client-connection-identity.consumer.js +53 -0
  346. package/dist/cli/surface-mcp/client-connection-identity.consumer.js.map +1 -0
  347. package/dist/cli/surface-mcp/dev.mcp.serve.impl.cloud.d.ts +7 -0
  348. package/dist/cli/surface-mcp/dev.mcp.serve.impl.cloud.d.ts.map +1 -0
  349. package/dist/cli/surface-mcp/dev.mcp.serve.impl.cloud.js +345 -0
  350. package/dist/cli/surface-mcp/dev.mcp.serve.impl.cloud.js.map +1 -0
  351. package/dist/cli/surface-mcp/dev.mcp.serve.impl.consumer.d.ts +12 -0
  352. package/dist/cli/surface-mcp/dev.mcp.serve.impl.consumer.d.ts.map +1 -0
  353. package/dist/cli/surface-mcp/dev.mcp.serve.impl.consumer.js +657 -0
  354. package/dist/cli/surface-mcp/dev.mcp.serve.impl.consumer.js.map +1 -0
  355. package/dist/cli/surface-mcp/local-dev-flag.d.ts +24 -0
  356. package/dist/cli/surface-mcp/local-dev-flag.d.ts.map +1 -0
  357. package/dist/cli/surface-mcp/local-dev-flag.js +37 -0
  358. package/dist/cli/surface-mcp/local-dev-flag.js.map +1 -0
  359. package/dist/cli/surface-mcp/shared-host-startup.d.ts +14 -0
  360. package/dist/cli/surface-mcp/shared-host-startup.d.ts.map +1 -0
  361. package/dist/cli/surface-mcp/shared-host-startup.js +46 -0
  362. package/dist/cli/surface-mcp/shared-host-startup.js.map +1 -0
  363. package/dist/cli/surface-mcp/stdio-relay-transport.d.ts +2 -0
  364. package/dist/cli/surface-mcp/stdio-relay-transport.d.ts.map +1 -0
  365. package/dist/cli/surface-mcp/stdio-relay-transport.js +21 -0
  366. package/dist/cli/surface-mcp/stdio-relay-transport.js.map +1 -0
  367. package/dist/cli/surface-mcp/teardown.d.ts +17 -0
  368. package/dist/cli/surface-mcp/teardown.d.ts.map +1 -0
  369. package/dist/cli/surface-mcp/teardown.js +28 -0
  370. package/dist/cli/surface-mcp/teardown.js.map +1 -0
  371. package/dist/client.d.ts +49 -0
  372. package/dist/client.d.ts.map +1 -0
  373. package/dist/client.js +131 -0
  374. package/dist/client.js.map +1 -0
  375. package/dist/config/load.d.ts +6 -0
  376. package/dist/config/load.d.ts.map +1 -0
  377. package/dist/config/load.js +18 -0
  378. package/dist/config/load.js.map +1 -0
  379. package/dist/config/mcp.config.descriptor.d.ts +108 -0
  380. package/dist/config/mcp.config.descriptor.d.ts.map +1 -0
  381. package/dist/config/mcp.config.descriptor.js +63 -0
  382. package/dist/config/mcp.config.descriptor.js.map +1 -0
  383. package/dist/docs/mcp.docs.descriptor.d.ts +4 -0
  384. package/dist/docs/mcp.docs.descriptor.d.ts.map +1 -0
  385. package/dist/docs/mcp.docs.descriptor.js +44 -0
  386. package/dist/docs/mcp.docs.descriptor.js.map +1 -0
  387. package/dist/docs/prompts.docs.descriptor.d.ts +4 -0
  388. package/dist/docs/prompts.docs.descriptor.d.ts.map +1 -0
  389. package/dist/docs/prompts.docs.descriptor.js +130 -0
  390. package/dist/docs/prompts.docs.descriptor.js.map +1 -0
  391. package/dist/docs/resources.docs.descriptor.d.ts +4 -0
  392. package/dist/docs/resources.docs.descriptor.d.ts.map +1 -0
  393. package/dist/docs/resources.docs.descriptor.js +390 -0
  394. package/dist/docs/resources.docs.descriptor.js.map +1 -0
  395. package/dist/docs/server.docs.descriptor.d.ts +4 -0
  396. package/dist/docs/server.docs.descriptor.d.ts.map +1 -0
  397. package/dist/docs/server.docs.descriptor.js +383 -0
  398. package/dist/docs/server.docs.descriptor.js.map +1 -0
  399. package/dist/docs/tools.docs.descriptor.d.ts +4 -0
  400. package/dist/docs/tools.docs.descriptor.d.ts.map +1 -0
  401. package/dist/docs/tools.docs.descriptor.js +316 -0
  402. package/dist/docs/tools.docs.descriptor.js.map +1 -0
  403. package/dist/harness-identity.descriptors.d.ts +11 -0
  404. package/dist/harness-identity.descriptors.d.ts.map +1 -0
  405. package/dist/harness-identity.descriptors.js +41 -0
  406. package/dist/harness-identity.descriptors.js.map +1 -0
  407. package/dist/index.d.ts +36 -0
  408. package/dist/index.d.ts.map +1 -0
  409. package/dist/index.js +36 -0
  410. package/dist/index.js.map +1 -0
  411. package/dist/kinds/harness-identity.kind.d.ts +3 -0
  412. package/dist/kinds/harness-identity.kind.d.ts.map +1 -0
  413. package/dist/kinds/harness-identity.kind.js +16 -0
  414. package/dist/kinds/harness-identity.kind.js.map +1 -0
  415. package/dist/kinds/sampling.kind.d.ts +15 -0
  416. package/dist/kinds/sampling.kind.d.ts.map +1 -0
  417. package/dist/kinds/sampling.kind.js +24 -0
  418. package/dist/kinds/sampling.kind.js.map +1 -0
  419. package/dist/lifecycle-repeat.d.ts +23 -0
  420. package/dist/lifecycle-repeat.d.ts.map +1 -0
  421. package/dist/lifecycle-repeat.js +21 -0
  422. package/dist/lifecycle-repeat.js.map +1 -0
  423. package/dist/mcp/dev.mcp.descriptor.d.ts +18 -0
  424. package/dist/mcp/dev.mcp.descriptor.d.ts.map +1 -0
  425. package/dist/mcp/dev.mcp.descriptor.js +18 -0
  426. package/dist/mcp/dev.mcp.descriptor.js.map +1 -0
  427. package/dist/mcp/index.d.ts +20 -0
  428. package/dist/mcp/index.d.ts.map +1 -0
  429. package/dist/mcp/index.js +19 -0
  430. package/dist/mcp/index.js.map +1 -0
  431. package/dist/mcp/mcp.plugin.d.ts +9 -0
  432. package/dist/mcp/mcp.plugin.d.ts.map +1 -0
  433. package/dist/mcp/mcp.plugin.js +59 -0
  434. package/dist/mcp/mcp.plugin.js.map +1 -0
  435. package/dist/mcp-client.plugin.d.ts +4 -0
  436. package/dist/mcp-client.plugin.d.ts.map +1 -0
  437. package/dist/mcp-client.plugin.js +13 -0
  438. package/dist/mcp-client.plugin.js.map +1 -0
  439. package/dist/mcp.client.descriptor.d.ts +27 -0
  440. package/dist/mcp.client.descriptor.d.ts.map +1 -0
  441. package/dist/mcp.client.descriptor.js +7 -0
  442. package/dist/mcp.client.descriptor.js.map +1 -0
  443. package/dist/mcp.consumer.plugin.d.ts +4 -0
  444. package/dist/mcp.consumer.plugin.d.ts.map +1 -0
  445. package/dist/mcp.consumer.plugin.js +19 -0
  446. package/dist/mcp.consumer.plugin.js.map +1 -0
  447. package/dist/mcp.runtime.plugin.d.ts +10 -0
  448. package/dist/mcp.runtime.plugin.d.ts.map +1 -0
  449. package/dist/mcp.runtime.plugin.js +40 -0
  450. package/dist/mcp.runtime.plugin.js.map +1 -0
  451. package/dist/root-state.d.ts +3 -0
  452. package/dist/root-state.d.ts.map +1 -0
  453. package/dist/root-state.js +3 -0
  454. package/dist/root-state.js.map +1 -0
  455. package/dist/schemas/api-endpoint.d.ts +12 -0
  456. package/dist/schemas/api-endpoint.d.ts.map +1 -0
  457. package/dist/schemas/api-endpoint.js +11 -0
  458. package/dist/schemas/api-endpoint.js.map +1 -0
  459. package/dist/schemas/audit.d.ts +172 -0
  460. package/dist/schemas/audit.d.ts.map +1 -0
  461. package/dist/schemas/audit.js +82 -0
  462. package/dist/schemas/audit.js.map +1 -0
  463. package/dist/schemas/harness-identity.d.ts +41 -0
  464. package/dist/schemas/harness-identity.d.ts.map +1 -0
  465. package/dist/schemas/harness-identity.js +19 -0
  466. package/dist/schemas/harness-identity.js.map +1 -0
  467. package/dist/schemas/host-adapters.d.ts +14 -0
  468. package/dist/schemas/host-adapters.d.ts.map +1 -0
  469. package/dist/schemas/host-adapters.js +7 -0
  470. package/dist/schemas/host-adapters.js.map +1 -0
  471. package/dist/schemas/projection.d.ts +10 -0
  472. package/dist/schemas/projection.d.ts.map +1 -0
  473. package/dist/schemas/projection.js +9 -0
  474. package/dist/schemas/projection.js.map +1 -0
  475. package/dist/schemas/tool.d.ts +8 -0
  476. package/dist/schemas/tool.d.ts.map +1 -0
  477. package/dist/schemas/tool.js +8 -0
  478. package/dist/schemas/tool.js.map +1 -0
  479. package/dist/surface-mcp/build-provenance.d.ts +67 -0
  480. package/dist/surface-mcp/build-provenance.d.ts.map +1 -0
  481. package/dist/surface-mcp/build-provenance.js +287 -0
  482. package/dist/surface-mcp/build-provenance.js.map +1 -0
  483. package/dist/surface-mcp/crash-reporting.d.ts +28 -0
  484. package/dist/surface-mcp/crash-reporting.d.ts.map +1 -0
  485. package/dist/surface-mcp/crash-reporting.js +41 -0
  486. package/dist/surface-mcp/crash-reporting.js.map +1 -0
  487. package/dist/surface-mcp/executable-freshness-watch.d.ts +89 -0
  488. package/dist/surface-mcp/executable-freshness-watch.d.ts.map +1 -0
  489. package/dist/surface-mcp/executable-freshness-watch.js +225 -0
  490. package/dist/surface-mcp/executable-freshness-watch.js.map +1 -0
  491. package/dist/surface-mcp/host-provenance-banner.d.ts +49 -0
  492. package/dist/surface-mcp/host-provenance-banner.d.ts.map +1 -0
  493. package/dist/surface-mcp/host-provenance-banner.js +135 -0
  494. package/dist/surface-mcp/host-provenance-banner.js.map +1 -0
  495. package/dist/surface-mcp/index.d.ts +51 -0
  496. package/dist/surface-mcp/index.d.ts.map +1 -0
  497. package/dist/surface-mcp/index.js +92 -0
  498. package/dist/surface-mcp/index.js.map +1 -0
  499. package/dist/surface-mcp/local-tools-bootstrap.d.ts +36 -0
  500. package/dist/surface-mcp/local-tools-bootstrap.d.ts.map +1 -0
  501. package/dist/surface-mcp/local-tools-bootstrap.js +43 -0
  502. package/dist/surface-mcp/local-tools-bootstrap.js.map +1 -0
  503. package/dist/surface-mcp/mcp-serve.plugin.d.ts +9 -0
  504. package/dist/surface-mcp/mcp-serve.plugin.d.ts.map +1 -0
  505. package/dist/surface-mcp/mcp-serve.plugin.js +24 -0
  506. package/dist/surface-mcp/mcp-serve.plugin.js.map +1 -0
  507. package/dist/surface-mcp/project-config.d.ts +35 -0
  508. package/dist/surface-mcp/project-config.d.ts.map +1 -0
  509. package/dist/surface-mcp/project-config.js +74 -0
  510. package/dist/surface-mcp/project-config.js.map +1 -0
  511. package/dist/surface-mcp/serve-lifecycle.d.ts +102 -0
  512. package/dist/surface-mcp/serve-lifecycle.d.ts.map +1 -0
  513. package/dist/surface-mcp/serve-lifecycle.js +343 -0
  514. package/dist/surface-mcp/serve-lifecycle.js.map +1 -0
  515. package/dist/surface-mcp/session-bridge.d.ts +18 -0
  516. package/dist/surface-mcp/session-bridge.d.ts.map +1 -0
  517. package/dist/surface-mcp/session-bridge.js +26 -0
  518. package/dist/surface-mcp/session-bridge.js.map +1 -0
  519. package/dist/surface-mcp/subscriptions/session.bound.workspace.descriptor.d.ts +13 -0
  520. package/dist/surface-mcp/subscriptions/session.bound.workspace.descriptor.d.ts.map +1 -0
  521. package/dist/surface-mcp/subscriptions/session.bound.workspace.descriptor.js +13 -0
  522. package/dist/surface-mcp/subscriptions/session.bound.workspace.descriptor.js.map +1 -0
  523. package/dist/surface-mcp/subscriptions/session.bound.workspace.impl.consumer.d.ts +11 -0
  524. package/dist/surface-mcp/subscriptions/session.bound.workspace.impl.consumer.d.ts.map +1 -0
  525. package/dist/surface-mcp/subscriptions/session.bound.workspace.impl.consumer.js +36 -0
  526. package/dist/surface-mcp/subscriptions/session.bound.workspace.impl.consumer.js.map +1 -0
  527. package/dist/surface-mcp/workspace-warning.d.ts +16 -0
  528. package/dist/surface-mcp/workspace-warning.d.ts.map +1 -0
  529. package/dist/surface-mcp/workspace-warning.js +44 -0
  530. package/dist/surface-mcp/workspace-warning.js.map +1 -0
  531. package/dist/svelte/index.d.ts +12 -0
  532. package/dist/svelte/index.d.ts.map +1 -0
  533. package/dist/svelte/index.js +11 -0
  534. package/dist/svelte/mcp-svelte.plugin.d.ts +10 -0
  535. package/dist/svelte/mcp-svelte.plugin.d.ts.map +1 -0
  536. package/dist/svelte/mcp-svelte.plugin.js +24 -0
  537. package/dist/svelte/tool-widgets/VibesContextToolCard.svelte +91 -0
  538. package/dist/svelte/tool-widgets/VibesContextToolCard.svelte.d.ts +9 -0
  539. package/dist/svelte/tool-widgets/VibesContextToolCard.svelte.d.ts.map +1 -0
  540. package/dist/svelte/tool-widgets/index.d.ts +3 -0
  541. package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
  542. package/dist/svelte/tool-widgets/index.js +2 -0
  543. package/dist/svelte/tool-widgets/summary.d.ts +48 -0
  544. package/dist/svelte/tool-widgets/summary.d.ts.map +1 -0
  545. package/dist/svelte/tool-widgets/summary.js +117 -0
  546. package/dist/tools/vibes-context/schemas.d.ts +85 -0
  547. package/dist/tools/vibes-context/schemas.d.ts.map +1 -0
  548. package/dist/tools/vibes-context/schemas.js +76 -0
  549. package/dist/tools/vibes-context/schemas.js.map +1 -0
  550. package/dist/tools/vibes-context/vibes-context.descriptor.d.ts +4 -0
  551. package/dist/tools/vibes-context/vibes-context.descriptor.d.ts.map +1 -0
  552. package/dist/tools/vibes-context/vibes-context.descriptor.js +30 -0
  553. package/dist/tools/vibes-context/vibes-context.descriptor.js.map +1 -0
  554. package/dist/tools/vibes-context/vibes-context.impl.d.ts +34 -0
  555. package/dist/tools/vibes-context/vibes-context.impl.d.ts.map +1 -0
  556. package/dist/tools/vibes-context/vibes-context.impl.js +207 -0
  557. package/dist/tools/vibes-context/vibes-context.impl.js.map +1 -0
  558. package/dist/tui/index.d.ts +4 -0
  559. package/dist/tui/index.d.ts.map +1 -0
  560. package/dist/tui/index.js +4 -0
  561. package/dist/tui/index.js.map +1 -0
  562. package/dist/tui/mcp-health.d.ts +7 -0
  563. package/dist/tui/mcp-health.d.ts.map +1 -0
  564. package/dist/tui/mcp-health.js +16 -0
  565. package/dist/tui/mcp-health.js.map +1 -0
  566. package/dist/tui/mcp-tui.plugin.d.ts +3 -0
  567. package/dist/tui/mcp-tui.plugin.d.ts.map +1 -0
  568. package/dist/tui/mcp-tui.plugin.js +18 -0
  569. package/dist/tui/mcp-tui.plugin.js.map +1 -0
  570. package/dist/tui/mcp.tui-app.descriptor.d.ts +4 -0
  571. package/dist/tui/mcp.tui-app.descriptor.d.ts.map +1 -0
  572. package/dist/tui/mcp.tui-app.descriptor.js +19 -0
  573. package/dist/tui/mcp.tui-app.descriptor.js.map +1 -0
  574. package/dist/tui/mcp.tui-app.impl.consumer.d.ts +4 -0
  575. package/dist/tui/mcp.tui-app.impl.consumer.d.ts.map +1 -0
  576. package/dist/tui/mcp.tui-app.impl.consumer.js +48 -0
  577. package/dist/tui/mcp.tui-app.impl.consumer.js.map +1 -0
  578. package/dist/tui/mcp.tui-state.descriptor.d.ts +8 -0
  579. package/dist/tui/mcp.tui-state.descriptor.d.ts.map +1 -0
  580. package/dist/tui/mcp.tui-state.descriptor.js +37 -0
  581. package/dist/tui/mcp.tui-state.descriptor.js.map +1 -0
  582. package/dist/tui/mcp.tui-state.impl.consumer.d.ts +5 -0
  583. package/dist/tui/mcp.tui-state.impl.consumer.d.ts.map +1 -0
  584. package/dist/tui/mcp.tui-state.impl.consumer.js +97 -0
  585. package/dist/tui/mcp.tui-state.impl.consumer.js.map +1 -0
  586. package/dist/tui/mcp.tui-state.key.d.ts +45 -0
  587. package/dist/tui/mcp.tui-state.key.d.ts.map +1 -0
  588. package/dist/tui/mcp.tui-state.key.js +25 -0
  589. package/dist/tui/mcp.tui-state.key.js.map +1 -0
  590. package/dist/types.core.d.ts +25 -0
  591. package/dist/types.core.d.ts.map +1 -0
  592. package/dist/types.core.js +8 -0
  593. package/dist/types.core.js.map +1 -0
  594. package/dist/types.d.ts +71 -0
  595. package/dist/types.d.ts.map +1 -0
  596. package/dist/types.js +2 -0
  597. package/dist/types.js.map +1 -0
  598. package/dist/types.registry.d.ts +93 -0
  599. package/dist/types.registry.d.ts.map +1 -0
  600. package/dist/types.registry.js +32 -0
  601. package/dist/types.registry.js.map +1 -0
  602. package/package.json +323 -4
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Lift ambient collision fields off a tool result before output-schema
3
+ * validation.
4
+ *
5
+ * `external.file-access.ambient-drain` injects `notice` (and sometimes a
6
+ * string `messages` line) into whichever tool result is in flight — including
7
+ * `presence` / `brain` / `session`. Those organs use `z.strictObject` bodies.
8
+ * Leaving the envelope keys on the domain object makes MCP throw
9
+ * `Invalid output from '<tool>': <root>: Unrecognized key: "notice"` and
10
+ * the organ never reaches the agent (2026-08-28 grok session).
11
+ *
12
+ * Envelope data belongs on the MCP `_meta` + text prefix, not in the
13
+ * domain body. If the tool's own schema accepts `notice`, we leave it
14
+ * (workspace-fs collision tests still see the field on invokeTool results).
15
+ */
16
+ import * as z from 'zod/v4';
17
+ /** The domain object, kept as the owner handed it. JSON admission happens at serialization. */
18
+ const AmbientObjectSchema = z.object({
19
+ notice: z.unknown().optional(),
20
+ messages: z.unknown().optional()
21
+ }).passthrough();
22
+ /** Ambient injects a one-line string; domain `messages` fields are arrays/objects. */
23
+ function readAmbientString(value) {
24
+ const parsed = z.string().min(1).safeParse(value);
25
+ return parsed.success ? parsed.data : undefined;
26
+ }
27
+ function withAmbient(output, ambientNotice, ambientMessages) {
28
+ const lift = { output };
29
+ if (ambientNotice)
30
+ lift.ambientNotice = ambientNotice;
31
+ if (ambientMessages)
32
+ lift.ambientMessages = ambientMessages;
33
+ return lift;
34
+ }
35
+ export function liftAmbientEnvelope(output, schema) {
36
+ const carrier = AmbientObjectSchema.safeParse(output);
37
+ if (!carrier.success)
38
+ return { output };
39
+ const ambientNotice = readAmbientString(carrier.data.notice);
40
+ const ambientMessages = readAmbientString(carrier.data.messages);
41
+ if (!ambientNotice && !ambientMessages)
42
+ return { output };
43
+ if (!schema || schema.safeParse(output).success)
44
+ return withAmbient(output, schema ? undefined : ambientNotice, schema ? undefined : ambientMessages);
45
+ const stripped = { ...carrier.data };
46
+ if (ambientNotice)
47
+ delete stripped.notice;
48
+ if (ambientMessages)
49
+ delete stripped.messages;
50
+ if (!schema.safeParse(stripped).success)
51
+ return { output };
52
+ return withAmbient(stripped, ambientNotice, ambientMessages);
53
+ }
54
+ export function formatAmbientPrefix(lift) {
55
+ const lines = [];
56
+ if (lift.ambientNotice)
57
+ lines.push(lift.ambientNotice);
58
+ if (lift.ambientMessages)
59
+ lines.push(lift.ambientMessages);
60
+ return lines.length > 0 ? lines.join('\n') : undefined;
61
+ }
62
+ export function ambientMeta(lift) {
63
+ const meta = {};
64
+ if (lift.ambientNotice)
65
+ meta.ambientNotice = lift.ambientNotice;
66
+ if (lift.ambientMessages)
67
+ meta.ambientMessages = lift.ambientMessages;
68
+ return Object.keys(meta).length > 0 ? meta : undefined;
69
+ }
70
+ //# sourceMappingURL=ambient-envelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ambient-envelope.js","sourceRoot":"","sources":["../../../src/adapters/mcp/ambient-envelope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { PurposePreset } from '@vibesdotdev/tools/schemas/presets/schema';
2
+ import type { VibesRuntime } from '@vibesdotdev/kernel';
3
+ import { type JsonSchema } from '../zod-mcp.ts';
4
+ export interface McpToolCatalogEntry {
5
+ name: string;
6
+ description: string;
7
+ inputSchema: JsonSchema;
8
+ }
9
+ export declare function listMcpToolCatalog(runtime: VibesRuntime, options?: {
10
+ mcpClientId?: string;
11
+ preset?: string;
12
+ toolPatterns?: readonly string[];
13
+ customPresets?: Record<string, PurposePreset>;
14
+ }): McpToolCatalogEntry[];
15
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/adapters/mcp/catalog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAAyC,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAGvF,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,UAAU,CAAC;CACxB;AAUD,wBAAgB,kBAAkB,CACjC,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;CAAO,GACtI,mBAAmB,EAAE,CAYvB"}
@@ -0,0 +1,26 @@
1
+ import { runtimePurposePresets } from '@vibesdotdev/tools/schemas/presets/registry';
2
+ import * as z from 'zod/v4';
3
+ import { resolveMcpDescription, zodToMcpSchema } from "../zod-mcp.js";
4
+ import { selectMcpTools } from "./tool-selection.js";
5
+ function isToolAsset(descriptor) {
6
+ return descriptor.kind === 'tools/tool' && 'schemas' in descriptor;
7
+ }
8
+ function isZodType(value) {
9
+ return value instanceof z.ZodType;
10
+ }
11
+ export function listMcpToolCatalog(runtime, options = {}) {
12
+ if (!runtime.hasKind('tools/tool'))
13
+ return [];
14
+ const descriptors = runtime.query('tools/tool').enabled().descriptors().filter(isToolAsset);
15
+ return selectMcpTools(descriptors, { ...options, customPresets: runtimePurposePresets(runtime, options.customPresets) }).descriptors.flatMap((descriptor) => {
16
+ const input = descriptor.schemas.input;
17
+ if (!isZodType(input))
18
+ return [];
19
+ return [{
20
+ name: descriptor.id,
21
+ description: resolveMcpDescription(descriptor),
22
+ inputSchema: zodToMcpSchema(input).schema
23
+ }];
24
+ });
25
+ }
26
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/adapters/mcp/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAKpF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAmB,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAQrD,SAAS,WAAW,CAAC,UAA6B;IACjD,OAAO,UAAU,CAAC,IAAI,KAAK,YAAY,IAAI,SAAS,IAAI,UAAU,CAAC;AACpE,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAChC,OAAO,KAAK,YAAY,CAAC,CAAC,OAAO,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,kBAAkB,CACjC,OAAqB,EACrB,UAAsI,EAAE;IAExI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC5F,OAAO,cAAc,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC3J,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,OAAO,CAAC;gBACP,IAAI,EAAE,UAAU,CAAC,EAAE;gBACnB,WAAW,EAAE,qBAAqB,CAAC,UAAU,CAAC;gBAC9C,WAAW,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM;aACzC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Connection identity: who is on the other end of one MCP connection.
3
+ *
4
+ * Resolved once, when the connection initializes, from the `vibes/*` keys a
5
+ * relay stamps onto `initialize.params._meta`, then frozen on the connection.
6
+ * A shared host serves many agents at once, so identity never comes from the
7
+ * host's own environment and never from per-call `_meta` or tool arguments.
8
+ *
9
+ * Identity is admitted only from what the transport verified (RC08 U7,
10
+ * D-RC08): an isolated stdio server's launch identity (`stdio-launch`), or a
11
+ * relay that presented the shared host's secret (`mcp-relay-launch`). A
12
+ * declared identity without that verification is refused, never adopted
13
+ * (`admitConnectionCaller`).
14
+ *
15
+ * User, org and active project are deliberately NOT accepted here: they come
16
+ * from authenticated direct-tool context, and a client cannot claim them.
17
+ */
18
+ import { type RuntimeInvokeCaller, type VerifiedTransportIdentity } from '@vibesdotdev/kernel/schemas/invoke-caller';
19
+ import type { JsonObject } from '@vibesdotdev/kernel/schemas/json';
20
+ /** `VerifiedTransportIdentity.source` of an isolated stdio server's launch identity. */
21
+ export declare const STDIO_LAUNCH_SOURCE = "stdio-launch";
22
+ /** `VerifiedTransportIdentity.source` of a relay that presented the shared host's local attestation (the kernel's constant). */
23
+ export declare const RELAY_ATTESTATION_SOURCE = "mcp-relay-launch";
24
+ /**
25
+ * The shared host's `relayAttestation` check over a local-attestation
26
+ * verifier (runtime-rpc): the relay presents the host start's secret as its
27
+ * bearer; anything else (no header, another scheme, a wrong or rotated
28
+ * secret) is unattested. Constant time is the verifier's.
29
+ */
30
+ /** A local-attestation verifier: the presented secret, or none. */
31
+ export interface PresentedSecretVerifier {
32
+ verify(presented: string | undefined): boolean;
33
+ }
34
+ /** The check a relay's `Authorization` header is admitted through. */
35
+ export interface AuthorizationVerifier {
36
+ verify(authorization: string | null): boolean;
37
+ }
38
+ export declare function relayAttestationVerifier(verifier: PresentedSecretVerifier): AuthorizationVerifier;
39
+ /** `initialize._meta` keys a relay may use to declare its identity. */
40
+ export declare const CONNECTION_IDENTITY_META_KEYS: {
41
+ readonly agentId: "vibes/agent";
42
+ readonly harness: "vibes/harness";
43
+ readonly agentSystemId: "vibes/agentSystemId";
44
+ readonly harnessSessionId: "vibes/harnessSessionId";
45
+ readonly projectIds: "vibes/projectIds";
46
+ readonly home: "vibes/home";
47
+ };
48
+ export type ConnectionIdentityInput = {
49
+ readonly [K in keyof typeof CONNECTION_IDENTITY_META_KEYS]?: RuntimeInvokeCaller[K];
50
+ };
51
+ /** Write a connection identity as `initialize._meta` entries. */
52
+ export declare function connectionIdentityMeta(identity: ConnectionIdentityInput): JsonObject;
53
+ /** Read a connection identity back out of `initialize._meta`. */
54
+ export declare function connectionIdentityFromMeta(meta: JsonObject | undefined): RuntimeInvokeCaller | undefined;
55
+ /**
56
+ * Admit one tool call's caller from its connection (RC08 U7, D-RC08).
57
+ *
58
+ * - `verified` is what the transport established at connection time; the
59
+ * runtime's authenticated context adds user, org and active project to it.
60
+ * - `declared` is the identity the connection declared at `initialize`.
61
+ * - `call` is the per-call caller the session layer stamps; it owns
62
+ * participant and session binding.
63
+ *
64
+ * The declared connection fields win over the call's, as before, and every
65
+ * identity field must equal a verified one: an undeclared field is filled from
66
+ * verification; a declared agent, harness, harness session, user, org or active project that
67
+ * nothing verified, or that disagrees, is refused `PERMISSION_DENIED
68
+ * caller-identity-unverified` (`admitInvokeCaller`). Seat data (projects,
69
+ * declared home) travels as declared.
70
+ */
71
+ export declare function admitConnectionCaller(input: {
72
+ verified: VerifiedTransportIdentity | undefined;
73
+ declared: RuntimeInvokeCaller | undefined;
74
+ call: RuntimeInvokeCaller | undefined;
75
+ principal: {
76
+ userId?: unknown;
77
+ orgId?: unknown;
78
+ projectId?: unknown;
79
+ } | undefined;
80
+ }): RuntimeInvokeCaller | undefined;
81
+ //# sourceMappingURL=connection-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-identity.d.ts","sourceRoot":"","sources":["../../../src/adapters/mcp/connection-identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAGN,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,kCAAkC,CAAC;AAE9E,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,iBAAiB,CAAC;AAElD,gIAAgI;AAChI,eAAO,MAAM,wBAAwB,qBAAmC,CAAC;AAEzE;;;;;GAKG;AACH,mEAAmE;AACnE,MAAM,WAAW,uBAAuB;IACvC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CAC/C;AAED,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IACrC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;CAC9C;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,qBAAqB,CAOjG;AAED,uEAAuE;AACvE,eAAO,MAAM,6BAA6B;;;;;;;CAO6B,CAAC;AAWxE,MAAM,MAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,6BAA6B,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;CACnF,CAAC;AAaF,iEAAiE;AACjE,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,UAAU,CAQpF;AAED,iEAAiE;AACjE,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,UAAU,GAAG,SAAS,GAC1B,mBAAmB,GAAG,SAAS,CASjC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC5C,QAAQ,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAChD,QAAQ,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC1C,IAAI,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACtC,SAAS,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;CAClF,GAAG,mBAAmB,GAAG,SAAS,CAgBlC"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Connection identity: who is on the other end of one MCP connection.
3
+ *
4
+ * Resolved once, when the connection initializes, from the `vibes/*` keys a
5
+ * relay stamps onto `initialize.params._meta`, then frozen on the connection.
6
+ * A shared host serves many agents at once, so identity never comes from the
7
+ * host's own environment and never from per-call `_meta` or tool arguments.
8
+ *
9
+ * Identity is admitted only from what the transport verified (RC08 U7,
10
+ * D-RC08): an isolated stdio server's launch identity (`stdio-launch`), or a
11
+ * relay that presented the shared host's secret (`mcp-relay-launch`). A
12
+ * declared identity without that verification is refused, never adopted
13
+ * (`admitConnectionCaller`).
14
+ *
15
+ * User, org and active project are deliberately NOT accepted here: they come
16
+ * from authenticated direct-tool context, and a client cannot claim them.
17
+ */
18
+ import { admitInvokeCaller, WireInvokeCallerSchema } from '@vibesdotdev/kernel/schemas/invoke-caller';
19
+ import { MCP_RELAY_LAUNCH_IDENTITY_SOURCE } from '@vibesdotdev/kernel/schemas';
20
+ /** `VerifiedTransportIdentity.source` of an isolated stdio server's launch identity. */
21
+ export const STDIO_LAUNCH_SOURCE = 'stdio-launch';
22
+ /** `VerifiedTransportIdentity.source` of a relay that presented the shared host's local attestation (the kernel's constant). */
23
+ export const RELAY_ATTESTATION_SOURCE = MCP_RELAY_LAUNCH_IDENTITY_SOURCE;
24
+ export function relayAttestationVerifier(verifier) {
25
+ return {
26
+ verify(authorization) {
27
+ const bearer = /^Bearer\s+(\S+)\s*$/i.exec(authorization ?? '')?.[1];
28
+ return bearer !== undefined && verifier.verify(bearer);
29
+ }
30
+ };
31
+ }
32
+ /** `initialize._meta` keys a relay may use to declare its identity. */
33
+ export const CONNECTION_IDENTITY_META_KEYS = {
34
+ agentId: 'vibes/agent',
35
+ harness: 'vibes/harness',
36
+ agentSystemId: 'vibes/agentSystemId',
37
+ harnessSessionId: 'vibes/harnessSessionId',
38
+ projectIds: 'vibes/projectIds',
39
+ home: 'vibes/home'
40
+ };
41
+ const CONNECTION_IDENTITY_FIELDS = [
42
+ 'agentId',
43
+ 'harness',
44
+ 'agentSystemId',
45
+ 'harnessSessionId',
46
+ 'projectIds',
47
+ 'home'
48
+ ];
49
+ function isStringList(value) {
50
+ return Array.isArray(value);
51
+ }
52
+ function identityMetaValue(value) {
53
+ if (!isStringList(value))
54
+ return value;
55
+ const copy = [];
56
+ for (const item of value)
57
+ copy.push(item);
58
+ return copy;
59
+ }
60
+ /** Write a connection identity as `initialize._meta` entries. */
61
+ export function connectionIdentityMeta(identity) {
62
+ const meta = {};
63
+ for (const field of CONNECTION_IDENTITY_FIELDS) {
64
+ const value = identity[field];
65
+ if (value === undefined || (Array.isArray(value) && value.length === 0))
66
+ continue;
67
+ meta[CONNECTION_IDENTITY_META_KEYS[field]] = identityMetaValue(value);
68
+ }
69
+ return meta;
70
+ }
71
+ /** Read a connection identity back out of `initialize._meta`. */
72
+ export function connectionIdentityFromMeta(meta) {
73
+ if (!meta)
74
+ return undefined;
75
+ const raw = {};
76
+ for (const field of CONNECTION_IDENTITY_FIELDS) {
77
+ const value = meta[CONNECTION_IDENTITY_META_KEYS[field]];
78
+ if (value !== undefined)
79
+ raw[field] = value;
80
+ }
81
+ const parsed = WireInvokeCallerSchema.parse(raw);
82
+ return parsed ? Object.freeze(parsed) : undefined;
83
+ }
84
+ /**
85
+ * Admit one tool call's caller from its connection (RC08 U7, D-RC08).
86
+ *
87
+ * - `verified` is what the transport established at connection time; the
88
+ * runtime's authenticated context adds user, org and active project to it.
89
+ * - `declared` is the identity the connection declared at `initialize`.
90
+ * - `call` is the per-call caller the session layer stamps; it owns
91
+ * participant and session binding.
92
+ *
93
+ * The declared connection fields win over the call's, as before, and every
94
+ * identity field must equal a verified one: an undeclared field is filled from
95
+ * verification; a declared agent, harness, harness session, user, org or active project that
96
+ * nothing verified, or that disagrees, is refused `PERMISSION_DENIED
97
+ * caller-identity-unverified` (`admitInvokeCaller`). Seat data (projects,
98
+ * declared home) travels as declared.
99
+ */
100
+ export function admitConnectionCaller(input) {
101
+ const principal = WireInvokeCallerSchema.parse({ userId: input.principal?.userId, orgId: input.principal?.orgId, projectId: input.principal?.projectId });
102
+ const verifiedCaller = WireInvokeCallerSchema.parse({ ...input.verified?.caller, ...principal });
103
+ const verified = verifiedCaller
104
+ ? { source: input.verified?.source ?? 'runtime-principal', caller: verifiedCaller }
105
+ : undefined;
106
+ return admitInvokeCaller({
107
+ ...input.call,
108
+ ...input.verified?.caller,
109
+ ...input.declared,
110
+ participantId: input.call?.participantId,
111
+ sessionId: input.call?.sessionId
112
+ }, verified);
113
+ }
114
+ //# sourceMappingURL=connection-identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-identity.js","sourceRoot":"","sources":["../../../src/adapters/mcp/connection-identity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * MCP Tool Context Types and Helpers
3
+ *
4
+ * Tool-runtime context with CLI/AI/auth/PM runtime fields.
5
+ * These types compose tool-runtime context for MCP tool execution.
6
+ */
7
+ import * as z from 'zod/v4';
8
+ import type { PMContext } from '@vibesdotdev/pm/context';
9
+ import type { CLIAIContext } from '@vibesdotdev/ai/generation/text/schemas/context';
10
+ import type { ApiClientImplementation } from '@vibesdotdev/client/schemas';
11
+ import type { LogLevel } from '@vibesdotdev/logging/schemas/entry';
12
+ import type { IUIHandles } from '@vibesdotdev/cli/schemas/types';
13
+ import type { AuthContext } from '@vibesdotdev/auth/schemas/provider';
14
+ import type { RuntimeContextMetadata } from '@vibesdotdev/tools/schemas/types';
15
+ import type { McpUser, McpToolResult, McpClientInfo, McpConnectionState, SamplingRequest, SamplingResult } from '@vibesdotdev/mcp/types';
16
+ import type { VibesRuntime } from '@vibesdotdev/kernel';
17
+ /** String-keyed record whose values are validated by the reader, not by the type. */
18
+ declare const McpRecordSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
19
+ export type McpRecord = z.infer<typeof McpRecordSchema>;
20
+ /**
21
+ * Request metadata passed into MCP tool context creation.
22
+ * Allows HTTP adapters to forward headers/cookies/session/project info.
23
+ */
24
+ export interface McpHttpRequest {
25
+ toolId: string;
26
+ toolCallId?: string;
27
+ headers?: Record<string, string | string[] | undefined>;
28
+ cookies?: Record<string, string>;
29
+ sessionId?: string;
30
+ projectId?: string;
31
+ workspacePath?: string;
32
+ }
33
+ /**
34
+ * Workspace source enumeration
35
+ */
36
+ export type WorkspaceSource = 'arguments' | 'config' | 'environment' | 'cli';
37
+ /**
38
+ * Workspace context for MCP tool execution
39
+ */
40
+ export interface WorkspaceContext {
41
+ path: string;
42
+ source: WorkspaceSource;
43
+ }
44
+ /**
45
+ * MCP Server Runtime Configuration
46
+ */
47
+ export interface McpServerRuntimeConfig {
48
+ auth?: {};
49
+ mode?: 'stdio' | 'http';
50
+ http?: {
51
+ port: number;
52
+ host?: string;
53
+ sessionTimeoutMs?: number;
54
+ sessionCleanupIntervalMs?: number;
55
+ };
56
+ logging?: {
57
+ level?: LogLevel;
58
+ logFile?: string;
59
+ };
60
+ }
61
+ /**
62
+ * MCP Tool Execution Context
63
+ * Contains full CLI runtime context plus MCP-specific data
64
+ */
65
+ export interface McpToolContext {
66
+ /** API client for making authenticated requests (canonical property) */
67
+ api?: ApiClientImplementation;
68
+ /** Auth context with user info and credentials */
69
+ auth?: AuthContext;
70
+ /** CLI configuration */
71
+ config?: McpRecord;
72
+ /** Environment configuration */
73
+ environment?: McpRecord;
74
+ /** UI toolkit for user interaction */
75
+ ui?: IUIHandles;
76
+ /** Process manager for background jobs */
77
+ pm?: PMContext;
78
+ /** AI context with generation client */
79
+ ai?: CLIAIContext;
80
+ /** Feature-specific runtime context */
81
+ dev?: McpRecord;
82
+ /** Tool runtime metadata */
83
+ runtime?: Partial<RuntimeContextMetadata>;
84
+ /** Authenticated user info */
85
+ user: McpUser | null;
86
+ /** Request timestamp */
87
+ timestamp: Date;
88
+ /** Tool call parameters */
89
+ params?: McpRecord;
90
+ /** Request sampling callback for LLM interactions */
91
+ requestSampling?: (request: SamplingRequest) => Promise<SamplingResult>;
92
+ /** Workspace context */
93
+ workspace?: WorkspaceContext;
94
+ /** Workspace root path */
95
+ workspacePath?: string;
96
+ /** MCP client info */
97
+ clientInfo?: McpClientInfo;
98
+ /** Connection state */
99
+ connection?: McpConnectionState;
100
+ /** Factory to create API client on demand */
101
+ createClient?: () => Promise<ApiClientImplementation>;
102
+ }
103
+ /**
104
+ * MCP Tool Execution Info
105
+ */
106
+ export interface McpToolExecutionInfo {
107
+ callId: string;
108
+ runtime: VibesRuntime;
109
+ workspacePath: string | null;
110
+ transport: 'stdio' | 'http';
111
+ sessionId: string | undefined;
112
+ projectId: string | undefined;
113
+ }
114
+ /**
115
+ * CLI Runtime context subset for MCP tool execution
116
+ */
117
+ export interface McpRuntimeContext extends McpRecord {
118
+ workspacePath?: string;
119
+ /** Workspace resolution options */
120
+ options?: {
121
+ workspace?: string;
122
+ cwd?: string;
123
+ };
124
+ environment?: McpRecord | null;
125
+ }
126
+ /**
127
+ * Prepare MCP tool execution from CLI context and HTTP request
128
+ * @deprecated Use prepareMcpToolExecutionAsync instead
129
+ */
130
+ export declare function prepareMcpToolExecution(_cliContext: McpRuntimeContext, _request: McpHttpRequest): never;
131
+ /**
132
+ * Async version that accepts runtime directly
133
+ * Validates headers, cookies, session ID, and project ID before use.
134
+ */
135
+ export declare function prepareMcpToolExecutionAsync(runtime: VibesRuntime, cliContext: McpRuntimeContext, request: McpHttpRequest): McpToolExecutionInfo;
136
+ export type { McpUser, McpToolResult };
137
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/adapters/mcp/context.ts"],"names":[],"mappings":"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"}