Skip to content

Refresh demo site + MCP recategorisation + boot ordering#69

Merged
tonipinel merged 3 commits into
mainfrom
video-demo-tweaks
May 18, 2026
Merged

Refresh demo site + MCP recategorisation + boot ordering#69
tonipinel merged 3 commits into
mainfrom
video-demo-tweaks

Conversation

@obokaman-com

Copy link
Copy Markdown
Member

Bundles the playground updates that pair with the playground-builder rebrand:

  • Drops in the rebuilt static demo/ site (new visual system, standardised Try it + Read the docs rail on every page, gradient endpoint chip, AI Gateway notice modal, terminal-style command blocks). 32 use cases + 12 integrations migrated.
  • Moves the MCP block from endpoints_services_connectivity.json to endpoints_ai_gateway.json and retags it AI Integration: MCP Server - Entrypoint for Model Context Protocol (it was the outlier; every other AI endpoint already lived there). Recompiled krakend.json reflects the move with credentials redacted to <env_local_empty_credential>.

Boot + lifecycle:

  • Keycloak healthcheck wired to its /health/ready endpoint on the management port (9000). interactive-demo declares depends_on: keycloak: condition: service_healthy, so the first SPA visit no longer hits a redirect to a not-yet-booted IdP.
  • interactive-demo's Node server handles SIGTERM/SIGINT, so docker compose stop exits in <2s instead of waiting the full grace period. stop_grace_period: 2s added as a safety net.

Polish:

  • MCP chat layout: height: calc(100vh - 84px) so the composer always anchors at the bottom of the viewport; the page footer falls below the fold.
  • Makefile output trimmed: Playground Index & Docs and Interactive demos as the two entry points, no more API-Gateway-root link that would 404.
  • README refreshed: outdated ws://localhost:8888 reference gone, /chat page reference replaced with the interactive demos WebSocket Chat tab, revoker port corrected to 8081, MCP description rewritten around the KYC dossier scenario, all Auth Demo + Interactive Demos URLs now go through the gateway.

Heads up: the 2 dependabot vulnerabilities flagged on main predate this branch and aren't touched by this PR.

…+ KYC dossier scenario

A new shape for the playground:

- New `interactive-demo` container (Node, plain HTML/CSS/JS, no
  bundler) hosts the four-tab SPA (AI Gateway, Agentic Gateway/MCP,
  Auth Demo, WebSocket Chat) plus its own backend: POST /api/chat (SSE
  via the Anthropic SDK + KrakenD MCP) and WS /ws/:room. Replaces the
  former demo-app + websocket/chat containers. SPA is rebranded on the
  lavender/blue brand tokens with a single-bar header.

- New `mocked_apis` container (~6 MB Go binary, stdlib only, FROM
  scratch) serves /data as REST static plus POST /graphql (ownership
  by LEI) and POST /soap/sanctions. Replaces the busybox fake_api.

- New gateway endpoints /interactive-demo/* (GET + POST with 120s
  timeout for SSE) and /slides/* (static slide decks, kept outside
  /demo/ so the demo-site builder never overwrites them). The old
  /spa/* and /chat endpoints are gone; /chat/ws/{room} now points at
  the new container.

- New KYC/MCP demo scenario: MCP server kyc-dossier-aggregator with
  two tools (get_kyc_dossier in TOON, get_kyc_dossier_legacy in JSON),
  a Lua to-TOON response transformer, a SOAP sanctions request
  template, and three demo entities under data/kyc/. The previous
  country-data-aggregator MCP server is replaced.

- New slide deck for the AI Gateway demo, served at /slides/ai-gateway/.

- Keycloak CSP loosened to allow the auth demo to be iframed from the
  SPA (localhost:3000) and the gateway (localhost:8080).

Endpoint @comments use a new \"Utility:\" prefix on infrastructure
endpoints (/interactive-demo/*, /demo/*, /slides/*) so the demo-site
builder can skip them when validating MDX coverage. README, codeql
paths, Makefile and FC settings updated. krakend.json regenerated and
reordered, LLM credentials redacted to <env_local_empty_credential>.
- Tag /__kyc/aggregate/{lei} and /__kyc/aggregate-toon/{lei} with the
  "Internal:" @comment prefix so the demo-site builder skips them when
  validating MDX coverage and rendering homepage cards (they are
  plumbing for the MCP tools, not user-facing demos).

- Regenerate config/krakend/demo/ from the playground-builder. Net
  user-visible changes in the docs:
    * mcp.mdx rewritten end-to-end for the KYC dossier scenario
      (kyc-dossier-aggregator, get_kyc_dossier TOON + legacy JSON, the
      three demo LEIs, link to the Agentic Gateway tab in Interactive
      Demos).
    * chat.mdx removed (its endpoint /chat is gone).
    * demo.mdx removed (now Utility, no docs page needed).
    * chat-ws-room.mdx wording aligned with the SPA's dual-client UX.
    * Every "[Playground SPA](http://localhost:3000...)" link rewritten
      to "[Interactive Demos](http://localhost:8080/interactive-demo/...)".
…rdering

- Drop in the rebuilt static `demo/` site shipped by the demo builder
  (new visual system, DemoResources rail on every page, gradient endpoint
  chip, AI Gateway notice modal, terminal-style command blocks). 32 use
  cases + 12 integrations migrated.
- Move the MCP block from `endpoints_services_connectivity.json` to
  `endpoints_ai_gateway.json` and retag it as `AI Integration: MCP Server
  - Entrypoint for Model Context Protocol`. Recompiled `krakend.json`
  reflects the move; credentials redacted to `<env_local_empty_credential>`.
- docker-compose: Keycloak healthcheck wired to its `/health/ready`
  endpoint (port 9000); interactive-demo waits for `service_healthy`
  before starting, so the first SPA visit no longer hits a redirect to
  a not-yet-booted IdP.
- interactive-demo server.js: SIGTERM / SIGINT handler so
  `docker compose stop` exits in <2s instead of waiting the full grace
  period; `stop_grace_period: 2s` as a safety net.
- mcp-chat layout: `height: calc(100vh - 84px)` so the chat composer
  always anchors at the bottom of the viewport; the page footer falls
  below the fold.
- Makefile: `make start` / `start-with-ai-gateway` output trimmed —
  Playground Index & Interactive demos as the two entry points, no
  more API-Gateway-root link that would 404.
- README refreshed: WebSockets section no longer references the old
  separate ws:8888 broker; Play! URL list trimmed and revoker port
  corrected to 8081; MCP description updated to the KYC dossier
  aggregator scenario; Auth Demo and Interactive Demos always linked
  through the gateway.
@tonipinel tonipinel merged commit bc7a7ac into main May 18, 2026
4 checks passed
@obokaman-com obokaman-com deleted the video-demo-tweaks branch May 18, 2026 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants