@frontmcp/sdk 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1053) hide show
  1. package/{src/auth → auth}/instances/instance.local-primary-auth.d.ts +1 -1
  2. package/{src/auth → auth}/instances/instance.remote-primary-auth.d.ts +1 -1
  3. package/{src/auth → auth}/session/index.d.ts +1 -0
  4. package/auth/session/vercel-kv-session.store.d.ts +96 -0
  5. package/{src/common → common}/interfaces/internal/primary-auth-provider.interface.d.ts +1 -4
  6. package/{src/common → common}/metadata/front-mcp.metadata.d.ts +1779 -67
  7. package/{src/common → common}/metadata/prompt.metadata.d.ts +4 -0
  8. package/{src/common → common}/metadata/resource.metadata.d.ts +8 -0
  9. package/{src/common → common}/metadata/tool-ui.metadata.d.ts +2 -2
  10. package/{src/common → common}/metadata/tool.metadata.d.ts +4 -0
  11. package/{src/common → common}/schemas/http-output.schema.d.ts +24 -6
  12. package/common/types/options/auth/app-auth.schema.d.ts +275 -0
  13. package/common/types/options/auth/auth.interfaces.d.ts +461 -0
  14. package/common/types/options/auth/auth.schema.d.ts +284 -0
  15. package/common/types/options/auth/auth.utils.d.ts +32 -0
  16. package/common/types/options/auth/index.d.ts +16 -0
  17. package/common/types/options/auth/orchestrated.schema.d.ts +381 -0
  18. package/common/types/options/auth/public.schema.d.ts +42 -0
  19. package/common/types/options/auth/shared.schemas.d.ts +120 -0
  20. package/common/types/options/auth/transparent.schema.d.ts +56 -0
  21. package/common/types/options/auth/transport.deprecated.d.ts +63 -0
  22. package/{src/common → common}/types/options/index.d.ts +1 -1
  23. package/common/types/options/redis.options.d.ts +190 -0
  24. package/{src/common → common}/types/options/server-info.options.d.ts +4 -0
  25. package/{src/common → common}/types/options/transport.options.d.ts +74 -5
  26. package/{src/common → common}/utils/decide-request-intent.utils.d.ts +6 -7
  27. package/common/utils/global-config.utils.d.ts +36 -0
  28. package/{src/common → common}/utils/index.d.ts +1 -0
  29. package/{src/completion → completion}/flows/complete.flow.d.ts +6 -8
  30. package/{src/errors → errors}/index.d.ts +1 -1
  31. package/{src/errors → errors}/mcp.error.d.ts +9 -0
  32. package/esm/index.mjs +22664 -0
  33. package/esm/mcp-apps/index.mjs +723 -0
  34. package/esm/package.json +81 -0
  35. package/{src/front-mcp → front-mcp}/front-mcp.providers.d.ts +246 -38
  36. package/front-mcp/index.d.ts +2 -0
  37. package/{src/index.d.ts → index.d.ts} +1 -1
  38. package/index.js +22957 -0
  39. package/logger/logger.tokens.d.ts +1 -0
  40. package/{src/logging → logging}/flows/set-level.flow.d.ts +6 -8
  41. package/mcp-apps/index.js +799 -0
  42. package/package.json +37 -17
  43. package/{src/prompt → prompt}/flows/get-prompt.flow.d.ts +14 -8
  44. package/{src/prompt → prompt}/flows/prompts-list.flow.d.ts +8 -7
  45. package/{src/resource → resource}/flows/read-resource.flow.d.ts +8 -9
  46. package/{src/resource → resource}/flows/resource-templates-list.flow.d.ts +8 -7
  47. package/{src/resource → resource}/flows/resources-list.flow.d.ts +8 -7
  48. package/{src/resource → resource}/flows/subscribe-resource.flow.d.ts +6 -8
  49. package/{src/resource → resource}/flows/unsubscribe-resource.flow.d.ts +6 -8
  50. package/store/adapters/store.vercel-kv.adapter.d.ts +86 -0
  51. package/{src/store → store}/index.d.ts +2 -0
  52. package/store/store.factory.d.ts +86 -0
  53. package/{src/tool → tool}/flows/call-tool.flow.d.ts +18 -9
  54. package/{src/tool → tool}/flows/tools-list.flow.d.ts +9 -8
  55. package/{src/tool → tool}/ui/index.d.ts +4 -4
  56. package/{src/tool → tool}/ui/platform-adapters.d.ts +2 -2
  57. package/{src/tool → tool}/ui/template-helpers.d.ts +5 -7
  58. package/{src/tool → tool}/ui/ui-resource.handler.d.ts +1 -1
  59. package/{src/transport → transport}/mcp-handlers/complete-request.handler.d.ts +4 -15
  60. package/{src/transport → transport}/mcp-handlers/get-prompt-request.handler.d.ts +5 -15
  61. package/{src/transport → transport}/mcp-handlers/index.d.ts +67 -195
  62. package/{src/transport → transport}/mcp-handlers/list-prompts-request.handler.d.ts +5 -15
  63. package/{src/transport → transport}/mcp-handlers/list-resource-templates-request.handler.d.ts +5 -15
  64. package/{src/transport → transport}/mcp-handlers/list-resources-request.handler.d.ts +5 -15
  65. package/{src/transport → transport}/mcp-handlers/list-tools-request.handler.d.ts +5 -15
  66. package/{src/transport → transport}/mcp-handlers/logging-set-level-request.handler.d.ts +3 -14
  67. package/{src/transport → transport}/mcp-handlers/read-resource-request.handler.d.ts +4 -15
  68. package/{src/transport → transport}/mcp-handlers/subscribe-request.handler.d.ts +3 -14
  69. package/{src/transport → transport}/mcp-handlers/unsubscribe-request.handler.d.ts +3 -14
  70. package/{src/transport → transport}/transport.registry.d.ts +5 -1
  71. package/README.md +0 -460
  72. package/src/adapter/adapter.instance.js +0 -70
  73. package/src/adapter/adapter.instance.js.map +0 -1
  74. package/src/adapter/adapter.regsitry.js +0 -54
  75. package/src/adapter/adapter.regsitry.js.map +0 -1
  76. package/src/adapter/adapter.utils.js +0 -83
  77. package/src/adapter/adapter.utils.js.map +0 -1
  78. package/src/app/app.registry.js +0 -66
  79. package/src/app/app.registry.js.map +0 -1
  80. package/src/app/app.utils.js +0 -58
  81. package/src/app/app.utils.js.map +0 -1
  82. package/src/app/instances/app.local.instance.js +0 -67
  83. package/src/app/instances/app.local.instance.js.map +0 -1
  84. package/src/app/instances/app.remote.instance.js +0 -36
  85. package/src/app/instances/app.remote.instance.js.map +0 -1
  86. package/src/app/instances/index.js +0 -6
  87. package/src/app/instances/index.js.map +0 -1
  88. package/src/auth/auth.registry.js +0 -219
  89. package/src/auth/auth.registry.js.map +0 -1
  90. package/src/auth/auth.utils.js +0 -84
  91. package/src/auth/auth.utils.js.map +0 -1
  92. package/src/auth/authorization/authorization.class.js +0 -217
  93. package/src/auth/authorization/authorization.class.js.map +0 -1
  94. package/src/auth/authorization/authorization.types.js +0 -79
  95. package/src/auth/authorization/authorization.types.js.map +0 -1
  96. package/src/auth/authorization/index.js +0 -19
  97. package/src/auth/authorization/index.js.map +0 -1
  98. package/src/auth/authorization/orchestrated.authorization.js +0 -306
  99. package/src/auth/authorization/orchestrated.authorization.js.map +0 -1
  100. package/src/auth/authorization/public.authorization.js +0 -132
  101. package/src/auth/authorization/public.authorization.js.map +0 -1
  102. package/src/auth/authorization/transparent.authorization.js +0 -147
  103. package/src/auth/authorization/transparent.authorization.js.map +0 -1
  104. package/src/auth/consent/consent.types.js +0 -119
  105. package/src/auth/consent/consent.types.js.map +0 -1
  106. package/src/auth/consent/index.js +0 -13
  107. package/src/auth/consent/index.js.map +0 -1
  108. package/src/auth/detection/auth-provider-detection.js +0 -230
  109. package/src/auth/detection/auth-provider-detection.js.map +0 -1
  110. package/src/auth/detection/index.js +0 -15
  111. package/src/auth/detection/index.js.map +0 -1
  112. package/src/auth/flows/auth.verify.flow.js +0 -379
  113. package/src/auth/flows/auth.verify.flow.js.map +0 -1
  114. package/src/auth/flows/oauth.authorize.flow.js +0 -822
  115. package/src/auth/flows/oauth.authorize.flow.js.map +0 -1
  116. package/src/auth/flows/oauth.callback.flow.js +0 -357
  117. package/src/auth/flows/oauth.callback.flow.js.map +0 -1
  118. package/src/auth/flows/oauth.register.flow.js +0 -201
  119. package/src/auth/flows/oauth.register.flow.js.map +0 -1
  120. package/src/auth/flows/oauth.token.flow.js +0 -319
  121. package/src/auth/flows/oauth.token.flow.js.map +0 -1
  122. package/src/auth/flows/session.verify.flow.js +0 -304
  123. package/src/auth/flows/session.verify.flow.js.map +0 -1
  124. package/src/auth/flows/well-known.jwks.flow.js +0 -89
  125. package/src/auth/flows/well-known.jwks.flow.js.map +0 -1
  126. package/src/auth/flows/well-known.oauth-authorization-server.flow.js +0 -122
  127. package/src/auth/flows/well-known.oauth-authorization-server.flow.js.map +0 -1
  128. package/src/auth/flows/well-known.prm.flow.js +0 -106
  129. package/src/auth/flows/well-known.prm.flow.js.map +0 -1
  130. package/src/auth/instances/instance.local-primary-auth.js +0 -308
  131. package/src/auth/instances/instance.local-primary-auth.js.map +0 -1
  132. package/src/auth/instances/instance.remote-primary-auth.js +0 -49
  133. package/src/auth/instances/instance.remote-primary-auth.js.map +0 -1
  134. package/src/auth/jwks/dev-key-persistence.js +0 -219
  135. package/src/auth/jwks/dev-key-persistence.js.map +0 -1
  136. package/src/auth/jwks/index.js +0 -7
  137. package/src/auth/jwks/index.js.map +0 -1
  138. package/src/auth/jwks/jwks.service.js +0 -303
  139. package/src/auth/jwks/jwks.service.js.map +0 -1
  140. package/src/auth/jwks/jwks.types.js +0 -3
  141. package/src/auth/jwks/jwks.types.js.map +0 -1
  142. package/src/auth/jwks/jwks.utils.js +0 -32
  143. package/src/auth/jwks/jwks.utils.js.map +0 -1
  144. package/src/auth/machine-id.js +0 -32
  145. package/src/auth/machine-id.js.map +0 -1
  146. package/src/auth/oauth/flows/oauth.authorize.flow.js +0 -33
  147. package/src/auth/oauth/flows/oauth.authorize.flow.js.map +0 -1
  148. package/src/auth/oauth/flows/oauth.device-authorization.flow.js +0 -48
  149. package/src/auth/oauth/flows/oauth.device-authorization.flow.js.map +0 -1
  150. package/src/auth/oauth/flows/oauth.introspect.flow.js +0 -28
  151. package/src/auth/oauth/flows/oauth.introspect.flow.js.map +0 -1
  152. package/src/auth/oauth/flows/oauth.par.flow.js +0 -29
  153. package/src/auth/oauth/flows/oauth.par.flow.js.map +0 -1
  154. package/src/auth/oauth/flows/oauth.revoke.flow.js +0 -27
  155. package/src/auth/oauth/flows/oauth.revoke.flow.js.map +0 -1
  156. package/src/auth/oauth/flows/oauth.token.flow.js +0 -59
  157. package/src/auth/oauth/flows/oauth.token.flow.js.map +0 -1
  158. package/src/auth/oauth/flows/oauth.userinfo.flow.js +0 -24
  159. package/src/auth/oauth/flows/oauth.userinfo.flow.js.map +0 -1
  160. package/src/auth/oauth/flows/oidc.logout.flow.js +0 -20
  161. package/src/auth/oauth/flows/oidc.logout.flow.js.map +0 -1
  162. package/src/auth/session/authorization-vault.js +0 -817
  163. package/src/auth/session/authorization-vault.js.map +0 -1
  164. package/src/auth/session/authorization.store.js +0 -323
  165. package/src/auth/session/authorization.store.js.map +0 -1
  166. package/src/auth/session/encrypted-authorization-vault.js +0 -493
  167. package/src/auth/session/encrypted-authorization-vault.js.map +0 -1
  168. package/src/auth/session/index.js +0 -16
  169. package/src/auth/session/index.js.map +0 -1
  170. package/src/auth/session/record/session.base.js +0 -125
  171. package/src/auth/session/record/session.base.js.map +0 -1
  172. package/src/auth/session/record/session.stateful.js +0 -55
  173. package/src/auth/session/record/session.stateful.js.map +0 -1
  174. package/src/auth/session/record/session.stateless.js +0 -32
  175. package/src/auth/session/record/session.stateless.js.map +0 -1
  176. package/src/auth/session/record/session.transparent.js +0 -22
  177. package/src/auth/session/record/session.transparent.js.map +0 -1
  178. package/src/auth/session/redis-session.store.js +0 -204
  179. package/src/auth/session/redis-session.store.js.map +0 -1
  180. package/src/auth/session/session.crypto.js +0 -47
  181. package/src/auth/session/session.crypto.js.map +0 -1
  182. package/src/auth/session/session.schema.js +0 -13
  183. package/src/auth/session/session.schema.js.map +0 -1
  184. package/src/auth/session/session.service.js +0 -105
  185. package/src/auth/session/session.service.js.map +0 -1
  186. package/src/auth/session/session.transport.js +0 -20
  187. package/src/auth/session/session.transport.js.map +0 -1
  188. package/src/auth/session/session.types.js +0 -4
  189. package/src/auth/session/session.types.js.map +0 -1
  190. package/src/auth/session/token.refresh.js +0 -63
  191. package/src/auth/session/token.refresh.js.map +0 -1
  192. package/src/auth/session/token.store.js +0 -53
  193. package/src/auth/session/token.store.js.map +0 -1
  194. package/src/auth/session/token.vault.js +0 -54
  195. package/src/auth/session/token.vault.js.map +0 -1
  196. package/src/auth/session/transport-session.manager.js +0 -298
  197. package/src/auth/session/transport-session.manager.js.map +0 -1
  198. package/src/auth/session/transport-session.types.js +0 -111
  199. package/src/auth/session/transport-session.types.js.map +0 -1
  200. package/src/auth/session/utils/auth-token.utils.js +0 -57
  201. package/src/auth/session/utils/auth-token.utils.js.map +0 -1
  202. package/src/auth/session/utils/session-id.utils.js +0 -217
  203. package/src/auth/session/utils/session-id.utils.js.map +0 -1
  204. package/src/auth/session/utils/tiny-ttl-cache.js +0 -26
  205. package/src/auth/session/utils/tiny-ttl-cache.js.map +0 -1
  206. package/src/auth/session/vault-encryption.js +0 -263
  207. package/src/auth/session/vault-encryption.js.map +0 -1
  208. package/src/auth/ui/base-layout.js +0 -279
  209. package/src/auth/ui/base-layout.js.map +0 -1
  210. package/src/auth/ui/index.js +0 -34
  211. package/src/auth/ui/index.js.map +0 -1
  212. package/src/auth/ui/templates.js +0 -426
  213. package/src/auth/ui/templates.js.map +0 -1
  214. package/src/auth/utils/audience.validator.js +0 -196
  215. package/src/auth/utils/audience.validator.js.map +0 -1
  216. package/src/auth/utils/index.js +0 -7
  217. package/src/auth/utils/index.js.map +0 -1
  218. package/src/auth/utils/www-authenticate.utils.js +0 -183
  219. package/src/auth/utils/www-authenticate.utils.js.map +0 -1
  220. package/src/common/common.schema.js +0 -35
  221. package/src/common/common.schema.js.map +0 -1
  222. package/src/common/constants.js +0 -13
  223. package/src/common/constants.js.map +0 -1
  224. package/src/common/decorators/adapter.decorator.js +0 -20
  225. package/src/common/decorators/adapter.decorator.js.map +0 -1
  226. package/src/common/decorators/app.decorator.js +0 -44
  227. package/src/common/decorators/app.decorator.js.map +0 -1
  228. package/src/common/decorators/auth-provider.decorator.js +0 -20
  229. package/src/common/decorators/auth-provider.decorator.js.map +0 -1
  230. package/src/common/decorators/decorator-utils.js +0 -195
  231. package/src/common/decorators/decorator-utils.js.map +0 -1
  232. package/src/common/decorators/flow.decorator.js +0 -19
  233. package/src/common/decorators/flow.decorator.js.map +0 -1
  234. package/src/common/decorators/front-mcp.decorator.js +0 -67
  235. package/src/common/decorators/front-mcp.decorator.js.map +0 -1
  236. package/src/common/decorators/hook.decorator.js +0 -178
  237. package/src/common/decorators/hook.decorator.js.map +0 -1
  238. package/src/common/decorators/index.js +0 -16
  239. package/src/common/decorators/index.js.map +0 -1
  240. package/src/common/decorators/logger.decorator.js +0 -20
  241. package/src/common/decorators/logger.decorator.js.map +0 -1
  242. package/src/common/decorators/plugin.decorator.js +0 -39
  243. package/src/common/decorators/plugin.decorator.js.map +0 -1
  244. package/src/common/decorators/prompt.decorator.js +0 -38
  245. package/src/common/decorators/prompt.decorator.js.map +0 -1
  246. package/src/common/decorators/provider.decorator.js +0 -20
  247. package/src/common/decorators/provider.decorator.js.map +0 -1
  248. package/src/common/decorators/resource.decorator.js +0 -94
  249. package/src/common/decorators/resource.decorator.js.map +0 -1
  250. package/src/common/decorators/tool.decorator.js +0 -45
  251. package/src/common/decorators/tool.decorator.js.map +0 -1
  252. package/src/common/dynamic/dynamic.adapter.js +0 -28
  253. package/src/common/dynamic/dynamic.adapter.js.map +0 -1
  254. package/src/common/dynamic/dynamic.plugin.js +0 -42
  255. package/src/common/dynamic/dynamic.plugin.js.map +0 -1
  256. package/src/common/dynamic/dynamic.utils.js +0 -27
  257. package/src/common/dynamic/dynamic.utils.js.map +0 -1
  258. package/src/common/dynamic/index.js +0 -6
  259. package/src/common/dynamic/index.js.map +0 -1
  260. package/src/common/entries/adapter.entry.js +0 -8
  261. package/src/common/entries/adapter.entry.js.map +0 -1
  262. package/src/common/entries/app.entry.js +0 -9
  263. package/src/common/entries/app.entry.js.map +0 -1
  264. package/src/common/entries/auth-provider.entry.js +0 -8
  265. package/src/common/entries/auth-provider.entry.js.map +0 -1
  266. package/src/common/entries/base.entry.js +0 -17
  267. package/src/common/entries/base.entry.js.map +0 -1
  268. package/src/common/entries/flow.entry.js +0 -21
  269. package/src/common/entries/flow.entry.js.map +0 -1
  270. package/src/common/entries/hook.entry.js +0 -20
  271. package/src/common/entries/hook.entry.js.map +0 -1
  272. package/src/common/entries/index.js +0 -17
  273. package/src/common/entries/index.js.map +0 -1
  274. package/src/common/entries/logger.entry.js +0 -8
  275. package/src/common/entries/logger.entry.js.map +0 -1
  276. package/src/common/entries/plugin.entry.js +0 -8
  277. package/src/common/entries/plugin.entry.js.map +0 -1
  278. package/src/common/entries/prompt.entry.js +0 -18
  279. package/src/common/entries/prompt.entry.js.map +0 -1
  280. package/src/common/entries/provider.entry.js +0 -8
  281. package/src/common/entries/provider.entry.js.map +0 -1
  282. package/src/common/entries/resource.entry.js +0 -35
  283. package/src/common/entries/resource.entry.js.map +0 -1
  284. package/src/common/entries/scope.entry.js +0 -14
  285. package/src/common/entries/scope.entry.js.map +0 -1
  286. package/src/common/entries/tool.entry.js +0 -31
  287. package/src/common/entries/tool.entry.js.map +0 -1
  288. package/src/common/flow/flow.utils.js +0 -96
  289. package/src/common/flow/flow.utils.js.map +0 -1
  290. package/src/common/index.js +0 -20
  291. package/src/common/index.js.map +0 -1
  292. package/src/common/interfaces/adapter.interface.js +0 -3
  293. package/src/common/interfaces/adapter.interface.js.map +0 -1
  294. package/src/common/interfaces/app.interface.js +0 -3
  295. package/src/common/interfaces/app.interface.js.map +0 -1
  296. package/src/common/interfaces/auth-hook.interface.js +0 -135
  297. package/src/common/interfaces/auth-hook.interface.js.map +0 -1
  298. package/src/common/interfaces/auth-provider.interface.js +0 -18
  299. package/src/common/interfaces/auth-provider.interface.js.map +0 -1
  300. package/src/common/interfaces/base.interface.js +0 -3
  301. package/src/common/interfaces/base.interface.js.map +0 -1
  302. package/src/common/interfaces/execution-context.interface.js +0 -166
  303. package/src/common/interfaces/execution-context.interface.js.map +0 -1
  304. package/src/common/interfaces/flow.interface.js +0 -95
  305. package/src/common/interfaces/flow.interface.js.map +0 -1
  306. package/src/common/interfaces/front-mcp.interface.js +0 -3
  307. package/src/common/interfaces/front-mcp.interface.js.map +0 -1
  308. package/src/common/interfaces/hook.interface.js +0 -3
  309. package/src/common/interfaces/hook.interface.js.map +0 -1
  310. package/src/common/interfaces/index.js +0 -21
  311. package/src/common/interfaces/index.js.map +0 -1
  312. package/src/common/interfaces/internal/flow.utils.js +0 -83
  313. package/src/common/interfaces/internal/flow.utils.js.map +0 -1
  314. package/src/common/interfaces/internal/index.js +0 -7
  315. package/src/common/interfaces/internal/index.js.map +0 -1
  316. package/src/common/interfaces/internal/primary-auth-provider.interface.js +0 -81
  317. package/src/common/interfaces/internal/primary-auth-provider.interface.js.map +0 -1
  318. package/src/common/interfaces/internal/registry.interface.js +0 -3
  319. package/src/common/interfaces/internal/registry.interface.js.map +0 -1
  320. package/src/common/interfaces/logger.interface.js +0 -10
  321. package/src/common/interfaces/logger.interface.js.map +0 -1
  322. package/src/common/interfaces/plugin.interface.js +0 -3
  323. package/src/common/interfaces/plugin.interface.js.map +0 -1
  324. package/src/common/interfaces/prompt.interface.js +0 -81
  325. package/src/common/interfaces/prompt.interface.js.map +0 -1
  326. package/src/common/interfaces/provider.interface.js +0 -18
  327. package/src/common/interfaces/provider.interface.js.map +0 -1
  328. package/src/common/interfaces/resource.interface.js +0 -56
  329. package/src/common/interfaces/resource.interface.js.map +0 -1
  330. package/src/common/interfaces/scope.interface.js +0 -3
  331. package/src/common/interfaces/scope.interface.js.map +0 -1
  332. package/src/common/interfaces/server.interface.js +0 -18
  333. package/src/common/interfaces/server.interface.js.map +0 -1
  334. package/src/common/interfaces/session-hook.interface.js +0 -140
  335. package/src/common/interfaces/session-hook.interface.js.map +0 -1
  336. package/src/common/interfaces/tool-hook.interface.js +0 -92
  337. package/src/common/interfaces/tool-hook.interface.js.map +0 -1
  338. package/src/common/interfaces/tool.interface.js +0 -117
  339. package/src/common/interfaces/tool.interface.js.map +0 -1
  340. package/src/common/metadata/adapter.metadata.js +0 -10
  341. package/src/common/metadata/adapter.metadata.js.map +0 -1
  342. package/src/common/metadata/app.metadata.js +0 -30
  343. package/src/common/metadata/app.metadata.js.map +0 -1
  344. package/src/common/metadata/auth-provider.metadata.js +0 -19
  345. package/src/common/metadata/auth-provider.metadata.js.map +0 -1
  346. package/src/common/metadata/flow.metadata.js +0 -15
  347. package/src/common/metadata/flow.metadata.js.map +0 -1
  348. package/src/common/metadata/front-mcp.metadata.js +0 -29
  349. package/src/common/metadata/front-mcp.metadata.js.map +0 -1
  350. package/src/common/metadata/hook.metadata.js +0 -3
  351. package/src/common/metadata/hook.metadata.js.map +0 -1
  352. package/src/common/metadata/index.js +0 -17
  353. package/src/common/metadata/index.js.map +0 -1
  354. package/src/common/metadata/logger.metadata.js +0 -10
  355. package/src/common/metadata/logger.metadata.js.map +0 -1
  356. package/src/common/metadata/plugin.metadata.js +0 -18
  357. package/src/common/metadata/plugin.metadata.js.map +0 -1
  358. package/src/common/metadata/prompt.metadata.js +0 -27
  359. package/src/common/metadata/prompt.metadata.js.map +0 -1
  360. package/src/common/metadata/provider.metadata.js +0 -36
  361. package/src/common/metadata/provider.metadata.js.map +0 -1
  362. package/src/common/metadata/resource.metadata.js +0 -31
  363. package/src/common/metadata/resource.metadata.js.map +0 -1
  364. package/src/common/metadata/tool-ui.metadata.js +0 -12
  365. package/src/common/metadata/tool-ui.metadata.js.map +0 -1
  366. package/src/common/metadata/tool.metadata.js +0 -55
  367. package/src/common/metadata/tool.metadata.js.map +0 -1
  368. package/src/common/migrate/auth-transport.migrate.js +0 -140
  369. package/src/common/migrate/auth-transport.migrate.js.map +0 -1
  370. package/src/common/migrate/index.js +0 -6
  371. package/src/common/migrate/index.js.map +0 -1
  372. package/src/common/providers/base-config.provider.js +0 -128
  373. package/src/common/providers/base-config.provider.js.map +0 -1
  374. package/src/common/records/adapter.record.js +0 -11
  375. package/src/common/records/adapter.record.js.map +0 -1
  376. package/src/common/records/app.record.js +0 -9
  377. package/src/common/records/app.record.js.map +0 -1
  378. package/src/common/records/auth-provider.record.js +0 -12
  379. package/src/common/records/auth-provider.record.js.map +0 -1
  380. package/src/common/records/flow.record.js +0 -8
  381. package/src/common/records/flow.record.js.map +0 -1
  382. package/src/common/records/hook.record.js +0 -8
  383. package/src/common/records/hook.record.js.map +0 -1
  384. package/src/common/records/index.js +0 -16
  385. package/src/common/records/index.js.map +0 -1
  386. package/src/common/records/logger.record.js +0 -8
  387. package/src/common/records/logger.record.js.map +0 -1
  388. package/src/common/records/plugin.record.js +0 -11
  389. package/src/common/records/plugin.record.js.map +0 -1
  390. package/src/common/records/prompt.record.js +0 -9
  391. package/src/common/records/prompt.record.js.map +0 -1
  392. package/src/common/records/provider.record.js +0 -14
  393. package/src/common/records/provider.record.js.map +0 -1
  394. package/src/common/records/resource.record.js +0 -20
  395. package/src/common/records/resource.record.js.map +0 -1
  396. package/src/common/records/scope.record.js +0 -9
  397. package/src/common/records/scope.record.js.map +0 -1
  398. package/src/common/records/tool.record.js +0 -9
  399. package/src/common/records/tool.record.js.map +0 -1
  400. package/src/common/schemas/annotated-class.schema.js +0 -109
  401. package/src/common/schemas/annotated-class.schema.js.map +0 -1
  402. package/src/common/schemas/http-input.schema.js +0 -13
  403. package/src/common/schemas/http-input.schema.js.map +0 -1
  404. package/src/common/schemas/http-output.schema.js +0 -321
  405. package/src/common/schemas/http-output.schema.js.map +0 -1
  406. package/src/common/schemas/index.js +0 -8
  407. package/src/common/schemas/index.js.map +0 -1
  408. package/src/common/schemas/session-header.schema.js +0 -42
  409. package/src/common/schemas/session-header.schema.js.map +0 -1
  410. package/src/common/tokens/adapter.tokens.js +0 -11
  411. package/src/common/tokens/adapter.tokens.js.map +0 -1
  412. package/src/common/tokens/app.tokens.js +0 -30
  413. package/src/common/tokens/app.tokens.js.map +0 -1
  414. package/src/common/tokens/auth-provider.tokens.js +0 -12
  415. package/src/common/tokens/auth-provider.tokens.js.map +0 -1
  416. package/src/common/tokens/base.tokens.js +0 -9
  417. package/src/common/tokens/base.tokens.js.map +0 -1
  418. package/src/common/tokens/flow-hook.tokens.js +0 -9
  419. package/src/common/tokens/flow-hook.tokens.js.map +0 -1
  420. package/src/common/tokens/flow.tokens.js +0 -16
  421. package/src/common/tokens/flow.tokens.js.map +0 -1
  422. package/src/common/tokens/front-mcp.tokens.js +0 -24
  423. package/src/common/tokens/front-mcp.tokens.js.map +0 -1
  424. package/src/common/tokens/index.js +0 -17
  425. package/src/common/tokens/index.js.map +0 -1
  426. package/src/common/tokens/logger.tokens.js +0 -11
  427. package/src/common/tokens/logger.tokens.js.map +0 -1
  428. package/src/common/tokens/plugin.tokens.js +0 -18
  429. package/src/common/tokens/plugin.tokens.js.map +0 -1
  430. package/src/common/tokens/prompt.tokens.js +0 -14
  431. package/src/common/tokens/prompt.tokens.js.map +0 -1
  432. package/src/common/tokens/provider.tokens.js +0 -12
  433. package/src/common/tokens/provider.tokens.js.map +0 -1
  434. package/src/common/tokens/resource.tokens.js +0 -28
  435. package/src/common/tokens/resource.tokens.js.map +0 -1
  436. package/src/common/tokens/server.tokens.js +0 -11
  437. package/src/common/tokens/server.tokens.js.map +0 -1
  438. package/src/common/tokens/tool.tokens.js +0 -21
  439. package/src/common/tokens/tool.tokens.js.map +0 -1
  440. package/src/common/types/auth/index.js +0 -6
  441. package/src/common/types/auth/index.js.map +0 -1
  442. package/src/common/types/auth/jwt.types.js +0 -36
  443. package/src/common/types/auth/jwt.types.js.map +0 -1
  444. package/src/common/types/auth/session.types.js +0 -53
  445. package/src/common/types/auth/session.types.js.map +0 -1
  446. package/src/common/types/common.types.js +0 -3
  447. package/src/common/types/common.types.js.map +0 -1
  448. package/src/common/types/index.js +0 -7
  449. package/src/common/types/index.js.map +0 -1
  450. package/src/common/types/options/auth.options.d.ts +0 -1266
  451. package/src/common/types/options/auth.options.js +0 -560
  452. package/src/common/types/options/auth.options.js.map +0 -1
  453. package/src/common/types/options/http.options.js +0 -10
  454. package/src/common/types/options/http.options.js.map +0 -1
  455. package/src/common/types/options/index.js +0 -11
  456. package/src/common/types/options/index.js.map +0 -1
  457. package/src/common/types/options/logging.options.js +0 -33
  458. package/src/common/types/options/logging.options.js.map +0 -1
  459. package/src/common/types/options/redis.options.d.ts +0 -22
  460. package/src/common/types/options/redis.options.js +0 -45
  461. package/src/common/types/options/redis.options.js.map +0 -1
  462. package/src/common/types/options/server-info.options.js +0 -13
  463. package/src/common/types/options/server-info.options.js.map +0 -1
  464. package/src/common/types/options/session.options.js +0 -32
  465. package/src/common/types/options/session.options.js.map +0 -1
  466. package/src/common/types/options/transport.options.js +0 -121
  467. package/src/common/types/options/transport.options.js.map +0 -1
  468. package/src/common/utils/decide-request-intent.utils.js +0 -391
  469. package/src/common/utils/decide-request-intent.utils.js.map +0 -1
  470. package/src/common/utils/index.js +0 -6
  471. package/src/common/utils/index.js.map +0 -1
  472. package/src/common/utils/path.utils.js +0 -66
  473. package/src/common/utils/path.utils.js.map +0 -1
  474. package/src/completion/flows/complete.flow.js +0 -199
  475. package/src/completion/flows/complete.flow.js.map +0 -1
  476. package/src/context/frontmcp-context-storage.js +0 -183
  477. package/src/context/frontmcp-context-storage.js.map +0 -1
  478. package/src/context/frontmcp-context.js +0 -360
  479. package/src/context/frontmcp-context.js.map +0 -1
  480. package/src/context/frontmcp-context.provider.js +0 -61
  481. package/src/context/frontmcp-context.provider.js.map +0 -1
  482. package/src/context/index.js +0 -64
  483. package/src/context/index.js.map +0 -1
  484. package/src/context/request-context-storage.js +0 -183
  485. package/src/context/request-context-storage.js.map +0 -1
  486. package/src/context/request-context.js +0 -209
  487. package/src/context/request-context.js.map +0 -1
  488. package/src/context/request-context.provider.js +0 -51
  489. package/src/context/request-context.provider.js.map +0 -1
  490. package/src/context/session-key.provider.js +0 -65
  491. package/src/context/session-key.provider.js.map +0 -1
  492. package/src/context/trace-context.js +0 -142
  493. package/src/context/trace-context.js.map +0 -1
  494. package/src/errors/authorization-required.error.js +0 -274
  495. package/src/errors/authorization-required.error.js.map +0 -1
  496. package/src/errors/error-handler.js +0 -107
  497. package/src/errors/error-handler.js.map +0 -1
  498. package/src/errors/index.js +0 -44
  499. package/src/errors/index.js.map +0 -1
  500. package/src/errors/mcp.error.js +0 -398
  501. package/src/errors/mcp.error.js.map +0 -1
  502. package/src/exceptions/mcp-exceptions/session-missing.exception.js +0 -11
  503. package/src/exceptions/mcp-exceptions/session-missing.exception.js.map +0 -1
  504. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js +0 -15
  505. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js.map +0 -1
  506. package/src/flows/flow.instance.js +0 -420
  507. package/src/flows/flow.instance.js.map +0 -1
  508. package/src/flows/flow.registry.js +0 -121
  509. package/src/flows/flow.registry.js.map +0 -1
  510. package/src/flows/flow.stages.js +0 -113
  511. package/src/flows/flow.stages.js.map +0 -1
  512. package/src/flows/flow.utils.js +0 -36
  513. package/src/flows/flow.utils.js.map +0 -1
  514. package/src/front-mcp/front-mcp.js +0 -63
  515. package/src/front-mcp/front-mcp.js.map +0 -1
  516. package/src/front-mcp/front-mcp.providers.js +0 -29
  517. package/src/front-mcp/front-mcp.providers.js.map +0 -1
  518. package/src/front-mcp/front-mcp.tokens.js +0 -5
  519. package/src/front-mcp/front-mcp.tokens.js.map +0 -1
  520. package/src/front-mcp/index.d.ts +0 -1
  521. package/src/front-mcp/index.js +0 -5
  522. package/src/front-mcp/index.js.map +0 -1
  523. package/src/front-mcp/serverless-handler.js +0 -61
  524. package/src/front-mcp/serverless-handler.js.map +0 -1
  525. package/src/hooks/hook.instance.js +0 -26
  526. package/src/hooks/hook.instance.js.map +0 -1
  527. package/src/hooks/hook.registry.js +0 -152
  528. package/src/hooks/hook.registry.js.map +0 -1
  529. package/src/hooks/hooks.utils.js +0 -34
  530. package/src/hooks/hooks.utils.js.map +0 -1
  531. package/src/index.js +0 -36
  532. package/src/index.js.map +0 -1
  533. package/src/logger/instances/instance.console-logger.js +0 -75
  534. package/src/logger/instances/instance.console-logger.js.map +0 -1
  535. package/src/logger/instances/instance.logger.js +0 -77
  536. package/src/logger/instances/instance.logger.js.map +0 -1
  537. package/src/logger/logger.registry.js +0 -96
  538. package/src/logger/logger.registry.js.map +0 -1
  539. package/src/logger/logger.tokens.js +0 -3
  540. package/src/logger/logger.tokens.js.map +0 -1
  541. package/src/logger/logger.types.js +0 -8
  542. package/src/logger/logger.types.js.map +0 -1
  543. package/src/logger/logger.utils.js +0 -42
  544. package/src/logger/logger.utils.js.map +0 -1
  545. package/src/logging/flows/set-level.flow.js +0 -108
  546. package/src/logging/flows/set-level.flow.js.map +0 -1
  547. package/src/mcp-apps/csp.js +0 -267
  548. package/src/mcp-apps/csp.js.map +0 -1
  549. package/src/mcp-apps/index.js +0 -91
  550. package/src/mcp-apps/index.js.map +0 -1
  551. package/src/mcp-apps/schemas.js +0 -345
  552. package/src/mcp-apps/schemas.js.map +0 -1
  553. package/src/mcp-apps/template.js +0 -419
  554. package/src/mcp-apps/template.js.map +0 -1
  555. package/src/mcp-apps/types.js +0 -59
  556. package/src/mcp-apps/types.js.map +0 -1
  557. package/src/notification/index.js +0 -13
  558. package/src/notification/index.js.map +0 -1
  559. package/src/notification/notification.service.js +0 -731
  560. package/src/notification/notification.service.js.map +0 -1
  561. package/src/plugin/plugin.registry.js +0 -152
  562. package/src/plugin/plugin.registry.js.map +0 -1
  563. package/src/plugin/plugin.utils.js +0 -88
  564. package/src/plugin/plugin.utils.js.map +0 -1
  565. package/src/prompt/flows/get-prompt.flow.js +0 -214
  566. package/src/prompt/flows/get-prompt.flow.js.map +0 -1
  567. package/src/prompt/flows/prompts-list.flow.js +0 -176
  568. package/src/prompt/flows/prompts-list.flow.js.map +0 -1
  569. package/src/prompt/index.js +0 -17
  570. package/src/prompt/index.js.map +0 -1
  571. package/src/prompt/prompt.events.js +0 -25
  572. package/src/prompt/prompt.events.js.map +0 -1
  573. package/src/prompt/prompt.instance.js +0 -120
  574. package/src/prompt/prompt.instance.js.map +0 -1
  575. package/src/prompt/prompt.registry.js +0 -380
  576. package/src/prompt/prompt.registry.js.map +0 -1
  577. package/src/prompt/prompt.types.js +0 -11
  578. package/src/prompt/prompt.types.js.map +0 -1
  579. package/src/prompt/prompt.utils.js +0 -136
  580. package/src/prompt/prompt.utils.js.map +0 -1
  581. package/src/provider/provider.registry.js +0 -868
  582. package/src/provider/provider.registry.js.map +0 -1
  583. package/src/provider/provider.types.js +0 -3
  584. package/src/provider/provider.types.js.map +0 -1
  585. package/src/provider/provider.utils.js +0 -103
  586. package/src/provider/provider.utils.js.map +0 -1
  587. package/src/regsitry/index.js +0 -5
  588. package/src/regsitry/index.js.map +0 -1
  589. package/src/regsitry/registry.base.js +0 -32
  590. package/src/regsitry/registry.base.js.map +0 -1
  591. package/src/resource/flows/read-resource.flow.js +0 -270
  592. package/src/resource/flows/read-resource.flow.js.map +0 -1
  593. package/src/resource/flows/resource-templates-list.flow.js +0 -191
  594. package/src/resource/flows/resource-templates-list.flow.js.map +0 -1
  595. package/src/resource/flows/resources-list.flow.js +0 -196
  596. package/src/resource/flows/resources-list.flow.js.map +0 -1
  597. package/src/resource/flows/subscribe-resource.flow.js +0 -123
  598. package/src/resource/flows/subscribe-resource.flow.js.map +0 -1
  599. package/src/resource/flows/unsubscribe-resource.flow.js +0 -107
  600. package/src/resource/flows/unsubscribe-resource.flow.js.map +0 -1
  601. package/src/resource/index.js +0 -20
  602. package/src/resource/index.js.map +0 -1
  603. package/src/resource/resource.events.js +0 -17
  604. package/src/resource/resource.events.js.map +0 -1
  605. package/src/resource/resource.instance.js +0 -163
  606. package/src/resource/resource.instance.js.map +0 -1
  607. package/src/resource/resource.registry.js +0 -468
  608. package/src/resource/resource.registry.js.map +0 -1
  609. package/src/resource/resource.types.js +0 -11
  610. package/src/resource/resource.types.js.map +0 -1
  611. package/src/resource/resource.utils.js +0 -151
  612. package/src/resource/resource.utils.js.map +0 -1
  613. package/src/scope/flows/http.request.flow.js +0 -474
  614. package/src/scope/flows/http.request.flow.js.map +0 -1
  615. package/src/scope/index.js +0 -6
  616. package/src/scope/index.js.map +0 -1
  617. package/src/scope/scope.instance.js +0 -263
  618. package/src/scope/scope.instance.js.map +0 -1
  619. package/src/scope/scope.registry.js +0 -94
  620. package/src/scope/scope.registry.js.map +0 -1
  621. package/src/scope/scope.utils.js +0 -61
  622. package/src/scope/scope.utils.js.map +0 -1
  623. package/src/server/adapters/base.host.adapter.js +0 -8
  624. package/src/server/adapters/base.host.adapter.js.map +0 -1
  625. package/src/server/adapters/express.host.adapter.js +0 -70
  626. package/src/server/adapters/express.host.adapter.js.map +0 -1
  627. package/src/server/server.instance.js +0 -54
  628. package/src/server/server.instance.js.map +0 -1
  629. package/src/server/server.types.js +0 -3
  630. package/src/server/server.types.js.map +0 -1
  631. package/src/server/server.validation.js +0 -192
  632. package/src/server/server.validation.js.map +0 -1
  633. package/src/store/adapters/store.base.adapter.js +0 -16
  634. package/src/store/adapters/store.base.adapter.js.map +0 -1
  635. package/src/store/adapters/store.memory.adapter.js +0 -89
  636. package/src/store/adapters/store.memory.adapter.js.map +0 -1
  637. package/src/store/adapters/store.redis.adapter.js +0 -104
  638. package/src/store/adapters/store.redis.adapter.js.map +0 -1
  639. package/src/store/index.js +0 -12
  640. package/src/store/index.js.map +0 -1
  641. package/src/store/store.helpers.js +0 -67
  642. package/src/store/store.helpers.js.map +0 -1
  643. package/src/store/store.registry.js +0 -37
  644. package/src/store/store.registry.js.map +0 -1
  645. package/src/store/store.tokens.js +0 -7
  646. package/src/store/store.tokens.js.map +0 -1
  647. package/src/store/store.types.js +0 -11
  648. package/src/store/store.types.js.map +0 -1
  649. package/src/store/store.utils.js +0 -18
  650. package/src/store/store.utils.js.map +0 -1
  651. package/src/tool/flows/call-tool.flow.js +0 -616
  652. package/src/tool/flows/call-tool.flow.js.map +0 -1
  653. package/src/tool/flows/tools-list.flow.js +0 -328
  654. package/src/tool/flows/tools-list.flow.js.map +0 -1
  655. package/src/tool/tool.events.js +0 -16
  656. package/src/tool/tool.events.js.map +0 -1
  657. package/src/tool/tool.instance.js +0 -117
  658. package/src/tool/tool.instance.js.map +0 -1
  659. package/src/tool/tool.registry.js +0 -353
  660. package/src/tool/tool.registry.js.map +0 -1
  661. package/src/tool/tool.types.js +0 -10
  662. package/src/tool/tool.types.js.map +0 -1
  663. package/src/tool/tool.utils.js +0 -366
  664. package/src/tool/tool.utils.js.map +0 -1
  665. package/src/tool/ui/index.js +0 -63
  666. package/src/tool/ui/index.js.map +0 -1
  667. package/src/tool/ui/platform-adapters.js +0 -18
  668. package/src/tool/ui/platform-adapters.js.map +0 -1
  669. package/src/tool/ui/template-helpers.js +0 -112
  670. package/src/tool/ui/template-helpers.js.map +0 -1
  671. package/src/tool/ui/ui-resource-template.js +0 -64
  672. package/src/tool/ui/ui-resource-template.js.map +0 -1
  673. package/src/tool/ui/ui-resource.handler.js +0 -129
  674. package/src/tool/ui/ui-resource.handler.js.map +0 -1
  675. package/src/transport/adapters/transport.local.adapter.js +0 -148
  676. package/src/transport/adapters/transport.local.adapter.js.map +0 -1
  677. package/src/transport/adapters/transport.sse.adapter.js +0 -65
  678. package/src/transport/adapters/transport.sse.adapter.js.map +0 -1
  679. package/src/transport/adapters/transport.streamable-http.adapter.js +0 -112
  680. package/src/transport/adapters/transport.streamable-http.adapter.js.map +0 -1
  681. package/src/transport/flows/handle.sse.flow.js +0 -197
  682. package/src/transport/flows/handle.sse.flow.js.map +0 -1
  683. package/src/transport/flows/handle.stateless-http.flow.js +0 -102
  684. package/src/transport/flows/handle.stateless-http.flow.js.map +0 -1
  685. package/src/transport/flows/handle.streamable-http.flow.js +0 -315
  686. package/src/transport/flows/handle.streamable-http.flow.js.map +0 -1
  687. package/src/transport/legacy/legacy.sse.tranporter.js +0 -185
  688. package/src/transport/legacy/legacy.sse.tranporter.js.map +0 -1
  689. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js +0 -14
  690. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js.map +0 -1
  691. package/src/transport/mcp-handlers/call-tool-request.handler.js +0 -46
  692. package/src/transport/mcp-handlers/call-tool-request.handler.js.map +0 -1
  693. package/src/transport/mcp-handlers/complete-request.handler.js +0 -11
  694. package/src/transport/mcp-handlers/complete-request.handler.js.map +0 -1
  695. package/src/transport/mcp-handlers/get-prompt-request.handler.js +0 -11
  696. package/src/transport/mcp-handlers/get-prompt-request.handler.js.map +0 -1
  697. package/src/transport/mcp-handlers/index.js +0 -57
  698. package/src/transport/mcp-handlers/index.js.map +0 -1
  699. package/src/transport/mcp-handlers/initialize-request.handler.js +0 -109
  700. package/src/transport/mcp-handlers/initialize-request.handler.js.map +0 -1
  701. package/src/transport/mcp-handlers/list-prompts-request.handler.js +0 -11
  702. package/src/transport/mcp-handlers/list-prompts-request.handler.js.map +0 -1
  703. package/src/transport/mcp-handlers/list-resource-templates-request.handler.js +0 -12
  704. package/src/transport/mcp-handlers/list-resource-templates-request.handler.js.map +0 -1
  705. package/src/transport/mcp-handlers/list-resources-request.handler.js +0 -12
  706. package/src/transport/mcp-handlers/list-resources-request.handler.js.map +0 -1
  707. package/src/transport/mcp-handlers/list-tools-request.handler.js +0 -11
  708. package/src/transport/mcp-handlers/list-tools-request.handler.js.map +0 -1
  709. package/src/transport/mcp-handlers/logging-set-level-request.handler.js +0 -34
  710. package/src/transport/mcp-handlers/logging-set-level-request.handler.js.map +0 -1
  711. package/src/transport/mcp-handlers/mcp-handlers.types.js +0 -3
  712. package/src/transport/mcp-handlers/mcp-handlers.types.js.map +0 -1
  713. package/src/transport/mcp-handlers/read-resource-request.handler.js +0 -12
  714. package/src/transport/mcp-handlers/read-resource-request.handler.js.map +0 -1
  715. package/src/transport/mcp-handlers/roots-list-changed-notification.handler.js +0 -26
  716. package/src/transport/mcp-handlers/roots-list-changed-notification.handler.js.map +0 -1
  717. package/src/transport/mcp-handlers/subscribe-request.handler.js +0 -34
  718. package/src/transport/mcp-handlers/subscribe-request.handler.js.map +0 -1
  719. package/src/transport/mcp-handlers/unsubscribe-request.handler.js +0 -34
  720. package/src/transport/mcp-handlers/unsubscribe-request.handler.js.map +0 -1
  721. package/src/transport/transport.error.js +0 -25
  722. package/src/transport/transport.error.js.map +0 -1
  723. package/src/transport/transport.event-store.js +0 -36
  724. package/src/transport/transport.event-store.js.map +0 -1
  725. package/src/transport/transport.local.js +0 -71
  726. package/src/transport/transport.local.js.map +0 -1
  727. package/src/transport/transport.registry.js +0 -523
  728. package/src/transport/transport.registry.js.map +0 -1
  729. package/src/transport/transport.remote.js +0 -31
  730. package/src/transport/transport.remote.js.map +0 -1
  731. package/src/transport/transport.types.js +0 -3
  732. package/src/transport/transport.types.js.map +0 -1
  733. package/src/types/drinen-hooks.types.js +0 -3
  734. package/src/types/drinen-hooks.types.js.map +0 -1
  735. package/src/types/invoke.type.js +0 -34
  736. package/src/types/invoke.type.js.map +0 -1
  737. package/src/types/token.types.js +0 -3
  738. package/src/types/token.types.js.map +0 -1
  739. package/src/utils/content.utils.js +0 -194
  740. package/src/utils/content.utils.js.map +0 -1
  741. package/src/utils/index.js +0 -55
  742. package/src/utils/index.js.map +0 -1
  743. package/src/utils/lineage.utils.js +0 -82
  744. package/src/utils/lineage.utils.js.map +0 -1
  745. package/src/utils/metadata.utils.js +0 -26
  746. package/src/utils/metadata.utils.js.map +0 -1
  747. package/src/utils/naming.utils.js +0 -136
  748. package/src/utils/naming.utils.js.map +0 -1
  749. package/src/utils/server.utils.js +0 -59
  750. package/src/utils/server.utils.js.map +0 -1
  751. package/src/utils/string.utils.js +0 -10
  752. package/src/utils/string.utils.js.map +0 -1
  753. package/src/utils/token.utils.js +0 -65
  754. package/src/utils/token.utils.js.map +0 -1
  755. package/src/utils/types.utils.js +0 -3
  756. package/src/utils/types.utils.js.map +0 -1
  757. package/src/utils/uri-template.utils.js +0 -113
  758. package/src/utils/uri-template.utils.js.map +0 -1
  759. package/src/utils/uri-validation.utils.js +0 -76
  760. package/src/utils/uri-validation.utils.js.map +0 -1
  761. package/{src/adapter → adapter}/adapter.instance.d.ts +0 -0
  762. package/{src/adapter → adapter}/adapter.regsitry.d.ts +0 -0
  763. package/{src/adapter → adapter}/adapter.utils.d.ts +0 -0
  764. package/{src/app → app}/app.registry.d.ts +0 -0
  765. package/{src/app → app}/app.utils.d.ts +0 -0
  766. package/{src/app → app}/instances/app.local.instance.d.ts +0 -0
  767. package/{src/app → app}/instances/app.remote.instance.d.ts +0 -0
  768. package/{src/app → app}/instances/index.d.ts +0 -0
  769. package/{src/auth → auth}/auth.registry.d.ts +0 -0
  770. package/{src/auth → auth}/auth.utils.d.ts +0 -0
  771. package/{src/auth → auth}/authorization/authorization.class.d.ts +0 -0
  772. package/{src/auth → auth}/authorization/authorization.types.d.ts +0 -0
  773. package/{src/auth → auth}/authorization/index.d.ts +0 -0
  774. package/{src/auth → auth}/authorization/orchestrated.authorization.d.ts +0 -0
  775. package/{src/auth → auth}/authorization/public.authorization.d.ts +0 -0
  776. package/{src/auth → auth}/authorization/transparent.authorization.d.ts +0 -0
  777. package/{src/auth → auth}/consent/consent.types.d.ts +0 -0
  778. package/{src/auth → auth}/consent/index.d.ts +0 -0
  779. package/{src/auth → auth}/detection/auth-provider-detection.d.ts +0 -0
  780. package/{src/auth → auth}/detection/index.d.ts +0 -0
  781. package/{src/auth → auth}/flows/auth.verify.flow.d.ts +0 -0
  782. package/{src/auth → auth}/flows/oauth.authorize.flow.d.ts +0 -0
  783. package/{src/auth → auth}/flows/oauth.callback.flow.d.ts +0 -0
  784. package/{src/auth → auth}/flows/oauth.register.flow.d.ts +0 -0
  785. package/{src/auth → auth}/flows/oauth.token.flow.d.ts +0 -0
  786. package/{src/auth → auth}/flows/session.verify.flow.d.ts +0 -0
  787. package/{src/auth → auth}/flows/well-known.jwks.flow.d.ts +0 -0
  788. package/{src/auth → auth}/flows/well-known.oauth-authorization-server.flow.d.ts +0 -0
  789. package/{src/auth → auth}/flows/well-known.prm.flow.d.ts +0 -0
  790. package/{src/auth → auth}/jwks/dev-key-persistence.d.ts +0 -0
  791. package/{src/auth → auth}/jwks/index.d.ts +0 -0
  792. package/{src/auth → auth}/jwks/jwks.service.d.ts +0 -0
  793. package/{src/auth → auth}/jwks/jwks.types.d.ts +0 -0
  794. package/{src/auth → auth}/jwks/jwks.utils.d.ts +0 -0
  795. package/{src/auth → auth}/machine-id.d.ts +0 -0
  796. package/{src/auth → auth}/oauth/flows/oauth.authorize.flow.d.ts +0 -0
  797. package/{src/auth → auth}/oauth/flows/oauth.device-authorization.flow.d.ts +0 -0
  798. package/{src/auth → auth}/oauth/flows/oauth.introspect.flow.d.ts +0 -0
  799. package/{src/auth → auth}/oauth/flows/oauth.par.flow.d.ts +0 -0
  800. package/{src/auth → auth}/oauth/flows/oauth.revoke.flow.d.ts +0 -0
  801. package/{src/auth → auth}/oauth/flows/oauth.token.flow.d.ts +0 -0
  802. package/{src/auth → auth}/oauth/flows/oauth.userinfo.flow.d.ts +0 -0
  803. package/{src/auth → auth}/oauth/flows/oidc.logout.flow.d.ts +0 -0
  804. package/{src/auth → auth}/session/authorization-vault.d.ts +0 -0
  805. package/{src/auth → auth}/session/authorization.store.d.ts +0 -0
  806. package/{src/auth → auth}/session/encrypted-authorization-vault.d.ts +0 -0
  807. package/{src/auth → auth}/session/record/session.base.d.ts +0 -0
  808. package/{src/auth → auth}/session/record/session.stateful.d.ts +0 -0
  809. package/{src/auth → auth}/session/record/session.stateless.d.ts +0 -0
  810. package/{src/auth → auth}/session/record/session.transparent.d.ts +0 -0
  811. package/{src/auth → auth}/session/redis-session.store.d.ts +0 -0
  812. package/{src/auth → auth}/session/session.crypto.d.ts +0 -0
  813. package/{src/auth → auth}/session/session.schema.d.ts +0 -0
  814. package/{src/auth → auth}/session/session.service.d.ts +0 -0
  815. package/{src/auth → auth}/session/session.transport.d.ts +0 -0
  816. package/{src/auth → auth}/session/session.types.d.ts +0 -0
  817. package/{src/auth → auth}/session/token.refresh.d.ts +0 -0
  818. package/{src/auth → auth}/session/token.store.d.ts +0 -0
  819. package/{src/auth → auth}/session/token.vault.d.ts +0 -0
  820. package/{src/auth → auth}/session/transport-session.manager.d.ts +0 -0
  821. package/{src/auth → auth}/session/transport-session.types.d.ts +0 -0
  822. package/{src/auth → auth}/session/utils/auth-token.utils.d.ts +0 -0
  823. package/{src/auth → auth}/session/utils/session-id.utils.d.ts +0 -0
  824. package/{src/auth → auth}/session/utils/tiny-ttl-cache.d.ts +0 -0
  825. package/{src/auth → auth}/session/vault-encryption.d.ts +0 -0
  826. package/{src/auth → auth}/ui/base-layout.d.ts +0 -0
  827. package/{src/auth → auth}/ui/index.d.ts +0 -0
  828. package/{src/auth → auth}/ui/templates.d.ts +0 -0
  829. package/{src/auth → auth}/utils/audience.validator.d.ts +0 -0
  830. package/{src/auth → auth}/utils/index.d.ts +0 -0
  831. package/{src/auth → auth}/utils/www-authenticate.utils.d.ts +0 -0
  832. package/{src/common → common}/common.schema.d.ts +0 -0
  833. package/{src/common → common}/constants.d.ts +0 -0
  834. package/{src/common → common}/decorators/adapter.decorator.d.ts +0 -0
  835. package/{src/common → common}/decorators/app.decorator.d.ts +0 -0
  836. package/{src/common → common}/decorators/auth-provider.decorator.d.ts +0 -0
  837. package/{src/common → common}/decorators/decorator-utils.d.ts +0 -0
  838. package/{src/common → common}/decorators/flow.decorator.d.ts +0 -0
  839. package/{src/common → common}/decorators/front-mcp.decorator.d.ts +0 -0
  840. package/{src/common → common}/decorators/hook.decorator.d.ts +0 -0
  841. package/{src/common → common}/decorators/index.d.ts +0 -0
  842. package/{src/common → common}/decorators/logger.decorator.d.ts +0 -0
  843. package/{src/common → common}/decorators/plugin.decorator.d.ts +0 -0
  844. package/{src/common → common}/decorators/prompt.decorator.d.ts +0 -0
  845. package/{src/common → common}/decorators/provider.decorator.d.ts +0 -0
  846. package/{src/common → common}/decorators/resource.decorator.d.ts +0 -0
  847. package/{src/common → common}/decorators/tool.decorator.d.ts +0 -0
  848. package/{src/common → common}/dynamic/dynamic.adapter.d.ts +0 -0
  849. package/{src/common → common}/dynamic/dynamic.plugin.d.ts +0 -0
  850. package/{src/common → common}/dynamic/dynamic.utils.d.ts +0 -0
  851. package/{src/common → common}/dynamic/index.d.ts +0 -0
  852. package/{src/common → common}/entries/adapter.entry.d.ts +0 -0
  853. package/{src/common → common}/entries/app.entry.d.ts +0 -0
  854. package/{src/common → common}/entries/auth-provider.entry.d.ts +0 -0
  855. package/{src/common → common}/entries/base.entry.d.ts +0 -0
  856. package/{src/common → common}/entries/flow.entry.d.ts +0 -0
  857. package/{src/common → common}/entries/hook.entry.d.ts +0 -0
  858. package/{src/common → common}/entries/index.d.ts +0 -0
  859. package/{src/common → common}/entries/logger.entry.d.ts +0 -0
  860. package/{src/common → common}/entries/plugin.entry.d.ts +0 -0
  861. package/{src/common → common}/entries/prompt.entry.d.ts +0 -0
  862. package/{src/common → common}/entries/provider.entry.d.ts +0 -0
  863. package/{src/common → common}/entries/resource.entry.d.ts +0 -0
  864. package/{src/common → common}/entries/scope.entry.d.ts +0 -0
  865. package/{src/common → common}/entries/tool.entry.d.ts +0 -0
  866. package/{src/common → common}/flow/flow.utils.d.ts +0 -0
  867. package/{src/common → common}/index.d.ts +0 -0
  868. package/{src/common → common}/interfaces/adapter.interface.d.ts +0 -0
  869. package/{src/common → common}/interfaces/app.interface.d.ts +0 -0
  870. package/{src/common → common}/interfaces/auth-hook.interface.d.ts +0 -0
  871. package/{src/common → common}/interfaces/auth-provider.interface.d.ts +0 -0
  872. package/{src/common → common}/interfaces/base.interface.d.ts +0 -0
  873. package/{src/common → common}/interfaces/execution-context.interface.d.ts +0 -0
  874. package/{src/common → common}/interfaces/flow.interface.d.ts +0 -0
  875. package/{src/common → common}/interfaces/front-mcp.interface.d.ts +0 -0
  876. package/{src/common → common}/interfaces/hook.interface.d.ts +0 -0
  877. package/{src/common → common}/interfaces/index.d.ts +0 -0
  878. package/{src/common → common}/interfaces/internal/flow.utils.d.ts +0 -0
  879. package/{src/common → common}/interfaces/internal/index.d.ts +0 -0
  880. package/{src/common → common}/interfaces/internal/registry.interface.d.ts +0 -0
  881. package/{src/common → common}/interfaces/logger.interface.d.ts +0 -0
  882. package/{src/common → common}/interfaces/plugin.interface.d.ts +0 -0
  883. package/{src/common → common}/interfaces/prompt.interface.d.ts +0 -0
  884. package/{src/common → common}/interfaces/provider.interface.d.ts +0 -0
  885. package/{src/common → common}/interfaces/resource.interface.d.ts +0 -0
  886. package/{src/common → common}/interfaces/scope.interface.d.ts +0 -0
  887. package/{src/common → common}/interfaces/server.interface.d.ts +0 -0
  888. package/{src/common → common}/interfaces/session-hook.interface.d.ts +0 -0
  889. package/{src/common → common}/interfaces/tool-hook.interface.d.ts +0 -0
  890. package/{src/common → common}/interfaces/tool.interface.d.ts +0 -0
  891. package/{src/common → common}/metadata/adapter.metadata.d.ts +0 -0
  892. package/{src/common → common}/metadata/app.metadata.d.ts +42 -42
  893. /package/{src/common → common}/metadata/auth-provider.metadata.d.ts +0 -0
  894. /package/{src/common → common}/metadata/flow.metadata.d.ts +0 -0
  895. /package/{src/common → common}/metadata/hook.metadata.d.ts +0 -0
  896. /package/{src/common → common}/metadata/index.d.ts +0 -0
  897. /package/{src/common → common}/metadata/logger.metadata.d.ts +0 -0
  898. /package/{src/common → common}/metadata/plugin.metadata.d.ts +0 -0
  899. /package/{src/common → common}/metadata/provider.metadata.d.ts +0 -0
  900. /package/{src/common → common}/migrate/auth-transport.migrate.d.ts +0 -0
  901. /package/{src/common → common}/migrate/index.d.ts +0 -0
  902. /package/{src/common → common}/providers/base-config.provider.d.ts +0 -0
  903. /package/{src/common → common}/records/adapter.record.d.ts +0 -0
  904. /package/{src/common → common}/records/app.record.d.ts +0 -0
  905. /package/{src/common → common}/records/auth-provider.record.d.ts +0 -0
  906. /package/{src/common → common}/records/flow.record.d.ts +0 -0
  907. /package/{src/common → common}/records/hook.record.d.ts +0 -0
  908. /package/{src/common → common}/records/index.d.ts +0 -0
  909. /package/{src/common → common}/records/logger.record.d.ts +0 -0
  910. /package/{src/common → common}/records/plugin.record.d.ts +0 -0
  911. /package/{src/common → common}/records/prompt.record.d.ts +0 -0
  912. /package/{src/common → common}/records/provider.record.d.ts +0 -0
  913. /package/{src/common → common}/records/resource.record.d.ts +0 -0
  914. /package/{src/common → common}/records/scope.record.d.ts +0 -0
  915. /package/{src/common → common}/records/tool.record.d.ts +0 -0
  916. /package/{src/common → common}/schemas/annotated-class.schema.d.ts +0 -0
  917. /package/{src/common → common}/schemas/http-input.schema.d.ts +0 -0
  918. /package/{src/common → common}/schemas/index.d.ts +0 -0
  919. /package/{src/common → common}/schemas/session-header.schema.d.ts +0 -0
  920. /package/{src/common → common}/tokens/adapter.tokens.d.ts +0 -0
  921. /package/{src/common → common}/tokens/app.tokens.d.ts +0 -0
  922. /package/{src/common → common}/tokens/auth-provider.tokens.d.ts +0 -0
  923. /package/{src/common → common}/tokens/base.tokens.d.ts +0 -0
  924. /package/{src/common → common}/tokens/flow-hook.tokens.d.ts +0 -0
  925. /package/{src/common → common}/tokens/flow.tokens.d.ts +0 -0
  926. /package/{src/common → common}/tokens/front-mcp.tokens.d.ts +0 -0
  927. /package/{src/common → common}/tokens/index.d.ts +0 -0
  928. /package/{src/common → common}/tokens/logger.tokens.d.ts +0 -0
  929. /package/{src/common → common}/tokens/plugin.tokens.d.ts +0 -0
  930. /package/{src/common → common}/tokens/prompt.tokens.d.ts +0 -0
  931. /package/{src/common → common}/tokens/provider.tokens.d.ts +0 -0
  932. /package/{src/common → common}/tokens/resource.tokens.d.ts +0 -0
  933. /package/{src/common → common}/tokens/server.tokens.d.ts +0 -0
  934. /package/{src/common → common}/tokens/tool.tokens.d.ts +0 -0
  935. /package/{src/common → common}/types/auth/index.d.ts +0 -0
  936. /package/{src/common → common}/types/auth/jwt.types.d.ts +0 -0
  937. /package/{src/common → common}/types/auth/session.types.d.ts +0 -0
  938. /package/{src/common → common}/types/common.types.d.ts +0 -0
  939. /package/{src/common → common}/types/index.d.ts +0 -0
  940. /package/{src/logger/logger.tokens.d.ts → common/types/options/auth/auth.typecheck.d.ts} +0 -0
  941. /package/{src/common → common}/types/options/http.options.d.ts +0 -0
  942. /package/{src/common → common}/types/options/logging.options.d.ts +0 -0
  943. /package/{src/common → common}/types/options/session.options.d.ts +0 -0
  944. /package/{src/common → common}/utils/path.utils.d.ts +0 -0
  945. /package/{src/context → context}/frontmcp-context-storage.d.ts +0 -0
  946. /package/{src/context → context}/frontmcp-context.d.ts +0 -0
  947. /package/{src/context → context}/frontmcp-context.provider.d.ts +0 -0
  948. /package/{src/context → context}/index.d.ts +0 -0
  949. /package/{src/context → context}/request-context-storage.d.ts +0 -0
  950. /package/{src/context → context}/request-context.d.ts +0 -0
  951. /package/{src/context → context}/request-context.provider.d.ts +0 -0
  952. /package/{src/context → context}/session-key.provider.d.ts +0 -0
  953. /package/{src/context → context}/trace-context.d.ts +0 -0
  954. /package/{src/errors → errors}/authorization-required.error.d.ts +0 -0
  955. /package/{src/errors → errors}/error-handler.d.ts +0 -0
  956. /package/{src/exceptions → exceptions}/mcp-exceptions/session-missing.exception.d.ts +0 -0
  957. /package/{src/exceptions → exceptions}/mcp-exceptions/unsupported-client-version.exception.d.ts +0 -0
  958. /package/{src/flows → flows}/flow.instance.d.ts +0 -0
  959. /package/{src/flows → flows}/flow.registry.d.ts +0 -0
  960. /package/{src/flows → flows}/flow.stages.d.ts +0 -0
  961. /package/{src/flows → flows}/flow.utils.d.ts +0 -0
  962. /package/{src/front-mcp → front-mcp}/front-mcp.d.ts +0 -0
  963. /package/{src/front-mcp → front-mcp}/front-mcp.tokens.d.ts +0 -0
  964. /package/{src/front-mcp → front-mcp}/serverless-handler.d.ts +0 -0
  965. /package/{src/hooks → hooks}/hook.instance.d.ts +0 -0
  966. /package/{src/hooks → hooks}/hook.registry.d.ts +0 -0
  967. /package/{src/hooks → hooks}/hooks.utils.d.ts +0 -0
  968. /package/{src/logger → logger}/instances/instance.console-logger.d.ts +0 -0
  969. /package/{src/logger → logger}/instances/instance.logger.d.ts +0 -0
  970. /package/{src/logger → logger}/logger.registry.d.ts +0 -0
  971. /package/{src/logger → logger}/logger.types.d.ts +0 -0
  972. /package/{src/logger → logger}/logger.utils.d.ts +0 -0
  973. /package/{src/mcp-apps → mcp-apps}/csp.d.ts +0 -0
  974. /package/{src/mcp-apps → mcp-apps}/index.d.ts +0 -0
  975. /package/{src/mcp-apps → mcp-apps}/schemas.d.ts +0 -0
  976. /package/{src/mcp-apps → mcp-apps}/template.d.ts +0 -0
  977. /package/{src/mcp-apps → mcp-apps}/types.d.ts +0 -0
  978. /package/{src/notification → notification}/index.d.ts +0 -0
  979. /package/{src/notification → notification}/notification.service.d.ts +0 -0
  980. /package/{src/plugin → plugin}/plugin.registry.d.ts +0 -0
  981. /package/{src/plugin → plugin}/plugin.utils.d.ts +0 -0
  982. /package/{src/prompt → prompt}/index.d.ts +0 -0
  983. /package/{src/prompt → prompt}/prompt.events.d.ts +0 -0
  984. /package/{src/prompt → prompt}/prompt.instance.d.ts +0 -0
  985. /package/{src/prompt → prompt}/prompt.registry.d.ts +0 -0
  986. /package/{src/prompt → prompt}/prompt.types.d.ts +0 -0
  987. /package/{src/prompt → prompt}/prompt.utils.d.ts +0 -0
  988. /package/{src/provider → provider}/provider.registry.d.ts +0 -0
  989. /package/{src/provider → provider}/provider.types.d.ts +0 -0
  990. /package/{src/provider → provider}/provider.utils.d.ts +0 -0
  991. /package/{src/regsitry → regsitry}/index.d.ts +0 -0
  992. /package/{src/regsitry → regsitry}/registry.base.d.ts +0 -0
  993. /package/{src/resource → resource}/index.d.ts +0 -0
  994. /package/{src/resource → resource}/resource.events.d.ts +0 -0
  995. /package/{src/resource → resource}/resource.instance.d.ts +0 -0
  996. /package/{src/resource → resource}/resource.registry.d.ts +0 -0
  997. /package/{src/resource → resource}/resource.types.d.ts +0 -0
  998. /package/{src/resource → resource}/resource.utils.d.ts +0 -0
  999. /package/{src/scope → scope}/flows/http.request.flow.d.ts +0 -0
  1000. /package/{src/scope → scope}/index.d.ts +0 -0
  1001. /package/{src/scope → scope}/scope.instance.d.ts +0 -0
  1002. /package/{src/scope → scope}/scope.registry.d.ts +0 -0
  1003. /package/{src/scope → scope}/scope.utils.d.ts +0 -0
  1004. /package/{src/server → server}/adapters/base.host.adapter.d.ts +0 -0
  1005. /package/{src/server → server}/adapters/express.host.adapter.d.ts +0 -0
  1006. /package/{src/server → server}/server.instance.d.ts +0 -0
  1007. /package/{src/server → server}/server.types.d.ts +0 -0
  1008. /package/{src/server → server}/server.validation.d.ts +0 -0
  1009. /package/{src/store → store}/adapters/store.base.adapter.d.ts +0 -0
  1010. /package/{src/store → store}/adapters/store.memory.adapter.d.ts +0 -0
  1011. /package/{src/store → store}/adapters/store.redis.adapter.d.ts +0 -0
  1012. /package/{src/store → store}/store.helpers.d.ts +0 -0
  1013. /package/{src/store → store}/store.registry.d.ts +0 -0
  1014. /package/{src/store → store}/store.tokens.d.ts +0 -0
  1015. /package/{src/store → store}/store.types.d.ts +0 -0
  1016. /package/{src/store → store}/store.utils.d.ts +0 -0
  1017. /package/{src/tool → tool}/tool.events.d.ts +0 -0
  1018. /package/{src/tool → tool}/tool.instance.d.ts +0 -0
  1019. /package/{src/tool → tool}/tool.registry.d.ts +0 -0
  1020. /package/{src/tool → tool}/tool.types.d.ts +0 -0
  1021. /package/{src/tool → tool}/tool.utils.d.ts +0 -0
  1022. /package/{src/tool → tool}/ui/ui-resource-template.d.ts +0 -0
  1023. /package/{src/transport → transport}/adapters/transport.local.adapter.d.ts +0 -0
  1024. /package/{src/transport → transport}/adapters/transport.sse.adapter.d.ts +0 -0
  1025. /package/{src/transport → transport}/adapters/transport.streamable-http.adapter.d.ts +0 -0
  1026. /package/{src/transport → transport}/flows/handle.sse.flow.d.ts +0 -0
  1027. /package/{src/transport → transport}/flows/handle.stateless-http.flow.d.ts +0 -0
  1028. /package/{src/transport → transport}/flows/handle.streamable-http.flow.d.ts +0 -0
  1029. /package/{src/transport → transport}/legacy/legacy.sse.tranporter.d.ts +0 -0
  1030. /package/{src/transport → transport}/mcp-handlers/Initialized-notification.hanlder.d.ts +0 -0
  1031. /package/{src/transport → transport}/mcp-handlers/call-tool-request.handler.d.ts +0 -0
  1032. /package/{src/transport → transport}/mcp-handlers/initialize-request.handler.d.ts +0 -0
  1033. /package/{src/transport → transport}/mcp-handlers/mcp-handlers.types.d.ts +0 -0
  1034. /package/{src/transport → transport}/mcp-handlers/roots-list-changed-notification.handler.d.ts +0 -0
  1035. /package/{src/transport → transport}/transport.error.d.ts +0 -0
  1036. /package/{src/transport → transport}/transport.event-store.d.ts +0 -0
  1037. /package/{src/transport → transport}/transport.local.d.ts +0 -0
  1038. /package/{src/transport → transport}/transport.remote.d.ts +0 -0
  1039. /package/{src/transport → transport}/transport.types.d.ts +0 -0
  1040. /package/{src/types → types}/drinen-hooks.types.d.ts +0 -0
  1041. /package/{src/types → types}/invoke.type.d.ts +0 -0
  1042. /package/{src/types → types}/token.types.d.ts +0 -0
  1043. /package/{src/utils → utils}/content.utils.d.ts +0 -0
  1044. /package/{src/utils → utils}/index.d.ts +0 -0
  1045. /package/{src/utils → utils}/lineage.utils.d.ts +0 -0
  1046. /package/{src/utils → utils}/metadata.utils.d.ts +0 -0
  1047. /package/{src/utils → utils}/naming.utils.d.ts +0 -0
  1048. /package/{src/utils → utils}/server.utils.d.ts +0 -0
  1049. /package/{src/utils → utils}/string.utils.d.ts +0 -0
  1050. /package/{src/utils → utils}/token.utils.d.ts +0 -0
  1051. /package/{src/utils → utils}/types.utils.d.ts +0 -0
  1052. /package/{src/utils → utils}/uri-template.utils.d.ts +0 -0
  1053. /package/{src/utils → utils}/uri-validation.utils.d.ts +0 -0
