@ggui-ai/mcp-server 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/api-renders-routes.d.ts.map +1 -1
  2. package/dist/api-renders-routes.js +32 -23
  3. package/dist/api-renders-stream-route.d.ts +80 -0
  4. package/dist/api-renders-stream-route.d.ts.map +1 -0
  5. package/dist/api-renders-stream-route.js +311 -0
  6. package/dist/build-mcp.d.ts +10 -0
  7. package/dist/build-mcp.d.ts.map +1 -1
  8. package/dist/build-mcp.js +64 -4
  9. package/dist/console-session-routes.d.ts.map +1 -1
  10. package/dist/console-session-routes.js +11 -0
  11. package/dist/ggui-session-channel/action-ingress.d.ts +2 -2
  12. package/dist/ggui-session-channel/action-ingress.d.ts.map +1 -1
  13. package/dist/ggui-session-channel/channel-subscriptions.d.ts +4 -4
  14. package/dist/ggui-session-channel/channel-subscriptions.d.ts.map +1 -1
  15. package/dist/ggui-session-channel/internal-types.d.ts +63 -9
  16. package/dist/ggui-session-channel/internal-types.d.ts.map +1 -1
  17. package/dist/ggui-session-channel/outbound.d.ts +15 -5
  18. package/dist/ggui-session-channel/outbound.d.ts.map +1 -1
  19. package/dist/ggui-session-channel/outbound.js +64 -24
  20. package/dist/ggui-session-channel/socket-router.d.ts +8 -3
  21. package/dist/ggui-session-channel/socket-router.d.ts.map +1 -1
  22. package/dist/ggui-session-channel/socket-router.js +6 -1
  23. package/dist/ggui-session-channel/subscribe.d.ts +48 -3
  24. package/dist/ggui-session-channel/subscribe.d.ts.map +1 -1
  25. package/dist/ggui-session-channel/subscribe.js +97 -36
  26. package/dist/ggui-session-channel/subscriber-lifecycle.d.ts +23 -13
  27. package/dist/ggui-session-channel/subscriber-lifecycle.d.ts.map +1 -1
  28. package/dist/ggui-session-channel/subscriber-lifecycle.js +24 -11
  29. package/dist/ggui-session-channel.d.ts +58 -11
  30. package/dist/ggui-session-channel.d.ts.map +1 -1
  31. package/dist/ggui-session-channel.js +55 -19
  32. package/dist/index.d.ts +4 -3
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +7 -1
  35. package/dist/instructions-presets.js +10 -10
  36. package/dist/mcp-apps-outbound.d.ts +49 -4
  37. package/dist/mcp-apps-outbound.d.ts.map +1 -1
  38. package/dist/mcp-apps-outbound.js +359 -63
  39. package/dist/mcp-endpoint-routes.d.ts +17 -5
  40. package/dist/mcp-endpoint-routes.d.ts.map +1 -1
  41. package/dist/mcp-endpoint-routes.js +2 -0
  42. package/dist/oauth-as-routes.d.ts.map +1 -1
  43. package/dist/oauth-as-routes.js +36 -0
  44. package/dist/oauth.d.ts.map +1 -1
  45. package/dist/oauth.js +8 -1
  46. package/dist/runtime-bundle-hash.d.ts +43 -0
  47. package/dist/runtime-bundle-hash.d.ts.map +1 -0
  48. package/dist/runtime-bundle-hash.js +66 -0
  49. package/dist/runtime-bundle-route.js +1 -1
  50. package/dist/server.d.ts +16 -5
  51. package/dist/server.d.ts.map +1 -1
  52. package/dist/server.js +93 -19
  53. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-as-routes.d.ts","sourceRoot":"","sources":["../src/oauth-as-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAEpB,UAAU,YAAY;IACpB,iCAAiC;IACjC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,+DAA+D;IAC/D,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,mEAAmE;IACnE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE;QACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;CACzD;AAED;;;;;;GAMG;AACH,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAwE5E"}
1
+ {"version":3,"file":"oauth-as-routes.d.ts","sourceRoot":"","sources":["../src/oauth-as-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAEpB,UAAU,YAAY;IACpB,iCAAiC;IACjC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,oEAAoE;IACpE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,+DAA+D;IAC/D,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,mEAAmE;IACnE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE;QACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;CACzD;AAED;;;;;;GAMG;AACH,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAyH5E"}
@@ -66,6 +66,42 @@ export function mountOAuthAuthorizationServerRoutes(opts) {
66
66
  handleProtectedResourceMetadata(req, res, oauthConfig, `${pathPrefix}/${appId}`);
67
67
  });
68
68
  }
69
+ // ── RFC 9728 §3.1 path-INSERTED discovery ──────────────────────────
70
+ // The RFC forms the metadata URL by inserting the well-known
71
+ // component BETWEEN origin and resource path:
72
+ // resource https://host/apps/<id>
73
+ // → https://host/.well-known/oauth-protected-resource/apps/<id>
74
+ // The suffix-form routes above (`<path>/.well-known/...`) predate the
75
+ // final RFC and STAY for grandfathered clients. claude.ai's connector
76
+ // connect flow (observed 2026-08-12) fetches ONLY the inserted form —
77
+ // its absence 404'd the discovery chain, which surfaced as "Couldn't
78
+ // register with GGUI's sign-in service" on every NEW connect: a
79
+ // launch-day onboarding blocker. Both forms serve the identical
80
+ // document.
81
+ if (universalMcpPath !== "/") {
82
+ app.get(`/.well-known/oauth-protected-resource${universalMcpPath}`, (req, res) => handleProtectedResourceMetadata(req, res, oauthConfig, universalMcpPath));
83
+ }
84
+ if (perAppRouting !== undefined) {
85
+ const { paramName, pathPrefix = "" } = perAppRouting;
86
+ app.get(`/.well-known/oauth-protected-resource${pathPrefix}/:${paramName}`, (req, res) => {
87
+ const appId = req.params[paramName];
88
+ if (typeof appId !== "string" || appId.length === 0) {
89
+ res.status(404).json({ error: "not_found" });
90
+ return;
91
+ }
92
+ handleProtectedResourceMetadata(req, res, oauthConfig, `${pathPrefix}/${appId}`);
93
+ });
94
+ // Path-inserted AS-metadata twin (RFC 8414 §3.1). Our issuer is
95
+ // origin-only, so the ROOT document is the normative one — but
96
+ // several MCP clients derive an AS-metadata URL by inserting into
97
+ // the RESOURCE path when the protected-resource fetch fails or
98
+ // races. Serving the identical document here is spec-tolerant and
99
+ // keeps their fallback chain alive instead of dead-ending DCR.
100
+ app.get(`/.well-known/oauth-authorization-server${pathPrefix}/:${paramName}`, (req, res) => handleAuthorizationServerMetadata(req, res, oauthConfig));
101
+ }
102
+ if (universalMcpPath !== "/") {
103
+ app.get(`/.well-known/oauth-authorization-server${universalMcpPath}`, (req, res) => handleAuthorizationServerMetadata(req, res, oauthConfig));
104
+ }
69
105
  app.get("/.well-known/oauth-authorization-server", (req, res) => handleAuthorizationServerMetadata(req, res, oauthConfig));
