Skip to main content
Glama
nuwax-ai

nuwax-openui-mcp

by nuwax-ai

Nuwax OpenUI MCP

@nuwax-ai/openui-mcp provides OpenUI authoring guidance, schema resources, validation, and durable artifact generation for Nuwax Agent sessions.

Architecture

The MCP server does not host pages. It writes OpenUI data into the active project and returns a lightweight reference:

nuwax_render_openui
  -> validate OpenUI Lang
  -> data/{artifactId}.openui.json
  -> nuwax.openui-ref/v1

Nuwax PC Web loads the data file and renders it with the frozen static runtime at /openui-runtime/index.html. Inline, sidecar, and file preview all use that same runtime.

Related MCP server: mcp-interactive-ui-server

Installation

Configure the server as a session-scoped stdio MCP so it inherits the current project directory:

{
  "mcpServers": {
    "nuwax-openui": {
      "command": "npx",
      "args": ["-y", "@nuwax-ai/openui-mcp@0.2.0"]
    }
  }
}

Do not configure it as a persistent/global MCP. If the host cannot provide the project as the process working directory or an MCP Root, set NUWAX_OPENUI_PROJECT_ROOT explicitly.

The file repository is initialized lazily on the first render call. This avoids creating a data/ directory when a client starts the server only to discover its tool list.

Tools and resources

  • nuwax_render_openui: creates or updates an Artifact file.

  • nuwax_get_openui_reference: returns the authoring guide or schema.

  • nuwax://openui/schema/v0.5: renderer-generated component schema.

  • nuwax://openui/authoring-guide/v0.5: syntax and examples.

  • nuwax_openui_authoring: reusable authoring prompt.

Call nuwax_get_openui_reference before producing complex forms, charts, or dashboards.

Creating an Artifact

{
  "schemaVersion": "nuwax.openui/v1",
  "title": "Deployment status",
  "presentation": {
    "mode": "inline",
    "autoOpen": false
  },
  "document": {
    "language": "openui-lang",
    "specVersion": "0.5",
    "source": "root = Stack([title])\ntitle = TextContent(\"Ready\", \"large-heavy\")"
  },
  "bindings": { "tools": [] },
  "fallback": { "markdown": "Deployment is ready." }
}

The response is a nuwax.openui-ref/v1 pointing to:

data/{artifactId}.openui.json

Pass the same artifactId on a later call to atomically replace the Artifact. The original createdAt is retained while updatedAt and the document digest are refreshed.

File contract

{
  "type": "nuwax.openui-file",
  "schemaVersion": "nuwax.openui-file/v1",
  "artifactId": "550e8400-e29b-41d4-a716-446655440000",
  "title": "Deployment status",
  "presentation": { "mode": "inline", "autoOpen": false },
  "document": {
    "language": "openui-lang",
    "specVersion": "0.5",
    "source": "root = Stack([])",
    "digest": "sha256:..."
  },
  "bindings": { "tools": [] },
  "fallback": { "markdown": "" },
  "createdAt": "2026-07-22T00:00:00.000Z",
  "updatedAt": "2026-07-22T00:00:00.000Z"
}

Artifacts have no TTL. Their lifetime follows the project files and they can be reviewed and versioned with Git.

Development

pnpm install
pnpm verify

The web build produces dist/web/runtime.js and dist/web/runtime.css. In the Nuwax repository, scripts/sync-openui-runtime.sh copies those assets into public/openui-runtime/.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nuwax-ai/nuwax-openui-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server