Repository navigation
v0.9.7
An MCP App from your own catalog in one command: ng generate ngx-json-render:mcp-app.
The server from 0.9.5 and the builder from 0.9.6 still had to be wired by hand. The schematic does the wiring, and sendMessage, which only the repository's example had, is now part of the library.
What's new
ng generate ngx-json-render:mcp-app --catalog src/app/catalog.ts#catalog --registry src/app/registry.ts#registry, thenng run mcp-app:mcpandnode dist/mcp-app/server.mjs(or--httpfor http://localhost:3001/mcp).- It adds an application project for the view (
--name, defaultmcp-app) that renders the model's spec with your registry and follows the host's light or dark theme, aserver.tsfor stdio or HTTP, anmcptarget built by thengx-json-render:mcp-appbuilder, and the MCP peers. - Without
--catalogand--registryit uses the Angular Material catalog whenngx-json-render-materialis installed, with its theme, fonts and CSP, and writes a starter catalog otherwise. - The server loads the catalog in Node, so the schematic warns when the catalog file imports Angular.
createRenderUiServer({ sendMessage: true })describes asendMessageaction to the model, so a button in the view can post a message to the chat as the user. Your catalog stays host-neutral;withSendMessage(catalog)returns the extended one.- In the view,
injectJsonRenderApp()now returnshandlersfor<json-render [handlers]>and alastMessagesignal, so the view can say when a host declined the message. - The repository's MCP App example uses both; its tool definition is byte-identical to before.
The README section In one command has the details.
Upgrading
npm i ngx-json-render@0.9.7. Nothing changes for existing code. The Material catalog's ^0.8.0 || ^0.9.0 peer covers this release, so no catalog update is needed.
Full Changelog: v0.9.6...v0.9.7