70
106
  app.post("/oauth/register", (req, res) => {
71
107
  void handleRegister(req, res, oauthConfig, oauthStorage);
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
package/dist/oauth.js CHANGED
@@ -143,7 +143,14 @@ export function resolveIssuerUrl(req, configured) {
143
143
  */
144
144
  export function buildWwwAuthenticate(issuerUrl, resourcePath = '') {
145
145
  const normalized = resourcePath.replace(/\/$/, '');
146
- const resourceMetadataUrl = `${issuerUrl}${normalized}/.well-known/oauth-protected-resource`;
146
+ // RFC 9728 §3.1 path-INSERTED form — the well-known component goes
147
+ // BETWEEN origin and resource path (`/.well-known/oauth-protected-
148
+ // resource/apps/<id>`), NOT appended after it. The pre-RFC suffix
149
+ // form this header used to advertise is still SERVED (grandfathered
150
+ // clients), but the advert must be the spec shape: claude.ai's
151
+ // connect flow follows this header verbatim and 404'd on the suffix
152
+ // URL, dead-ending Dynamic Client Registration for new connects.
153
+ const resourceMetadataUrl = `${issuerUrl}/.well-known/oauth-protected-resource${normalized}`;
147
154
  return `Bearer realm="mcp", resource_metadata="${resourceMetadataUrl}"`;
148
155
  }
149
156
  // =============================================================================
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Content-hash naming for the iframe-runtime bundle URL (#472).
3
+ *
4
+ * ONE derivation, three consumers:
5
+ *
6
+ * - `createGguiServer` (server.ts) hashes the captured bundle bytes,
7
+ * mounts the immutable twin route, and rewrites the stamped
8
+ * `runtimeUrl` — see the "Content-hashed runtime URL" block there.
9
+ * - `mountRuntimeBundleRoute` serves the hashed name it is handed.
10
+ * - Deployments that compose their own render handler (bypassing the
11
+ * factory's default handler set) mint an absolute `runtimeUrl`
12
+ * themselves; {@link resolveHashedRuntimeBundleUrl} lets them stamp
13
+ * the SAME hashed name the co-resident factory mounts, instead of
14
+ * re-deriving the scheme by hand and drifting.
15
+ *
16
+ * The scheme: `sha256(bytes)` truncated to 12 hex chars, inserted
17
+ * before the filename's extension — `iframe-runtime.js` →
18
+ * `iframe-runtime.<hash>.js`. 12 chars (48 bits) is plenty for
19
+ * cache-busting across deploys; this is not an integrity check (SRI
20
+ * would be a separate, full-length hash).
21
+ */
22
+ /** Truncated content hash used in the bundle's immutable URL name. */
23
+ export declare function computeRuntimeBundleHash(bytes: Buffer): string;
24
+ /**
25
+ * Insert `hash` into `urlOrPath`'s filename, but ONLY when that
26
+ * filename is exactly `plainName` — a URL pointing at a foreign copy
27
+ * of the bundle (different name) is returned untouched, because the
28
+ * foreign host serves only the name the operator configured. Applies
29
+ * to both bare paths (`/_ggui/iframe-runtime.js`) and absolute URLs
30
+ * (`https://cdn.example.com/_ggui/iframe-runtime.js`).
31
+ */
32
+ export declare function insertRuntimeBundleHash(urlOrPath: string, hash: string, plainName: string): string;
33
+ /**
34
+ * Rewrite `plainUrl` (an absolute URL or path ending in the default
35
+ * bundle filename) to its content-hashed twin, hashing the bundle at
36
+ * `bundleFile` (default: the workspace's built bundle — the same file
37
+ * `createGguiServer` serves, so both stamp the same name). Falls back
38
+ * to `plainUrl` unchanged when the bundle is unreadable — the plain
39
+ * `no-cache` route always exists, so the fallback stays correct, just
40
+ * revalidated.
41
+ */
42
+ export declare function resolveHashedRuntimeBundleUrl(plainUrl: string, bundleFile?: string): string;
43
+ //# sourceMappingURL=runtime-bundle-hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-bundle-hash.d.ts","sourceRoot":"","sources":["../src/runtime-bundle-hash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAMH,sEAAsE;AACtE,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAChB,MAAM,CAQR;AAED;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,UAAU,GAAE,MAA4B,GACvC,MAAM,CAYR"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Content-hash naming for the iframe-runtime bundle URL (#472).
3
+ *
4
+ * ONE derivation, three consumers:
5
+ *
6
+ * - `createGguiServer` (server.ts) hashes the captured bundle bytes,
7
+ * mounts the immutable twin route, and rewrites the stamped
8
+ * `runtimeUrl` — see the "Content-hashed runtime URL" block there.
9
+ * - `mountRuntimeBundleRoute` serves the hashed name it is handed.
10
+ * - Deployments that compose their own render handler (bypassing the
11
+ * factory's default handler set) mint an absolute `runtimeUrl`
12
+ * themselves; {@link resolveHashedRuntimeBundleUrl} lets them stamp
13
+ * the SAME hashed name the co-resident factory mounts, instead of
14
+ * re-deriving the scheme by hand and drifting.
15
+ *
16
+ * The scheme: `sha256(bytes)` truncated to 12 hex chars, inserted
17
+ * before the filename's extension — `iframe-runtime.js` →
18
+ * `iframe-runtime.<hash>.js`. 12 chars (48 bits) is plenty for
19
+ * cache-busting across deploys; this is not an integrity check (SRI
20
+ * would be a separate, full-length hash).
21
+ */
22
+ import { createHash } from "node:crypto";
23
+ import fs from "node:fs";
24
+ import { RUNTIME_BUNDLE_FILE, RUNTIME_BUNDLE_URL_PATH } from "@ggui-ai/iframe-runtime/server";
25
+ /** Truncated content hash used in the bundle's immutable URL name. */
26
+ export function computeRuntimeBundleHash(bytes) {
27
+ return createHash("sha256").update(bytes).digest("hex").slice(0, 12);
28
+ }
29
+ /**
30
+ * Insert `hash` into `urlOrPath`'s filename, but ONLY when that
31
+ * filename is exactly `plainName` — a URL pointing at a foreign copy
32
+ * of the bundle (different name) is returned untouched, because the
33
+ * foreign host serves only the name the operator configured. Applies
34
+ * to both bare paths (`/_ggui/iframe-runtime.js`) and absolute URLs
35
+ * (`https://cdn.example.com/_ggui/iframe-runtime.js`).
36
+ */
37
+ export function insertRuntimeBundleHash(urlOrPath, hash, plainName) {
38
+ const dot = plainName.lastIndexOf(".");
39
+ const hashedName = dot === -1
40
+ ? `${plainName}.${hash}`
41
+ : `${plainName.slice(0, dot)}.${hash}${plainName.slice(dot)}`;
42
+ if (!urlOrPath.endsWith(`/${plainName}`) && urlOrPath !== plainName)
43
+ return urlOrPath;
44
+ return `${urlOrPath.slice(0, urlOrPath.length - plainName.length)}${hashedName}`;
45
+ }
46
+ /**
47
+ * Rewrite `plainUrl` (an absolute URL or path ending in the default
48
+ * bundle filename) to its content-hashed twin, hashing the bundle at
49
+ * `bundleFile` (default: the workspace's built bundle — the same file
50
+ * `createGguiServer` serves, so both stamp the same name). Falls back
51
+ * to `plainUrl` unchanged when the bundle is unreadable — the plain
52
+ * `no-cache` route always exists, so the fallback stays correct, just
53
+ * revalidated.
54
+ */
55
+ export function resolveHashedRuntimeBundleUrl(plainUrl, bundleFile = RUNTIME_BUNDLE_FILE) {
56
+ let bytes;
57
+ try {
58
+ bytes = fs.readFileSync(bundleFile);
59
+ }
60
+ catch {
61
+ // Bundle not built / not shipped — mint the plain revalidated name.
62
+ return plainUrl;
63
+ }
64
+ const plainName = RUNTIME_BUNDLE_URL_PATH.slice(RUNTIME_BUNDLE_URL_PATH.lastIndexOf("/") + 1);
65
+ return insertRuntimeBundleHash(plainUrl, computeRuntimeBundleHash(bytes), plainName);
66
+ }
@@ -55,7 +55,7 @@ export function mountRuntimeBundleRoute(opts) {
55
55
  res.setHeader("Cache-Control", "no-cache");
56
56
  // CORS: the bundle MUST be loadable from `<script type="module"
57
57
  // src=...>` inside a sandboxed `srcdoc` iframe (the
58
- // `<McpAppIframe>` mount path — see `packages/ggui-react/src/
58
+ // `<McpAppIframe>` mount path — see `packages/mcp-apps-react/src/
59
59
  // McpAppIframe/dispatch.ts::deriveResourceMountSource`). Such an
60
60
  // iframe has the `null` origin and module-script fetches always
61
61
  // run in CORS mode; without a permissive header browsers reject
package/dist/server.d.ts CHANGED
@@ -57,6 +57,8 @@ import { type OrgInvitesSource, type OrgsSource } from "@ggui-ai/mcp-server-hand
57
57
  import { type ChannelNotifier, type GenerationCredentials, type GenerationDeps, type BlueprintPool, type HandshakeNegotiator, type PropsUpdateNotifier, type ProvisionalPreviewConfig, type ProvisionalPreviewDeps, type ProvisionalPreviewEmitter, type ProvisionalPreviewOutcome, type ToolIdentityCatalogStore } from "@ggui-ai/mcp-server-handlers/renders";
58
58
  import type { UiRegistry } from "@ggui-ai/ui-registry";
59
59
  import type { ServerInfo } from "./build-mcp.js";
60
+ import type { ErrorMapperResult } from "./mcp-endpoint-routes.js";
61
+ export type { ErrorMapperResult } from "./mcp-endpoint-routes.js";
60
62
  import { type EmailSender, type MagicLinkStore } from "./email-login.js";
61
63
  import { type McpInstructionsValue } from "./instructions-presets.js";
62
64
  import { type Logger } from "./logger.js";
@@ -193,6 +195,16 @@ export declare function defaultHandlers(deps: {
193
195
  * still wins.
194
196
  */
195
197
  readonly runtimeUrl?: string | (() => string | undefined);
198
+ /**
199
+ * Absolute public origin the wsToken-gated session API
200
+ * (`/api/sessions/:sessionId/{events,stream}`) is served on —
201
+ * feeds the `pollingUrl` + `sseUrl` stamping on the
202
+ * `ai.ggui/render` slice. Function form mirrors `runtimeUrl`
203
+ * (request-aware behind tunnels/proxies). When unset (or the
204
+ * getter yields `undefined`), the handler falls back to the
205
+ * ws→http origin flip of the minted trio's `wsUrl`.
206
+ */
207
+ readonly sessionApiBaseUrl?: string | (() => string | undefined);
196
208
  /**
197
209
  * Theme preset id resolved from `ggui.json#theme`. Forwarded onto
198
210
  * the `ai.ggui/render.themeId` slice field in the `ggui_render`
@@ -404,6 +416,9 @@ export declare function defaultHandlers(deps: {
404
416
  * `ai.ggui/render.runtimeUrl` slice field.
405
417
  * Function form mirrors the `render` deps' `runtimeUrl`. */
406
418
  readonly runtimeUrl?: string | (() => string | undefined);
419
+ /** Session-API base for `pollingUrl` + `sseUrl` stamping —
420
+ * mirrors the `render` deps' `sessionApiBaseUrl`. */
421
+ readonly sessionApiBaseUrl?: string | (() => string | undefined);
407
422
  /** Theme preset id forwarded onto the `ai.ggui/render.themeId` slice field. */
408
423
  readonly themeId?: string;
409
424
  /** Theme color mode forwarded onto the `ai.ggui/render.themeMode` slice field. */
@@ -966,11 +981,7 @@ export interface CreateGguiServerOptions {
966
981
  * `catch (err)` block; any throw from the mapper itself is treated
967
982
  * as if it returned `undefined` (default 500).
968
983
  */
969
- readonly errorMapper?: (err: unknown) => {
970
- readonly status: number;
971
- readonly code: number;
972
- readonly message: string;
973
- } | undefined;
984
+ readonly errorMapper?: (err: unknown) => ErrorMapperResult | undefined;
974
985
  /**
975
986
  * BYOK provider-key store consumed by the operator-facing
976
987
  * `/ggui/console/llm-keys` admin API and (today, transparently
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -44,14 +44,14 @@ import { createInMemoryBlueprintSearch, createInMemoryGeneratorRegistry, FixedWi
44
44
  import { createGguiListGadgetsHandler, createGguiListThemesHandler, } from "@ggui-ai/mcp-server-handlers/app-discovery";
45
45
  import { createDescribeBlueprintFormatHandler, createDescribeDataContractFormatHandler, createGetBlueprintBoilerplateHandler, createGetExampleBlueprintsHandler, createListAvailablePrimitivesHandler, createListFeaturedBlueprintsHandler, createRenderBlueprintHandler, createSearchBlueprintsHandler, createValidateBlueprintHandler, } from "@ggui-ai/mcp-server-handlers/blueprints";
46
46
  import { createGguiOpsDeleteBlueprintHandler, createGguiOpsGenerateBlueprintHandler, createGguiOpsListBlueprintsHandler, createGguiOpsRegisterBlueprintHandler, createGguiOpsUpdateBlueprintHandler, } from "@ggui-ai/mcp-server-handlers/ops-blueprint";
47
- import { setCacheTraceSink, setPayloadTraceSink } from "@ggui-ai/mcp-server-handlers/renders";
47
+ import { setCacheTraceSink, setPayloadTraceSink, wsOriginToHttpOrigin, } from "@ggui-ai/mcp-server-handlers/renders";
48
48
  import { loadTheme } from "@ggui-ai/project-config/node";
49
49
  import { LIFECYCLE_CHANNEL } from "@ggui-ai/protocol";
50
50
  import { setLlmTraceSink } from "@ggui-ai/ui-gen/harness/llm-trace-sink";
51
51
  import { setValidatorTraceSink } from "@ggui-ai/ui-gen/harness/validator-trace-sink";
52
52
  import express from "express";
53
53
  import { AsyncLocalStorage } from "node:async_hooks";
54
- import { createHash, randomBytes } from "node:crypto";
54
+ import { randomBytes } from "node:crypto";
55
55
  import fs from "node:fs";
56
56
  import path from "node:path";
57
57
  import { BoundedCacheTraceSink, mountConsoleCacheRoutes } from "./console-cache.js";
@@ -71,12 +71,13 @@ import { createCreateAppHandler, createDeleteAppHandler, createListAppsHandler,
71
71
  import { createIssueConnectorKeyHandler, createListConnectorKeysHandler, createRevokeConnectorKeyHandler, } from "@ggui-ai/mcp-server-handlers/ops-connector-keys";
72
72
  import { createRedeemCouponHandler, } from "@ggui-ai/mcp-server-handlers/ops-coupon";
73
73
  import { createCreateOrgHandler, createGetOrgBalanceHandler, createInviteToOrgHandler, createListOrgsHandler, createRemoveOrgMemberHandler, createRenameOrgHandler, createRevokeInviteHandler, } from "@ggui-ai/mcp-server-handlers/ops-orgs";
74
- import { createGguiConsumeHandler, createGguiDeclareToolCatalogHandler, createGguiEmitHandler, createGguiGetSessionHandler, createGguiHandshakeHandler, createGguiListSessionsHandler, createGguiRefreshWsTokenHandler, createGguiRenderHandler, createGguiSubmitActionHandler, createGguiSyncContextHandler, createGguiUpdateHandler, InMemoryToolIdentityCatalogStore, createInMemoryProvisionalPreviewRegistry, } from "@ggui-ai/mcp-server-handlers/renders";
74
+ import { createGguiConsumeHandler, createGguiDeclareToolCatalogHandler, createGguiEmitHandler, createGguiGetSessionHandler, createGguiHandshakeHandler, createGguiListSessionsHandler, createGguiRefreshWsTokenHandler, createGguiRenderHandler, createGguiRuntimePullHandler, createGguiRuntimeTelemetryHandler, createGguiSubmitActionHandler, createGguiSyncContextHandler, createGguiUpdateHandler, createGguiAmendHandler, InMemoryToolIdentityCatalogStore, createInMemoryProvisionalPreviewRegistry, } from "@ggui-ai/mcp-server-handlers/renders";
75
75
  import { DEFAULT_ADMIN_BLUEPRINTS_PATH, mountAdminBlueprintsTransport, } from "./admin-blueprints-transport.js";
76
76
  import { mountAdminOAuthProvidersTransport } from "./admin-oauth-providers-transport.js";
77
77
  import { DEFAULT_BUILDER_APP_ID, defaultAppIdFromIdentity } from "./auth.js";
78
78
  import { mountMcpEndpoints } from "./mcp-endpoint-routes.js";
79
79
  import { mountApiRendersRoutes } from "./api-renders-routes.js";
80
+ import { mountApiRendersStreamRoute } from "./api-renders-stream-route.js";
80
81
  import { mountConsoleBlueprintRoutes } from "./console-blueprint-routes.js";
81
82
  import { mountConsoleChatRoutes } from "./console-chat-routes.js";
82
83
  import { mountConsoleConfigRoutes } from "./console-config-routes.js";
@@ -93,6 +94,7 @@ import { mountHealthRoutes } from "./health-routes.js";
93
94
  import { mountOAuthAuthorizationServerRoutes } from "./oauth-as-routes.js";
94
95
  import { mountOAuthClientsRoutes } from "./oauth-clients-routes.js";
95
96
  import { mountRuntimeBundleRoute } from "./runtime-bundle-route.js";
97
+ import { computeRuntimeBundleHash, insertRuntimeBundleHash, } from "./runtime-bundle-hash.js";
96
98
  import { createCsrfMiddleware, mountCsrfTokenRoute } from "./csrf-middleware.js";
97
99
  import { mountEmailLoginRoutes } from "./email-login.js";
98
100
  import { resolveMcpInstructions } from "./instructions-presets.js";
@@ -110,7 +112,7 @@ import { InMemoryOAuthStorage } from "./oauth.js";
110
112
  import { DEFAULT_PAIRING_ADMIN_INIT_PATH, DEFAULT_PAIRING_PATH, mountPairingTransport, } from "./pairing-transport.js";
111
113
  import { createPairLoginRateLimitMiddleware } from "./rate-limit-middleware.js";
112
114
  import { createGguiSessionChannelServer, } from "./ggui-session-channel.js";
113
- import { buildRequestContextMiddleware, resolveRuntimeUrl } from "./request-context.js";
115
+ import { buildRequestContextMiddleware, resolvePublicBaseUrl, resolveRuntimeUrl, } from "./request-context.js";
114
116
  import { composePreviewReservedValidator, mergeReservedValidators } from "./reserved-validators.js";
115
117
  import { checkRenderSchemaCompat, DEFAULT_SCHEMA_COMPAT_MODE, } from "./schema-compat.js";
116
118
  import { createSecurityHeadersMiddleware } from "./security-headers-middleware.js";
@@ -284,6 +286,30 @@ export function defaultHandlers(deps) {
284
286
  ? { renderIdentityStore: deps.render.renderIdentityStore }
285
287
  : {}),
286
288
  }));
289
+ // `ggui_runtime_pull` — terminal bridge-pull rung of the live-channel
290
+ // failover ladder (WS → SSE → HTTP polling → bridge-pull). A
291
+ // CSP-jailed MCP Apps iframe pulls the GguiSessionEvent ledger over
292
+ // the host's tools/call postMessage relay — same
293
+ // `_meta.ui.visibility: ['app']` channel as ggui_runtime_submit_action,
294
+ // same ledger + horizon semantics as `GET /api/sessions/:id/events`
295
+ // (both read `renderStore.listEventsSince`). Wired only when a
296
+ // renderStore is bound (render is on) — without render there is no
297
+ // ledger to serve.
298
+ handlers.push(createGguiRuntimePullHandler({
299
+ renderStore: deps.render.renderStore,
300
+ }));
301
+ // `ggui_runtime_telemetry` — the iframe runtime's transport
302
+ // self-report (visibility ['app'], same view-callable channel as
303
+ // submit_action/pull). Sandboxed hosts (claude.ai's
304
+ // claudemcpcontent frames) expose no readable console and no
305
+ // network, so the delivery ladder's behavior there is invisible
306
+ // WITHOUT this channel: the view batches its rung transitions +
307
+ // doorbell events and this handler logs them for operators.
308
+ // Fire-and-forget, store-less — gated on deps.render only because
309
+ // the ladder it reports on exists only when renders do.
310
+ handlers.push(createGguiRuntimeTelemetryHandler({
311
+ ...(deps.logger ? { logger: deps.logger } : {}),
312
+ }));
287
313
  // `ggui_runtime_refresh_ws_token` — G14 (2026-05-23) signed-
288
314
  // envelope refresh tool. Registered only when a refresh seam is
289
315
  // wired (typically `channelBootstrap.refresh` from the
@@ -367,12 +393,29 @@ export function defaultHandlers(deps) {
367
393
  // re-apply patched props on the live mount without a WS round-trip.
368
394
  ...(deps.update.mintBootstrap ? { mintWsToken: deps.update.mintBootstrap } : {}),
369
395
  ...(deps.update.runtimeUrl !== undefined ? { runtimeUrl: deps.update.runtimeUrl } : {}),
396
+ ...(deps.update.sessionApiBaseUrl !== undefined
397
+ ? { sessionApiBaseUrl: deps.update.sessionApiBaseUrl }
398
+ : {}),
370
399
  ...(deps.update.themeId !== undefined ? { themeId: deps.update.themeId } : {}),
371
400
  ...(deps.update.themeMode !== undefined ? { themeMode: deps.update.themeMode } : {}),
372
401
  ...(deps.update.themeProvider !== undefined
373
402
  ? { themeProvider: deps.update.themeProvider }
374
403
  : {}),
375
404
  }));
405
+ // ggui_amend rides the SAME deps slot (#483 tool split): one
406
+ // mutation core, one wiring. It reads only the mutation-flow deps
407
+ // (renderStore / identity / notifier) — the bootstrap-emission
408
+ // options above are meaningless to a tool that emits no result
409
+ // meta by design.
410
+ handlers.push(createGguiAmendHandler({
411
+ renderStore: deps.update.renderStore,
412
+ ...(deps.update.renderIdentityStore
413
+ ? { renderIdentityStore: deps.update.renderIdentityStore }
414
+ : {}),
415
+ ...(deps.update.propsUpdateNotifier
416
+ ? { propsUpdateNotifier: deps.update.propsUpdateNotifier }
417
+ : {}),
418
+ }));
376
419
  }
377
420
  // ggui_consume registers whenever render is bound (it shares the
378
421
  // GguiSessionStore for sessionId resolution + tenancy checks).
@@ -515,6 +558,9 @@ export function defaultHandlers(deps) {
515
558
  : {}),
516
559
  ...(deps.render.mintBootstrap ? { mintWsToken: deps.render.mintBootstrap } : {}),
517
560
  ...(deps.render.runtimeUrl !== undefined ? { runtimeUrl: deps.render.runtimeUrl } : {}),
561
+ ...(deps.render.sessionApiBaseUrl !== undefined
562
+ ? { sessionApiBaseUrl: deps.render.sessionApiBaseUrl }
563
+ : {}),
518
564
  ...(deps.render.themeId !== undefined ? { themeId: deps.render.themeId } : {}),
519
565
  ...(deps.render.themeMode !== undefined ? { themeMode: deps.render.themeMode } : {}),
520
566
  ...(deps.render.themeProvider !== undefined
@@ -799,20 +845,11 @@ export function createGguiServer(opts = {}) {
799
845
  // pointing at a foreign copy is left untouched, and
800
846
  // `runtime.hashedUrl: false` opts out entirely.
801
847
  const runtimeBundleHash = runtimeBundleBytes !== undefined && runtimeConfig.hashedUrl !== false
802
- ? createHash("sha256").update(runtimeBundleBytes).digest("hex").slice(0, 12)
848
+ ? computeRuntimeBundleHash(runtimeBundleBytes)
803
849
  : undefined;
804
- const insertHash = (urlOrPath) => {
805
- if (runtimeBundleHash === undefined)
806
- return urlOrPath;
807
- const plainName = runtimePath.slice(runtimePath.lastIndexOf("/") + 1);
808
- const dot = plainName.lastIndexOf(".");
809
- const hashedName = dot === -1
810
- ? `${plainName}.${runtimeBundleHash}`
811
- : `${plainName.slice(0, dot)}.${runtimeBundleHash}${plainName.slice(dot)}`;
812
- if (!urlOrPath.endsWith(`/${plainName}`) && urlOrPath !== plainName)
813
- return urlOrPath;
814
- return `${urlOrPath.slice(0, urlOrPath.length - plainName.length)}${hashedName}`;
815
- };
850
+ const insertHash = (urlOrPath) => runtimeBundleHash === undefined
851
+ ? urlOrPath
852
+ : insertRuntimeBundleHash(urlOrPath, runtimeBundleHash, runtimePath.slice(runtimePath.lastIndexOf("/") + 1));
816
853
  const hashedRuntimePath = runtimeBundleHash !== undefined ? insertHash(runtimePath) : undefined;
817
854
  const runtimeBootstrapUrl = insertHash(runtimeConfig.url ?? runtimePath);
818
855
  // Lazy resolver: each render/update handler invocation looks up the
@@ -1315,6 +1352,14 @@ export function createGguiServer(opts = {}) {
1315
1352
  // an absolute URL instead of the relative default that
1316
1353
  // breaks under srcdoc iframes (claude.ai).
1317
1354
  runtimeUrl: resolveRuntimeUrlForResultMeta,
1355
+ // Session-API base for `pollingUrl` + `sseUrl` stamping.
1356
+ // Same lazy request-scope resolution as runtimeUrl:
1357
+ // static publicBaseUrl wins, X-Forwarded-Host honored
1358
+ // for loopback peers, `undefined` outside any request —
1359
+ // the handler then falls back to the minted trio's
1360
+ // wsUrl origin flip (OSS dev: `ws://localhost/ws` →
1361
+ // `http://localhost`).
1362
+ sessionApiBaseUrl: () => resolvePublicBaseUrl(opts.publicBaseUrl),
1318
1363
  // Forward operator-picked theme onto every
1319
1364
  // `ai.ggui/render.themeId` slice field so MCP Apps hosts
1320
1365
  // (claude.ai, Claude Desktop) that mount via the
@@ -1503,10 +1548,10 @@ export function createGguiServer(opts = {}) {
1503
1548
  ? { renderIdentityStore: opts.renderIdentityStore }
1504
1549
  : {}),
1505
1550
  propsUpdateNotifier: {
1506
- sendPropsUpdate: async (sessionId, props) => {
1551
+ sendPropsUpdate: async (sessionId, props, epoch) => {
1507
1552
  if (!channelForHealth)
1508
1553
  return;
1509
- await channelForHealth.sendPropsUpdate(sessionId, props);
1554
+ await channelForHealth.sendPropsUpdate(sessionId, props, epoch);
1510
1555
  },
1511
1556
  },
1512
1557
  // Bootstrap-emission deps. Mirror render so MCP Apps hosts
@@ -1520,6 +1565,9 @@ export function createGguiServer(opts = {}) {
1520
1565
  // same absolute URL when the server sits behind a tunnel
1521
1566
  // / reverse proxy.
1522
1567
  runtimeUrl: resolveRuntimeUrlForResultMeta,
1568
+ // Session-API base — matches render so both tools stamp
1569
+ // identical `pollingUrl` + `sseUrl` values.
1570
+ sessionApiBaseUrl: () => resolvePublicBaseUrl(opts.publicBaseUrl),
1523
1571
  ...(opts.theme !== undefined && opts.theme.source === "preset"
1524
1572
  ? { themeId: opts.theme.preset }
1525
1573
  : {}),
@@ -1868,6 +1916,18 @@ export function createGguiServer(opts = {}) {
1868
1916
  // (`connect-src 'none'`) blocks the iframe from fetching the
1869
1917
  // runtime bundle and opening the WebSocket.
1870
1918
  ...(opts.publicBaseUrl !== undefined ? { publicBaseUrl: opts.publicBaseUrl } : {}),
1919
+ // Live-channel origins for the static shell's CSP declaration:
1920
+ // the WS endpoint + its http-origin flip (the session-API base the
1921
+ // sseUrl/pollingUrl stamps derive from when `publicBaseUrl` is
1922
+ // unset — the cloud pod's posture, see compose.ts's Origin/Host
1923
+ // ruling). Cross-origin hosts (claude.ai) build the frame CSP from
1924
+ // the STATIC shell resource they mount; per-render declarations
1925
+ // never reach it, so without these entries every network rung of
1926
+ // the failover ladder (WS, SSE, HTTP polling) is `connect-src`-
1927
+ // blocked in the frame — observed live in #471 round 11.
1928
+ ...(mcpAppsEnabled
1929
+ ? { extraConnectUrls: [wsUrl, wsOriginToHttpOrigin(wsUrl)] }
1930
+ : {}),
1871
1931
  // Per-render self-contained shell registration. Only wired
1872
1932
  // when MCP Apps is on AND the render store is resolved —
1873
1933
  // both preconditions for `ggui_render.resultMeta` stamping a
@@ -2067,6 +2127,20 @@ export function createGguiServer(opts = {}) {
2067
2127
  resolveRuntimeUrl: resolveRuntimeUrlForResultMeta,
2068
2128
  logger,
2069
2129
  });
2130
+ // SSE live stream (the ladder's middle rung) — same wsToken auth
2131
+ // posture as /state and /events; see `./api-renders-stream-route.ts`
2132
+ // for the framing contract. The channel is late-bound via the same
2133
+ // `() => channelForHealth` pattern as `stream.channelProvider`:
2134
+ // route mounting runs before `createGguiSessionChannelServer`, and
2135
+ // the mcpApps ⇒ renderChannel throw above guarantees a channel
2136
+ // exists by listen time.
2137
+ mountApiRendersStreamRoute({
2138
+ app,
2139
+ renderStore,
2140
+ secret: sharedTokenSecret,
2141
+ channelProvider: () => channelForHealth,
2142
+ logger,
2143
+ });
2070
2144
  }
2071
2145
  // Content-addressable code + contract-validator delivery — see
2072
2146
  // `./code-routes.ts` for the route contract (cache posture, CORS,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ggui-ai/mcp-server",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "Self-hosted MCP server for the ggui protocol. An HTTP/MCP binding layer over @ggui-ai/mcp-server-handlers and the reference adapters from @ggui-ai/mcp-server-core — run it via `ggui serve`.",
5
5
  "keywords": [
6
6
  "ggui",
@@ -32,16 +32,16 @@
32
32
  "resend": "^6.12.2",
33
33
  "ws": "^8.20.1",
34
34
  "zod": "^4.3.6",
35
- "@ggui-ai/console": "0.8.0",
36
- "@ggui-ai/mcp-server-handlers": "0.8.0",
37
- "@ggui-ai/negotiator": "0.8.0",
38
- "@ggui-ai/mcp-server-core": "0.8.0",
39
- "@ggui-ai/iframe-runtime": "0.8.0",
40
- "@ggui-ai/preview-a2ui": "0.8.0",
41
- "@ggui-ai/protocol": "0.8.0",
42
- "@ggui-ai/project-config": "0.8.0",
43
- "@ggui-ai/ui-gen": "0.8.0",
44
- "@ggui-ai/ui-registry": "0.8.0"
35
+ "@ggui-ai/iframe-runtime": "0.9.0",
36
+ "@ggui-ai/console": "0.9.0",
37
+ "@ggui-ai/mcp-server-handlers": "0.9.0",
38
+ "@ggui-ai/negotiator": "0.9.0",
39
+ "@ggui-ai/mcp-server-core": "0.9.0",
40
+ "@ggui-ai/preview-a2ui": "0.9.0",
41
+ "@ggui-ai/project-config": "0.9.0",
42
+ "@ggui-ai/ui-gen": "0.9.0",
43
+ "@ggui-ai/ui-registry": "0.9.0",
44
+ "@ggui-ai/protocol": "0.9.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@types/express": "^5.0.0",
@@ -50,7 +50,7 @@
50
50
  "@types/ws": "^8.5.10",
51
51
  "typescript": "^5.0.0",
52
52
  "vitest": "^3.2.6",
53
- "@ggui-ai/protocol-conformance": "0.8.0"
53
+ "@ggui-ai/protocol-conformance": "0.9.0"
54
54
  },
55
55
  "repository": {
56
56
  "type": "git",