@@ -1,419 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file template.ts
4
- * @description MCP Apps HTML template generator.
5
- *
6
- * Generates standard HTML5 documents with embedded MCP bridge for MCP Apps spec compliance.
7
- *
8
- * @module @frontmcp/sdk/mcp-apps/template
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.generateMcpAppsTemplate = generateMcpAppsTemplate;
12
- exports.wrapInMcpAppsTemplate = wrapInMcpAppsTemplate;
13
- exports.createSimpleMcpAppsTemplate = createSimpleMcpAppsTemplate;
14
- exports.extractBodyContent = extractBodyContent;
15
- const types_1 = require("./types");
16
- const csp_1 = require("./csp");
17
- // ============================================
18
- // Template Generator
19
- // ============================================
20
- /**
21
- * Generate MCP Apps compliant HTML5 document.
22
- *
23
- * @param options - Template options
24
- * @returns Complete HTML5 document string
25
- *
26
- * @example
27
- * ```typescript
28
- * const html = generateMcpAppsTemplate({
29
- * title: 'Weather Dashboard',
30
- * bodyContent: '<div id="weather">Loading...</div>',
31
- * toolInfo: { tool: { name: 'get_weather' } },
32
- * input: { city: 'San Francisco' },
33
- * output: { temperature: 72, condition: 'sunny' },
34
- * csp: { connectDomains: ['https://api.weather.com'] },
35
- * });
36
- * ```
37
- */
38
- function generateMcpAppsTemplate(options) {
39
- const { toolInfo, input, output, structuredContent, csp, title = 'MCP App', headContent = '', bodyContent, scripts = [], includeBridge = true, bridgeConfig, theme = 'light', debug = false, } = options;
40
- // Build CSP meta tag
41
- const cspMeta = (0, csp_1.buildCSPMetaTag)(csp);
42
- // Build data attributes for initial state
43
- const dataAttrs = buildDataAttributes({ toolInfo, input, output, structuredContent });
44
- // Build bridge script
45
- const bridgeScript = includeBridge ? generateBridgeScript({ ...bridgeConfig, debug }) : '';
46
- // Build additional scripts
47
- const additionalScripts = scripts.map((s) => `<script>${s}</script>`).join('\n');
48
- return `<!DOCTYPE html>
49
- <html lang="en" data-theme="${escapeAttr(theme)}">
50
- <head>
51
- <meta charset="UTF-8">
52
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
53
- ${cspMeta}
54
- <meta name="mcp-apps-version" content="${types_1.MCP_APPS_PROTOCOL_VERSION}">
55
- <meta name="mcp-apps-mime-type" content="${types_1.MCP_APPS_MIME_TYPE}">
56
- <title>${escapeHtml(title)}</title>
57
- <style>
58
- :root {
59
- --mcp-bg: #ffffff;
60
- --mcp-text: #1a1a1a;
61
- --mcp-border: #e5e5e5;
62
- --mcp-primary: #0969da;
63
- --mcp-error: #cf222e;
64
- --mcp-success: #1a7f37;
65
- }
66
- [data-theme="dark"] {
67
- --mcp-bg: #0d1117;
68
- --mcp-text: #c9d1d9;
69
- --mcp-border: #30363d;
70
- --mcp-primary: #58a6ff;
71
- --mcp-error: #f85149;
72
- --mcp-success: #3fb950;
73
- }
74
- * { box-sizing: border-box; }
75
- body {
76
- margin: 0;
77
- padding: 16px;
78
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
79
- background: var(--mcp-bg);
80
- color: var(--mcp-text);
81
- line-height: 1.5;
82
- }
83
- </style>
84
- ${headContent}
85
- </head>
86
- <body ${dataAttrs}>
87
- ${bodyContent}
88
- ${bridgeScript}
89
- ${additionalScripts}
90
- </body>
91
- </html>`;
92
- }
93
- // ============================================
94
- // Bridge Script Generator
95
- // ============================================
96
- /**
97
- * Generate the MCP Apps bridge runtime script.
98
- */
99
- function generateBridgeScript(config) {
100
- const { protocolVersion = types_1.MCP_APPS_PROTOCOL_VERSION, trustedOrigin = '*', requestTimeout = 30000, debug = false, } = config || {};
101
- return `<script>
102
- (function() {
103
- 'use strict';
104
-
105
- // MCP Apps Bridge Runtime
106
- const MCP_PROTOCOL_VERSION = '${protocolVersion}';
107
- const REQUEST_TIMEOUT = ${requestTimeout};
108
- const DEBUG = ${debug};
109
-
110
- // State
111
- let initialized = false;
112
- let hostContext = {};
113
- let pendingRequests = new Map();
114
- let messageId = 0;
115
- let trustedOrigin = '${trustedOrigin}';
116
-
117
- // Logging
118
- function log(...args) {
119
- if (DEBUG) console.log('[MCP Bridge]', ...args);
120
- }
121
-
122
- // Generate unique message ID
123
- function nextId() {
124
- return ++messageId;
125
- }
126
-
127
- // Send JSON-RPC message to host
128
- function sendMessage(message) {
129
- log('Sending:', message);
130
- parent.postMessage(message, trustedOrigin);
131
- }
132
-
133
- // Send JSON-RPC request and wait for response
134
- function sendRequest(method, params) {
135
- return new Promise((resolve, reject) => {
136
- const id = nextId();
137
- const request = {
138
- jsonrpc: '2.0',
139
- id: id,
140
- method: method,
141
- params: params
142
- };
143
-
144
- const timeout = setTimeout(() => {
145
- pendingRequests.delete(id);
146
- reject(new Error('Request timeout: ' + method));
147
- }, REQUEST_TIMEOUT);
148
-
149
- pendingRequests.set(id, { resolve, reject, timeout });
150
- sendMessage(request);
151
- });
152
- }
153
-
154
- // Send JSON-RPC notification (no response expected)
155
- function sendNotification(method, params) {
156
- sendMessage({
157
- jsonrpc: '2.0',
158
- method: method,
159
- params: params
160
- });
161
- }
162
-
163
- // Handle incoming messages from host
164
- function handleMessage(event) {
165
- // Validate origin on first message (trust-on-first-use)
166
- if (trustedOrigin === '*' && event.origin) {
167
- trustedOrigin = event.origin;
168
- log('Trusted origin set to:', trustedOrigin);
169
- }
170
-
171
- const data = event.data;
172
- if (!data || data.jsonrpc !== '2.0') return;
173
-
174
- log('Received:', data);
175
-
176
- // Handle response to our request
177
- if (data.id !== undefined && pendingRequests.has(data.id)) {
178
- const { resolve, reject, timeout } = pendingRequests.get(data.id);
179
- clearTimeout(timeout);
180
- pendingRequests.delete(data.id);
181
-
182
- if (data.error) {
183
- reject(new Error(data.error.message || 'Unknown error'));
184
- } else {
185
- resolve(data.result);
186
- }
187
- return;
188
- }
189
-
190
- // Handle notifications from host
191
- if (data.method) {
192
- handleNotification(data.method, data.params);
193
- }
194
- }
195
-
196
- // Handle notifications from host
197
- function handleNotification(method, params) {
198
- switch (method) {
199
- case '${types_1.MCP_APPS_METHODS.TOOL_INPUT}':
200
- window.dispatchEvent(new CustomEvent('mcp:tool-input', { detail: params }));
201
- break;
202
- case '${types_1.MCP_APPS_METHODS.TOOL_INPUT_PARTIAL}':
203
- window.dispatchEvent(new CustomEvent('mcp:tool-input-partial', { detail: params }));
204
- break;
205
- case '${types_1.MCP_APPS_METHODS.TOOL_RESULT}':
206
- window.dispatchEvent(new CustomEvent('mcp:tool-result', { detail: params }));
207
- break;
208
- case '${types_1.MCP_APPS_METHODS.TOOL_CANCELLED}':
209
- window.dispatchEvent(new CustomEvent('mcp:tool-cancelled', { detail: params }));
210
- break;
211
- case '${types_1.MCP_APPS_METHODS.SIZE_CHANGE}':
212
- window.dispatchEvent(new CustomEvent('mcp:size-change', { detail: params }));
213
- break;
214
- case '${types_1.MCP_APPS_METHODS.HOST_CONTEXT_CHANGE}':
215
- Object.assign(hostContext, params.changes);
216
- window.dispatchEvent(new CustomEvent('mcp:context-change', { detail: params.changes }));
217
- // Update theme if changed
218
- if (params.changes.theme) {
219
- document.documentElement.setAttribute('data-theme', params.changes.theme);
220
- }
221
- break;
222
- case '${types_1.MCP_APPS_METHODS.RESOURCE_TEARDOWN}':
223
- window.dispatchEvent(new CustomEvent('mcp:teardown', { detail: params }));
224
- break;
225
- }
226
- }
227
-
228
- // Initialize connection with host
229
- async function initialize() {
230
- if (initialized) return hostContext;
231
-
232
- try {
233
- const result = await sendRequest('${types_1.MCP_APPS_METHODS.INITIALIZE}', {
234
- protocolVersion: MCP_PROTOCOL_VERSION,
235
- capabilities: {
236
- messages: ['${types_1.MCP_APPS_METHODS.TOOL_INPUT}', '${types_1.MCP_APPS_METHODS.TOOL_RESULT}']
237
- }
238
- });
239
-
240
- hostContext = result.hostContext || {};
241
- initialized = true;
242
-
243
- // Apply initial theme
244
- if (hostContext.theme) {
245
- document.documentElement.setAttribute('data-theme', hostContext.theme);
246
- }
247
-
248
- // Send initialized notification
249
- sendNotification('${types_1.MCP_APPS_METHODS.INITIALIZED}', {});
250
-
251
- log('Initialized with context:', hostContext);
252
- window.dispatchEvent(new CustomEvent('mcp:initialized', { detail: hostContext }));
253
-
254
- return hostContext;
255
- } catch (error) {
256
- console.error('[MCP Bridge] Initialization failed:', error);
257
- throw error;
258
- }
259
- }
260
-
261
- // Public API
262
- window.mcpBridge = {
263
- // Initialize connection
264
- initialize: initialize,
265
-
266
- // Get current host context
267
- getHostContext: function() {
268
- return { ...hostContext };
269
- },
270
-
271
- // Get tool info
272
- getToolInfo: function() {
273
- return hostContext.toolInfo;
274
- },
275
-
276
- // Call a tool on the MCP server
277
- callTool: function(name, args) {
278
- return sendRequest('${types_1.MCP_APPS_METHODS.TOOLS_CALL}', { name, arguments: args });
279
- },
280
-
281
- // Read a resource
282
- readResource: function(uri) {
283
- return sendRequest('${types_1.MCP_APPS_METHODS.RESOURCES_READ}', { uri });
284
- },
285
-
286
- // Request host to open a link
287
- openLink: function(url) {
288
- return sendRequest('${types_1.MCP_APPS_METHODS.OPEN_LINK}', { url });
289
- },
290
-
291
- // Send message to host's chat
292
- sendMessage: function(content) {
293
- return sendRequest('${types_1.MCP_APPS_METHODS.MESSAGE}', { content });
294
- },
295
-
296
- // Log message to host
297
- log: function(level, message, data) {
298
- sendNotification('${types_1.MCP_APPS_METHODS.NOTIFICATIONS_MESSAGE}', {
299
- level: level,
300
- logger: 'mcp-app',
301
- data: { message, ...data }
302
- });
303
- },
304
-
305
- // Ping host
306
- ping: function() {
307
- return sendRequest('${types_1.MCP_APPS_METHODS.PING}', {});
308
- },
309
-
310
- // Check if initialized
311
- isInitialized: function() {
312
- return initialized;
313
- },
314
-
315
- // Protocol version
316
- protocolVersion: MCP_PROTOCOL_VERSION
317
- };
318
-
319
- // Listen for messages
320
- window.addEventListener('message', handleMessage);
321
-
322
- // Auto-initialize when DOM is ready
323
- if (document.readyState === 'loading') {
324
- document.addEventListener('DOMContentLoaded', function() {
325
- initialize().catch(function(err) {
326
- log('Auto-init failed:', err);
327
- });
328
- });
329
- } else {
330
- initialize().catch(function(err) {
331
- log('Auto-init failed:', err);
332
- });
333
- }
334
-
335
- log('Bridge loaded');
336
- })();
337
- </script>`;
338
- }
339
- // ============================================
340
- // Helper Functions
341
- // ============================================
342
- /**
343
- * Build data attributes for initial state injection.
344
- */
345
- function buildDataAttributes(options) {
346
- const attrs = [];
347
- if (options.toolInfo) {
348
- attrs.push(`data-mcp-tool="${escapeAttr(JSON.stringify(options.toolInfo))}"`);
349
- }
350
- if (options.input) {
351
- attrs.push(`data-mcp-input="${escapeAttr(JSON.stringify(options.input))}"`);
352
- }
353
- if (options.output !== undefined) {
354
- attrs.push(`data-mcp-output="${escapeAttr(JSON.stringify(options.output))}"`);
355
- }
356
- if (options.structuredContent !== undefined) {
357
- attrs.push(`data-mcp-structured="${escapeAttr(JSON.stringify(options.structuredContent))}"`);
358
- }
359
- return attrs.join(' ');
360
- }
361
- /**
362
- * Escape HTML content.
363
- */
364
- function escapeHtml(str) {
365
- return str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
366
- }
367
- /**
368
- * Escape HTML attribute value.
369
- */
370
- function escapeAttr(str) {
371
- return str
372
- .replace(/&/g, '&amp;')
373
- .replace(/"/g, '&quot;')
374
- .replace(/'/g, '&#39;')
375
- .replace(/</g, '&lt;')
376
- .replace(/>/g, '&gt;');
377
- }
378
- // ============================================
379
- // Utility Functions
380
- // ============================================
381
- /**
382
- * Wrap existing HTML content in MCP Apps template.
383
- *
384
- * @param html - Existing HTML content
385
- * @param options - Template options (without bodyContent)
386
- * @returns Complete MCP Apps HTML document
387
- */
388
- function wrapInMcpAppsTemplate(html, options) {
389
- return generateMcpAppsTemplate({
390
- ...options,
391
- bodyContent: html,
392
- });
393
- }
394
- /**
395
- * Create a minimal MCP Apps template for simple content.
396
- *
397
- * @param content - Simple text or HTML content
398
- * @param title - Page title
399
- * @returns Complete MCP Apps HTML document
400
- */
401
- function createSimpleMcpAppsTemplate(content, title) {
402
- return generateMcpAppsTemplate({
403
- title: title || 'MCP App',
404
- bodyContent: `<div class="mcp-content">${content}</div>`,
405
- includeBridge: true,
406
- });
407
- }
408
- /**
409
- * Extract body content from MCP Apps template.
410
- * Useful for testing.
411
- *
412
- * @param html - Complete HTML document
413
- * @returns Body content string or null
414
- */
415
- function extractBodyContent(html) {
416
- const match = html.match(/<body[^>]*>([\s\S]*?)<script/);
417
- return match ? match[1].trim() : null;
418
- }
419
- //# sourceMappingURL=template.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/mcp-apps/template.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AA4EH,0DAyEC;AAgUD,sDAKC;AASD,kEAMC;AASD,gDAGC;AAlfD,mCAA0F;AAC1F,+BAAwC;AAkDxC,+CAA+C;AAC/C,qBAAqB;AACrB,+CAA+C;AAE/C;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,uBAAuB,CAAC,OAA+B;IACrE,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,MAAM,EACN,iBAAiB,EACjB,GAAG,EACH,KAAK,GAAG,SAAS,EACjB,WAAW,GAAG,EAAE,EAChB,WAAW,EACX,OAAO,GAAG,EAAE,EACZ,aAAa,GAAG,IAAI,EACpB,YAAY,EACZ,KAAK,GAAG,OAAO,EACf,KAAK,GAAG,KAAK,GACd,GAAG,OAAO,CAAC;IAEZ,qBAAqB;IACrB,MAAM,OAAO,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,CAAC;IAErC,0CAA0C;IAC1C,MAAM,SAAS,GAAG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAEtF,sBAAsB;IACtB,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3F,2BAA2B;IAC3B,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEjF,OAAO;8BACqB,UAAU,CAAC,KAAK,CAAC;;;;IAI3C,OAAO;2CACgC,iCAAyB;6CACvB,0BAAkB;WACpD,UAAU,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4BxB,WAAW;;QAEP,SAAS;IACb,WAAW;IACX,YAAY;IACZ,iBAAiB;;QAEb,CAAC;AACT,CAAC;AAED,+CAA+C;AAC/C,0BAA0B;AAC1B,+CAA+C;AAE/C;;GAEG;AACH,SAAS,oBAAoB,CAAC,MAAkD;IAC9E,MAAM,EACJ,eAAe,GAAG,iCAAyB,EAC3C,aAAa,GAAG,GAAG,EACnB,cAAc,GAAG,KAAK,EACtB,KAAK,GAAG,KAAK,GACd,GAAG,MAAM,IAAI,EAAE,CAAC;IAEjB,OAAO;;;;;kCAKyB,eAAe;4BACrB,cAAc;kBACxB,KAAK;;;;;;;yBAOE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoFxB,wBAAgB,CAAC,UAAU;;;cAG3B,wBAAgB,CAAC,kBAAkB;;;cAGnC,wBAAgB,CAAC,WAAW;;;cAG5B,wBAAgB,CAAC,cAAc;;;cAG/B,wBAAgB,CAAC,WAAW;;;cAG5B,wBAAgB,CAAC,mBAAmB;;;;;;;;cAQpC,wBAAgB,CAAC,iBAAiB;;;;;;;;;;;0CAWN,wBAAgB,CAAC,UAAU;;;wBAG7C,wBAAgB,CAAC,UAAU,OAAO,wBAAgB,CAAC,WAAW;;;;;;;;;;;;;0BAa5D,wBAAgB,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA6B1B,wBAAgB,CAAC,UAAU;;;;;4BAK3B,wBAAgB,CAAC,cAAc;;;;;4BAK/B,wBAAgB,CAAC,SAAS;;;;;4BAK1B,wBAAgB,CAAC,OAAO;;;;;0BAK1B,wBAAgB,CAAC,qBAAqB;;;;;;;;;4BASpC,wBAAgB,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8BvC,CAAC;AACX,CAAC;AAED,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C;;GAEG;AACH,SAAS,mBAAmB,CAAC,OAK5B;IACC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,mBAAmB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,oBAAoB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,OAAO,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,wBAAwB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/F,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,+CAA+C;AAC/C,oBAAoB;AACpB,+CAA+C;AAE/C;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,IAAY,EAAE,OAAoD;IACtG,OAAO,uBAAuB,CAAC;QAC7B,GAAG,OAAO;QACV,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,2BAA2B,CAAC,OAAe,EAAE,KAAc;IACzE,OAAO,uBAAuB,CAAC;QAC7B,KAAK,EAAE,KAAK,IAAI,SAAS;QACzB,WAAW,EAAE,4BAA4B,OAAO,QAAQ;QACxD,aAAa,EAAE,IAAI;KACpB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACzD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACxC,CAAC","sourcesContent":["/**\n * @file template.ts\n * @description MCP Apps HTML template generator.\n *\n * Generates standard HTML5 documents with embedded MCP bridge for MCP Apps spec compliance.\n *\n * @module @frontmcp/sdk/mcp-apps/template\n */\n\nimport type { McpAppsCSP, McpAppsHostContext, ToolInfo } from './types';\nimport { MCP_APPS_MIME_TYPE, MCP_APPS_PROTOCOL_VERSION, MCP_APPS_METHODS } from './types';\nimport { buildCSPMetaTag } from './csp';\n\n// ============================================\n// Template Options\n// ============================================\n\n/**\n * Options for generating MCP Apps HTML template.\n */\nexport interface McpAppsTemplateOptions {\n /** Tool information */\n toolInfo?: ToolInfo;\n /** Tool input arguments */\n input?: Record<string, unknown>;\n /** Tool output/result */\n output?: unknown;\n /** Structured content for UI rendering */\n structuredContent?: unknown;\n /** Content Security Policy */\n csp?: McpAppsCSP;\n /** Page title */\n title?: string;\n /** Additional head content (styles, meta tags) */\n headContent?: string;\n /** Main body content (HTML) */\n bodyContent: string;\n /** Additional scripts to include */\n scripts?: string[];\n /** Whether to include the MCP bridge runtime */\n includeBridge?: boolean;\n /** Custom bridge configuration */\n bridgeConfig?: McpAppsBridgeConfig;\n /** Initial theme */\n theme?: 'light' | 'dark';\n /** Debug mode - adds console logging */\n debug?: boolean;\n}\n\n/**\n * MCP Apps bridge configuration.\n */\nexport interface McpAppsBridgeConfig {\n /** Protocol version */\n protocolVersion?: string;\n /** Trusted origin for postMessage */\n trustedOrigin?: string;\n /** Request timeout in milliseconds */\n requestTimeout?: number;\n}\n\n// ============================================\n// Template Generator\n// ============================================\n\n/**\n * Generate MCP Apps compliant HTML5 document.\n *\n * @param options - Template options\n * @returns Complete HTML5 document string\n *\n * @example\n * ```typescript\n * const html = generateMcpAppsTemplate({\n * title: 'Weather Dashboard',\n * bodyContent: '<div id=\"weather\">Loading...</div>',\n * toolInfo: { tool: { name: 'get_weather' } },\n * input: { city: 'San Francisco' },\n * output: { temperature: 72, condition: 'sunny' },\n * csp: { connectDomains: ['https://api.weather.com'] },\n * });\n * ```\n */\nexport function generateMcpAppsTemplate(options: McpAppsTemplateOptions): string {\n const {\n toolInfo,\n input,\n output,\n structuredContent,\n csp,\n title = 'MCP App',\n headContent = '',\n bodyContent,\n scripts = [],\n includeBridge = true,\n bridgeConfig,\n theme = 'light',\n debug = false,\n } = options;\n\n // Build CSP meta tag\n const cspMeta = buildCSPMetaTag(csp);\n\n // Build data attributes for initial state\n const dataAttrs = buildDataAttributes({ toolInfo, input, output, structuredContent });\n\n // Build bridge script\n const bridgeScript = includeBridge ? generateBridgeScript({ ...bridgeConfig, debug }) : '';\n\n // Build additional scripts\n const additionalScripts = scripts.map((s) => `<script>${s}</script>`).join('\\n');\n\n return `<!DOCTYPE html>\n<html lang=\"en\" data-theme=\"${escapeAttr(theme)}\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n ${cspMeta}\n <meta name=\"mcp-apps-version\" content=\"${MCP_APPS_PROTOCOL_VERSION}\">\n <meta name=\"mcp-apps-mime-type\" content=\"${MCP_APPS_MIME_TYPE}\">\n <title>${escapeHtml(title)}</title>\n <style>\n :root {\n --mcp-bg: #ffffff;\n --mcp-text: #1a1a1a;\n --mcp-border: #e5e5e5;\n --mcp-primary: #0969da;\n --mcp-error: #cf222e;\n --mcp-success: #1a7f37;\n }\n [data-theme=\"dark\"] {\n --mcp-bg: #0d1117;\n --mcp-text: #c9d1d9;\n --mcp-border: #30363d;\n --mcp-primary: #58a6ff;\n --mcp-error: #f85149;\n --mcp-success: #3fb950;\n }\n * { box-sizing: border-box; }\n body {\n margin: 0;\n padding: 16px;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n background: var(--mcp-bg);\n color: var(--mcp-text);\n line-height: 1.5;\n }\n </style>\n ${headContent}\n</head>\n<body ${dataAttrs}>\n ${bodyContent}\n ${bridgeScript}\n ${additionalScripts}\n</body>\n</html>`;\n}\n\n// ============================================\n// Bridge Script Generator\n// ============================================\n\n/**\n * Generate the MCP Apps bridge runtime script.\n */\nfunction generateBridgeScript(config?: McpAppsBridgeConfig & { debug?: boolean }): string {\n const {\n protocolVersion = MCP_APPS_PROTOCOL_VERSION,\n trustedOrigin = '*',\n requestTimeout = 30000,\n debug = false,\n } = config || {};\n\n return `<script>\n(function() {\n 'use strict';\n\n // MCP Apps Bridge Runtime\n const MCP_PROTOCOL_VERSION = '${protocolVersion}';\n const REQUEST_TIMEOUT = ${requestTimeout};\n const DEBUG = ${debug};\n\n // State\n let initialized = false;\n let hostContext = {};\n let pendingRequests = new Map();\n let messageId = 0;\n let trustedOrigin = '${trustedOrigin}';\n\n // Logging\n function log(...args) {\n if (DEBUG) console.log('[MCP Bridge]', ...args);\n }\n\n // Generate unique message ID\n function nextId() {\n return ++messageId;\n }\n\n // Send JSON-RPC message to host\n function sendMessage(message) {\n log('Sending:', message);\n parent.postMessage(message, trustedOrigin);\n }\n\n // Send JSON-RPC request and wait for response\n function sendRequest(method, params) {\n return new Promise((resolve, reject) => {\n const id = nextId();\n const request = {\n jsonrpc: '2.0',\n id: id,\n method: method,\n params: params\n };\n\n const timeout = setTimeout(() => {\n pendingRequests.delete(id);\n reject(new Error('Request timeout: ' + method));\n }, REQUEST_TIMEOUT);\n\n pendingRequests.set(id, { resolve, reject, timeout });\n sendMessage(request);\n });\n }\n\n // Send JSON-RPC notification (no response expected)\n function sendNotification(method, params) {\n sendMessage({\n jsonrpc: '2.0',\n method: method,\n params: params\n });\n }\n\n // Handle incoming messages from host\n function handleMessage(event) {\n // Validate origin on first message (trust-on-first-use)\n if (trustedOrigin === '*' && event.origin) {\n trustedOrigin = event.origin;\n log('Trusted origin set to:', trustedOrigin);\n }\n\n const data = event.data;\n if (!data || data.jsonrpc !== '2.0') return;\n\n log('Received:', data);\n\n // Handle response to our request\n if (data.id !== undefined && pendingRequests.has(data.id)) {\n const { resolve, reject, timeout } = pendingRequests.get(data.id);\n clearTimeout(timeout);\n pendingRequests.delete(data.id);\n\n if (data.error) {\n reject(new Error(data.error.message || 'Unknown error'));\n } else {\n resolve(data.result);\n }\n return;\n }\n\n // Handle notifications from host\n if (data.method) {\n handleNotification(data.method, data.params);\n }\n }\n\n // Handle notifications from host\n function handleNotification(method, params) {\n switch (method) {\n case '${MCP_APPS_METHODS.TOOL_INPUT}':\n window.dispatchEvent(new CustomEvent('mcp:tool-input', { detail: params }));\n break;\n case '${MCP_APPS_METHODS.TOOL_INPUT_PARTIAL}':\n window.dispatchEvent(new CustomEvent('mcp:tool-input-partial', { detail: params }));\n break;\n case '${MCP_APPS_METHODS.TOOL_RESULT}':\n window.dispatchEvent(new CustomEvent('mcp:tool-result', { detail: params }));\n break;\n case '${MCP_APPS_METHODS.TOOL_CANCELLED}':\n window.dispatchEvent(new CustomEvent('mcp:tool-cancelled', { detail: params }));\n break;\n case '${MCP_APPS_METHODS.SIZE_CHANGE}':\n window.dispatchEvent(new CustomEvent('mcp:size-change', { detail: params }));\n break;\n case '${MCP_APPS_METHODS.HOST_CONTEXT_CHANGE}':\n Object.assign(hostContext, params.changes);\n window.dispatchEvent(new CustomEvent('mcp:context-change', { detail: params.changes }));\n // Update theme if changed\n if (params.changes.theme) {\n document.documentElement.setAttribute('data-theme', params.changes.theme);\n }\n break;\n case '${MCP_APPS_METHODS.RESOURCE_TEARDOWN}':\n window.dispatchEvent(new CustomEvent('mcp:teardown', { detail: params }));\n break;\n }\n }\n\n // Initialize connection with host\n async function initialize() {\n if (initialized) return hostContext;\n\n try {\n const result = await sendRequest('${MCP_APPS_METHODS.INITIALIZE}', {\n protocolVersion: MCP_PROTOCOL_VERSION,\n capabilities: {\n messages: ['${MCP_APPS_METHODS.TOOL_INPUT}', '${MCP_APPS_METHODS.TOOL_RESULT}']\n }\n });\n\n hostContext = result.hostContext || {};\n initialized = true;\n\n // Apply initial theme\n if (hostContext.theme) {\n document.documentElement.setAttribute('data-theme', hostContext.theme);\n }\n\n // Send initialized notification\n sendNotification('${MCP_APPS_METHODS.INITIALIZED}', {});\n\n log('Initialized with context:', hostContext);\n window.dispatchEvent(new CustomEvent('mcp:initialized', { detail: hostContext }));\n\n return hostContext;\n } catch (error) {\n console.error('[MCP Bridge] Initialization failed:', error);\n throw error;\n }\n }\n\n // Public API\n window.mcpBridge = {\n // Initialize connection\n initialize: initialize,\n\n // Get current host context\n getHostContext: function() {\n return { ...hostContext };\n },\n\n // Get tool info\n getToolInfo: function() {\n return hostContext.toolInfo;\n },\n\n // Call a tool on the MCP server\n callTool: function(name, args) {\n return sendRequest('${MCP_APPS_METHODS.TOOLS_CALL}', { name, arguments: args });\n },\n\n // Read a resource\n readResource: function(uri) {\n return sendRequest('${MCP_APPS_METHODS.RESOURCES_READ}', { uri });\n },\n\n // Request host to open a link\n openLink: function(url) {\n return sendRequest('${MCP_APPS_METHODS.OPEN_LINK}', { url });\n },\n\n // Send message to host's chat\n sendMessage: function(content) {\n return sendRequest('${MCP_APPS_METHODS.MESSAGE}', { content });\n },\n\n // Log message to host\n log: function(level, message, data) {\n sendNotification('${MCP_APPS_METHODS.NOTIFICATIONS_MESSAGE}', {\n level: level,\n logger: 'mcp-app',\n data: { message, ...data }\n });\n },\n\n // Ping host\n ping: function() {\n return sendRequest('${MCP_APPS_METHODS.PING}', {});\n },\n\n // Check if initialized\n isInitialized: function() {\n return initialized;\n },\n\n // Protocol version\n protocolVersion: MCP_PROTOCOL_VERSION\n };\n\n // Listen for messages\n window.addEventListener('message', handleMessage);\n\n // Auto-initialize when DOM is ready\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', function() {\n initialize().catch(function(err) {\n log('Auto-init failed:', err);\n });\n });\n } else {\n initialize().catch(function(err) {\n log('Auto-init failed:', err);\n });\n }\n\n log('Bridge loaded');\n})();\n</script>`;\n}\n\n// ============================================\n// Helper Functions\n// ============================================\n\n/**\n * Build data attributes for initial state injection.\n */\nfunction buildDataAttributes(options: {\n toolInfo?: ToolInfo;\n input?: Record<string, unknown>;\n output?: unknown;\n structuredContent?: unknown;\n}): string {\n const attrs: string[] = [];\n\n if (options.toolInfo) {\n attrs.push(`data-mcp-tool=\"${escapeAttr(JSON.stringify(options.toolInfo))}\"`);\n }\n\n if (options.input) {\n attrs.push(`data-mcp-input=\"${escapeAttr(JSON.stringify(options.input))}\"`);\n }\n\n if (options.output !== undefined) {\n attrs.push(`data-mcp-output=\"${escapeAttr(JSON.stringify(options.output))}\"`);\n }\n\n if (options.structuredContent !== undefined) {\n attrs.push(`data-mcp-structured=\"${escapeAttr(JSON.stringify(options.structuredContent))}\"`);\n }\n\n return attrs.join(' ');\n}\n\n/**\n * Escape HTML content.\n */\nfunction escapeHtml(str: string): string {\n return str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');\n}\n\n/**\n * Escape HTML attribute value.\n */\nfunction escapeAttr(str: string): string {\n return str\n .replace(/&/g, '&amp;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#39;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n}\n\n// ============================================\n// Utility Functions\n// ============================================\n\n/**\n * Wrap existing HTML content in MCP Apps template.\n *\n * @param html - Existing HTML content\n * @param options - Template options (without bodyContent)\n * @returns Complete MCP Apps HTML document\n */\nexport function wrapInMcpAppsTemplate(html: string, options: Omit<McpAppsTemplateOptions, 'bodyContent'>): string {\n return generateMcpAppsTemplate({\n ...options,\n bodyContent: html,\n });\n}\n\n/**\n * Create a minimal MCP Apps template for simple content.\n *\n * @param content - Simple text or HTML content\n * @param title - Page title\n * @returns Complete MCP Apps HTML document\n */\nexport function createSimpleMcpAppsTemplate(content: string, title?: string): string {\n return generateMcpAppsTemplate({\n title: title || 'MCP App',\n bodyContent: `<div class=\"mcp-content\">${content}</div>`,\n includeBridge: true,\n });\n}\n\n/**\n * Extract body content from MCP Apps template.\n * Useful for testing.\n *\n * @param html - Complete HTML document\n * @returns Body content string or null\n */\nexport function extractBodyContent(html: string): string | null {\n const match = html.match(/<body[^>]*>([\\s\\S]*?)<script/);\n return match ? match[1].trim() : null;\n}\n"]}
@@ -1,59 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file types.ts
4
- * @description MCP Apps specification types.
5
- *
6
- * Implements types from the MCP Apps extension specification:
7
- * https://github.com/modelcontextprotocol/ext-apps/blob/main/specification/draft/apps.mdx
8
- *
9
- * @module @frontmcp/sdk/mcp-apps/types
10
- */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.MCP_APPS_PROTOCOL_VERSION = exports.MCP_APPS_METHODS = exports.MCP_APPS_MIME_TYPE = void 0;
13
- // ============================================
14
- // MIME Types
15
- // ============================================
16
- /**
17
- * MCP Apps content MIME type.
18
- * MVP specification supports only HTML5 documents.
19
- */
20
- exports.MCP_APPS_MIME_TYPE = 'text/html+mcp';
21
- // ============================================
22
- // MCP Apps Method Names
23
- // ============================================
24
- /**
25
- * MCP Apps protocol method names.
26
- */
27
- exports.MCP_APPS_METHODS = {
28
- // Lifecycle
29
- INITIALIZE: 'ui/initialize',
30
- INITIALIZED: 'ui/notifications/initialized',
31
- // Tool lifecycle notifications (Host → UI)
32
- TOOL_INPUT: 'ui/notifications/tool-input',
33
- TOOL_INPUT_PARTIAL: 'ui/notifications/tool-input-partial',
34
- TOOL_RESULT: 'ui/notifications/tool-result',
35
- TOOL_CANCELLED: 'ui/notifications/tool-cancelled',
36
- // Context notifications (Host → UI)
37
- SIZE_CHANGE: 'ui/notifications/size-change',
38
- HOST_CONTEXT_CHANGE: 'ui/host-context-change',
39
- RESOURCE_TEARDOWN: 'ui/resource-teardown',
40
- // UI Requests (UI → Host)
41
- OPEN_LINK: 'ui/open-link',
42
- MESSAGE: 'ui/message',
43
- // Standard MCP methods that UI can use
44
- TOOLS_CALL: 'tools/call',
45
- RESOURCES_READ: 'resources/read',
46
- NOTIFICATIONS_MESSAGE: 'notifications/message',
47
- PING: 'ping',
48
- // Sandbox proxy (web hosts only)
49
- SANDBOX_READY: 'ui/notifications/sandbox-ready',
50
- SANDBOX_RESOURCE_READY: 'ui/notifications/sandbox-resource-ready',
51
- };
52
- // ============================================
53
- // Protocol Version
54
- // ============================================
55
- /**
56
- * Current MCP Apps protocol version.
57
- */
58
- exports.MCP_APPS_PROTOCOL_VERSION = '2025-01-01';
59
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/mcp-apps/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,+CAA+C;AAC/C,aAAa;AACb,+CAA+C;AAE/C;;;GAGG;AACU,QAAA,kBAAkB,GAAG,eAAwB,CAAC;AAuS3D,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,YAAY;IACZ,UAAU,EAAE,eAAe;IAC3B,WAAW,EAAE,8BAA8B;IAE3C,2CAA2C;IAC3C,UAAU,EAAE,6BAA6B;IACzC,kBAAkB,EAAE,qCAAqC;IACzD,WAAW,EAAE,8BAA8B;IAC3C,cAAc,EAAE,iCAAiC;IAEjD,oCAAoC;IACpC,WAAW,EAAE,8BAA8B;IAC3C,mBAAmB,EAAE,wBAAwB;IAC7C,iBAAiB,EAAE,sBAAsB;IAEzC,0BAA0B;IAC1B,SAAS,EAAE,cAAc;IACzB,OAAO,EAAE,YAAY;IAErB,uCAAuC;IACvC,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,qBAAqB,EAAE,uBAAuB;IAC9C,IAAI,EAAE,MAAM;IAEZ,iCAAiC;IACjC,aAAa,EAAE,gCAAgC;IAC/C,sBAAsB,EAAE,yCAAyC;CACzD,CAAC;AA8CX,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C;;GAEG;AACU,QAAA,yBAAyB,GAAG,YAAqB,CAAC","sourcesContent":["/**\n * @file types.ts\n * @description MCP Apps specification types.\n *\n * Implements types from the MCP Apps extension specification:\n * https://github.com/modelcontextprotocol/ext-apps/blob/main/specification/draft/apps.mdx\n *\n * @module @frontmcp/sdk/mcp-apps/types\n */\n\n// ============================================\n// MIME Types\n// ============================================\n\n/**\n * MCP Apps content MIME type.\n * MVP specification supports only HTML5 documents.\n */\nexport const MCP_APPS_MIME_TYPE = 'text/html+mcp' as const;\n\n/**\n * Supported MIME types for MCP Apps resources.\n */\nexport type McpAppsMimeType = typeof MCP_APPS_MIME_TYPE;\n\n// ============================================\n// UI Resource Types\n// ============================================\n\n/**\n * Content Security Policy configuration for UI resources.\n * Hosts construct CSP headers from these declared domains.\n */\nexport interface McpAppsCSP {\n /** Domains allowed for network requests (fetch, XHR, WebSocket) */\n connectDomains?: string[];\n /** Domains allowed for static assets (images, scripts, fonts) */\n resourceDomains?: string[];\n}\n\n/**\n * UI Resource metadata as defined in MCP Apps spec.\n * Included in `_meta.ui` field of resource declarations.\n */\nexport interface UIResourceMeta {\n /** Content Security Policy configuration */\n csp?: McpAppsCSP;\n /** Dedicated sandbox origin for this resource */\n domain?: string;\n /** Whether host should render visual boundary around UI */\n prefersBorder?: boolean;\n}\n\n/**\n * Complete UI Resource declaration for MCP Apps.\n */\nexport interface UIResource {\n /** Resource URI (must start with \"ui://\") */\n uri: string;\n /** Human-readable display name */\n name: string;\n /** Optional description */\n description?: string;\n /** MIME type - must be \"text/html+mcp\" for MVP */\n mimeType: McpAppsMimeType;\n /** UI-specific metadata */\n _meta?: {\n ui?: UIResourceMeta;\n };\n}\n\n// ============================================\n// Host Context Types\n// ============================================\n\n/**\n * Display modes for UI rendering.\n */\nexport type McpAppsDisplayMode = 'inline' | 'fullscreen' | 'pip';\n\n/**\n * Platform types for host environment.\n */\nexport type McpAppsPlatform = 'web' | 'desktop' | 'mobile';\n\n/**\n * Device capability flags.\n */\nexport interface DeviceCapabilities {\n /** Touch input available */\n touch?: boolean;\n /** Hover interactions available */\n hover?: boolean;\n}\n\n/**\n * Safe area insets for device screens.\n */\nexport interface SafeAreaInsets {\n top: number;\n right: number;\n bottom: number;\n left: number;\n}\n\n/**\n * Viewport dimensions.\n */\nexport interface ViewportInfo {\n width: number;\n height: number;\n maxHeight?: number;\n maxWidth?: number;\n}\n\n/**\n * Tool information passed to UI.\n */\nexport interface ToolInfo {\n /** Request ID for this tool invocation */\n id?: string | number;\n /** Tool definition */\n tool: {\n name: string;\n description?: string;\n inputSchema?: Record<string, unknown>;\n };\n}\n\n/**\n * Host context provided to UI on initialization.\n * Contains environment information from the host.\n */\nexport interface McpAppsHostContext {\n /** Tool information for this UI context */\n toolInfo?: ToolInfo;\n /** Current theme */\n theme?: 'light' | 'dark';\n /** Current display mode */\n displayMode?: McpAppsDisplayMode;\n /** Viewport dimensions */\n viewport?: ViewportInfo;\n /** User's locale (BCP 47 tag) */\n locale?: string;\n /** User's timezone (IANA name) */\n timeZone?: string;\n /** Host platform type */\n platform?: McpAppsPlatform;\n /** Device capabilities */\n deviceCapabilities?: DeviceCapabilities;\n /** Safe area insets */\n safeAreaInsets?: SafeAreaInsets;\n}\n\n// ============================================\n// JSON-RPC Message Types\n// ============================================\n\n/**\n * Base JSON-RPC 2.0 message.\n */\nexport interface JsonRpcMessage {\n jsonrpc: '2.0';\n}\n\n/**\n * JSON-RPC request message.\n */\nexport interface JsonRpcRequest extends JsonRpcMessage {\n id: string | number;\n method: string;\n params?: unknown;\n}\n\n/**\n * JSON-RPC response message.\n */\nexport interface JsonRpcResponse extends JsonRpcMessage {\n id: string | number;\n result?: unknown;\n error?: JsonRpcError;\n}\n\n/**\n * JSON-RPC notification (no response expected).\n */\nexport interface JsonRpcNotification extends JsonRpcMessage {\n method: string;\n params?: unknown;\n}\n\n/**\n * JSON-RPC error object.\n */\nexport interface JsonRpcError {\n code: number;\n message: string;\n data?: unknown;\n}\n\n// ============================================\n// MCP Apps Protocol Messages\n// ============================================\n\n/**\n * UI Initialize request parameters.\n * Sent by UI to host on startup.\n */\nexport interface McpUiInitializeParams {\n /** Protocol version */\n protocolVersion: string;\n /** UI capabilities */\n capabilities?: {\n /** Supported message types */\n messages?: string[];\n };\n}\n\n/**\n * UI Initialize response from host.\n */\nexport interface McpUiInitializeResult {\n /** Protocol version (should match request) */\n protocolVersion: string;\n /** Host capabilities */\n capabilities: {\n /** Host-provided extensions */\n extensions?: Record<string, unknown>;\n };\n /** Host context information */\n hostContext: McpAppsHostContext;\n}\n\n/**\n * Tool input notification parameters.\n * Sent by host to UI with complete tool arguments.\n */\nexport interface McpUiToolInputParams {\n /** Tool arguments */\n arguments: Record<string, unknown>;\n}\n\n/**\n * Tool input partial notification parameters.\n * Sent by host to UI during streaming.\n */\nexport interface McpUiToolInputPartialParams {\n /** Partial tool arguments (incremental) */\n argumentsDelta: string;\n}\n\n/**\n * Tool result notification parameters.\n * Sent by host to UI after tool execution.\n */\nexport interface McpUiToolResultParams {\n /** Tool execution result */\n content: Array<{\n type: 'text' | 'image' | 'resource';\n text?: string;\n data?: string;\n mimeType?: string;\n uri?: string;\n }>;\n /** Structured content for UI rendering only */\n structuredContent?: Record<string, unknown>;\n /** Additional metadata */\n _meta?: Record<string, unknown>;\n}\n\n/**\n * Tool cancelled notification parameters.\n */\nexport interface McpUiToolCancelledParams {\n /** Reason for cancellation */\n reason?: string;\n}\n\n/**\n * Size change notification parameters.\n * Sent by host when UI viewport changes.\n */\nexport interface McpUiSizeChangeParams {\n /** New viewport dimensions */\n viewport: ViewportInfo;\n}\n\n/**\n * Host context change notification parameters.\n */\nexport interface McpUiHostContextChangeParams {\n /** Changed context fields */\n changes: Partial<McpAppsHostContext>;\n}\n\n/**\n * Open link request parameters.\n * Sent by UI to request host open a URL.\n */\nexport interface McpUiOpenLinkParams {\n /** URL to open */\n url: string;\n}\n\n/**\n * Send message request parameters.\n * Sent by UI to send content to host's chat.\n */\nexport interface McpUiMessageParams {\n /** Message content */\n content: string;\n}\n\n// ============================================\n// MCP Apps Method Names\n// ============================================\n\n/**\n * MCP Apps protocol method names.\n */\nexport const MCP_APPS_METHODS = {\n // Lifecycle\n INITIALIZE: 'ui/initialize',\n INITIALIZED: 'ui/notifications/initialized',\n\n // Tool lifecycle notifications (Host → UI)\n TOOL_INPUT: 'ui/notifications/tool-input',\n TOOL_INPUT_PARTIAL: 'ui/notifications/tool-input-partial',\n TOOL_RESULT: 'ui/notifications/tool-result',\n TOOL_CANCELLED: 'ui/notifications/tool-cancelled',\n\n // Context notifications (Host → UI)\n SIZE_CHANGE: 'ui/notifications/size-change',\n HOST_CONTEXT_CHANGE: 'ui/host-context-change',\n RESOURCE_TEARDOWN: 'ui/resource-teardown',\n\n // UI Requests (UI → Host)\n OPEN_LINK: 'ui/open-link',\n MESSAGE: 'ui/message',\n\n // Standard MCP methods that UI can use\n TOOLS_CALL: 'tools/call',\n RESOURCES_READ: 'resources/read',\n NOTIFICATIONS_MESSAGE: 'notifications/message',\n PING: 'ping',\n\n // Sandbox proxy (web hosts only)\n SANDBOX_READY: 'ui/notifications/sandbox-ready',\n SANDBOX_RESOURCE_READY: 'ui/notifications/sandbox-resource-ready',\n} as const;\n\n// ============================================\n// Extension Capability Types\n// ============================================\n\n/**\n * MCP Apps extension capability declaration.\n * Advertised by clients during connection.\n */\nexport interface McpAppsExtensionCapability {\n /** Supported MIME types */\n mimeTypes: McpAppsMimeType[];\n}\n\n/**\n * Client extensions object including MCP Apps.\n */\nexport interface McpClientExtensions {\n 'io.modelcontextprotocol/ui'?: McpAppsExtensionCapability;\n [key: string]: unknown;\n}\n\n// ============================================\n// Tool Metadata Extension\n// ============================================\n\n/**\n * Tool metadata extension for MCP Apps.\n * Added to tool's `_meta` field to link to UI resource.\n */\nexport interface ToolUIMeta {\n /** URI of the UI resource template */\n 'ui/resourceUri'?: string;\n /** MIME type of the UI resource */\n 'ui/mimeType'?: McpAppsMimeType;\n}\n\n/**\n * Extended tool result metadata including MCP Apps fields.\n */\nexport interface McpAppsToolResultMeta extends ToolUIMeta {\n /** Additional platform-specific metadata */\n [key: string]: unknown;\n}\n\n// ============================================\n// Protocol Version\n// ============================================\n\n/**\n * Current MCP Apps protocol version.\n */\nexport const MCP_APPS_PROTOCOL_VERSION = '2025-01-01' as const;\n"]}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- // file: libs/sdk/src/notification/index.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.MCP_APPS_EXTENSION_KEY = exports.hasMcpAppsExtension = exports.detectPlatformFromCapabilities = exports.detectPlatformFromUserAgent = exports.detectAIPlatform = exports.MCP_LOGGING_LEVEL_PRIORITY = exports.NotificationService = void 0;
5
- var notification_service_1 = require("./notification.service");
6
- Object.defineProperty(exports, "NotificationService", { enumerable: true, get: function () { return notification_service_1.NotificationService; } });
7
- Object.defineProperty(exports, "MCP_LOGGING_LEVEL_PRIORITY", { enumerable: true, get: function () { return notification_service_1.MCP_LOGGING_LEVEL_PRIORITY; } });
8
- Object.defineProperty(exports, "detectAIPlatform", { enumerable: true, get: function () { return notification_service_1.detectAIPlatform; } });
9
- Object.defineProperty(exports, "detectPlatformFromUserAgent", { enumerable: true, get: function () { return notification_service_1.detectPlatformFromUserAgent; } });
10
- Object.defineProperty(exports, "detectPlatformFromCapabilities", { enumerable: true, get: function () { return notification_service_1.detectPlatformFromCapabilities; } });
11
- Object.defineProperty(exports, "hasMcpAppsExtension", { enumerable: true, get: function () { return notification_service_1.hasMcpAppsExtension; } });
12
- Object.defineProperty(exports, "MCP_APPS_EXTENSION_KEY", { enumerable: true, get: function () { return notification_service_1.MCP_APPS_EXTENSION_KEY; } });
13
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/notification/index.ts"],"names":[],"mappings":";AAAA,2CAA2C;;;AAE3C,+DAegC;AAd9B,2HAAA,mBAAmB,OAAA;AAInB,kIAAA,0BAA0B,OAAA;AAK1B,wHAAA,gBAAgB,OAAA;AAChB,mIAAA,2BAA2B,OAAA;AAC3B,sIAAA,8BAA8B,OAAA;AAC9B,2HAAA,mBAAmB,OAAA;AACnB,8HAAA,sBAAsB,OAAA","sourcesContent":["// file: libs/sdk/src/notification/index.ts\n\nexport {\n NotificationService,\n type McpNotificationMethod,\n type RegisteredServer,\n type McpLoggingLevel,\n MCP_LOGGING_LEVEL_PRIORITY,\n type Root,\n type ClientCapabilities,\n type ClientInfo,\n type AIPlatformType,\n detectAIPlatform,\n detectPlatformFromUserAgent,\n detectPlatformFromCapabilities,\n hasMcpAppsExtension,\n MCP_APPS_EXTENSION_KEY,\n} from './notification.service';\n"]}