Skip to content

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 12:24
· 34 commits to main since this release

Two new entry points: build an MCP App in Angular from npm, and load a catalog on a server without Angular.

ngx-json-render/mcp is the Angular side of an MCP App, a tool result that Claude, ChatGPT or VS Code renders as an inline view. injectJsonRenderApp() connects to the host and keeps the spec the model passed to the tool in a signal. Until now it lived only in this repository's example.

readonly mcp = injectJsonRenderApp({ name: 'my-app', version: '1.0.0' });
// <json-render [spec]="mcp.spec()" [loading]="mcp.loading()" [registry]="registry" />

The spec renders while the model is still writing the tool call. mcp.sendMessage(text, data) posts a user message to the chat, so a button can continue the conversation. mcp.callServerTool(name, args) replaces the spec with another tool's result. See Inside an MCP App host.

ngx-json-render/schema holds the spec grammar with nothing but @json-render/core behind it. A catalog.ts that imports schema from it can be loaded by a plain Node server, tsx or an edge function, with no import '@angular/compiler' workaround.

// catalog.ts
import { schema } from 'ngx-json-render/schema';

What changes for your app

  • Nothing breaks. ngx-json-render still exports the same schema object, so existing catalogs keep working.
  • @modelcontextprotocol/ext-apps and @modelcontextprotocol/sdk are new optional peers. Install them only if you import ngx-json-render/mcp; ng add does not add them.

Upgrading

npm i ngx-json-render@0.8.0 ngx-json-render-material@0.3.10

Install both: the catalog's peer range moves to ^0.8.0, and npm resolves a mismatched pair by quietly picking an older renderer.

Full Changelog: v0.7.8...v0.8.0