NV Elements Catalog Starters Repo System Themes Getting Started Getting Started Installation CLI MCP Skills Lint Integrations Getting Started Angular Bundles CDN Custom Elements Golang Hugo Import Maps Lit Lit Library MCP Apps NextJS Nuxt Preact React SolidJS Svelte TypeScript Vue About Changelog Metrics Support Accessibility Contributions Requests Migration Foundations Overview Typography Iconography Themes Design Tokens Size & Space Objects Interactions Support Status Color Animation Fonts Layers Custom Layout Horizontal Vertical Grid Popovers i18n Visualization View Transitions Elements Accordion Alert Avatar Badge Breadcrumb Button Button Group Card Chat Message Checkbox Color Combobox Copy Button Datagrid Integrations Column Action Column Alignment Column Fixed Column width Container Card Display Settings Footer Heatmap Keynav Multi Select Pagination Panel Detail Panel Grid Performance Placeholder Row Action Row Groups Row Sort Scroll Height Single Select Stripe Date Datetime Dialog Divider Dot Drawer Dropdown Dropdown Group Dropzone File Format Datetime Format Number Format Relative Time Forms Validation Actions Control Icon Icon Button Input Input Group Logo Menu Month Notification Page Page Header Page Loader Pagination Progressive Filter Chip Progress Bar Progress Ring Password Preferences Input Pulse Radio Range Resize Handle Search Select Skeleton Sort Button Sparkline Star Rating Steps Switch Tabs Tag Textarea Time Toast Toggletip Toolbar Tooltip Tree Week Patterns Authentication Browse Chat Dashboard Editor Empty States Heatmap Keyboard Shortcut Logging Media Navigation Onboarding Panel Responsive Search Subheader Trend Code Codeblock Monaco Input Diff Input Editor Diff Editor Problems Markdown Markdown CSS Utility Labs Responsive Layout Viewport Container Patterns Forms API Design Properties & Attributes Slots Registration CustomEvents Stateless Composition Styles Packaging Glossary Logs Internal Guidelines Agent Harness Agent Tooling Agent Ownership Documentation Examples TypeScript Testing Unit Testing Accessibility Testing Lighthouse Testing SSR Testing Visual Testing Troubleshooting Component Creation Internal Examples All Examples

Elements MCP

The Elements MCP server connects AI coding assistants to the Elements design system. It gives tools like Claude Code, Cursor, and Codex direct access to component APIs, design tokens, skills, template validation, project scaffolding, and interactive MCP Apps views so your AI assistant can build with Elements effectively

Install CLI

Install the Elements CLI to your system. This creates a canonical executable path and adds the nve command to your path when possible.

macOS / Linux Windows PowerShell NodeJS

    

Quick Setup

After you install the CLI, the fastest way to configure the Elements MCP uses the setup command. This detects your package manager, configures the MCP server for Cursor, Claude Code, and Codex, and adds Elements core dependencies to the project.


    

Manual Setup

Claude Code Cursor Codex

After adding the configuration in the root of your project, restart Claude Code for the changes to take effect. The Elements MCP tools are then available for use in your conversations.



    

Usage

Prompts

Prompt Description Example Prompt /about A brief introduction to Elements /about /doctor Verify Elements setup and MCP configuration /doctor /playground Context for creating playground prototypes /playground Create an example login form /search Context for searching Elements APIs /search What notifies a user of a long running process? /new-project Context for creating a new Elements project. /new-project Create an Angular todo app /migrate Context for migrating from deprecated Elements APIs /migrate Migrate this project from deprecated Elements APIs

Skills

Skills provide persistent context to AI agents for building UI with Elements. Unlike prompts (invoked on demand) or tools (callable functions), skills give agents background knowledge about Elements components, workflows, and best practices. Call skills_list for the current list and skills_get for the full context of a specific skill.

Skill Description about Instructions for providing a brief introduction for using the Elements Design System. authoring Best practices and workflow guidance for authoring UI with NVIDIA Elements. doctor Instructions for ensuring the Elements Design System is setup correctly. artifact Use when creating throwaway UI artifacts, prototypes, demos, Claude Artifacts, Codex, or GPT Sites pages, or other standalone HTML interfaces that should use the NVIDIA Elements CDN template. integration Best practices and workflow guidance for creating or setting up NVIDIA Elements projects. migration Instructions for migrating a project from deprecated Elements APIs using lint tooling and CLI health checks. search Best practices for providing Elements API Documentation. elements Default skill for UI-related work or NVIDIA Elements (nve-*), including HTML, CSS, layout, theming, components, applications, prototypes, Claude Artifacts, Codex Sites pages, and standalone UI artifacts.

Deployments with the playground service enabled can also expose a playground skill for creating Elements Playground prototypes.

Tools

Tool Description api_list Get list of all available Elements (nve-*) APIs and components. api_get Get documentation known components or attributes by name (nve-*). api_template_validate Validates HTML templates using Elements APIs and components (nve-*). api_imports_get Get esm imports for a given HTML template using Elements APIs (nve-*). api_tokens_list Get available semantic CSS custom properties / design tokens for theming. api_icons_list Get list of all available icon names for nve-icon and nve-icon-button. packages_list Get latest published versions of all Elements packages. packages_get Get details for a specific Elements package. packages_changelogs_get Retrieve changelog details by package name. examples_list Get list of available Elements (nve-*) patterns and examples. examples_get Get the full template of a known example or pattern by id. examples_render Render a custom Elements HTML template inline in the MCP Apps preview view. skills_list Get a list of available Elements agent skills and context fragments. skills_get Get a bundled Elements agent skill or context fragment by name. playground_validate Validates HTML templates specifically for playground examples. playground_create Create a shareable playground URL from an HTML template. project_create Create a new starter project. project_validate Check project for configuration issues and dependencies. project_setup Setup or update a project to use Elements.

MCP Apps UI

The Elements MCP server supports MCP Apps for hosts that implement the io.modelcontextprotocol/ui extension. The same nve mcp command advertises the text/html;profile=mcp-app MIME type, registers ui://elements/* resources, and attaches _meta.ui.resourceUri metadata to tools that have an app view. You do not need separate setup.

Hosts with MCP Apps support can render these views inline in the conversation. Hosts without Apps support still receive the normal text and structured tool output.

App View Resource Tools Description Example Preview ui://elements/example-preview examples_get, examples_render Render stored examples or validated custom Elements HTML templates with the Elements bundle and themes already loaded. Icon List ui://elements/icons-list api_icons_list Search available nve-icon names and copy the matching source markup. Token Explorer ui://elements/tokens-list api_tokens_list Search design tokens, preview token values, switch themes, and copy CSS custom property references.

Each app resource is a self-contained HTML document that includes Elements components, theme CSS, typography CSS, layout CSS, and a small MCP Apps client. The client initializes the app, reports size changes, receives tool input and result notifications, and calls server tools through the MCP Apps message channel when it needs more data. Message handling validates the parent origin before reading inbound JSON-RPC payloads.

Client support for MCP Apps is host-specific. Check the MCP extension support matrix before relying on inline Apps behavior in a specific assistant.

Troubleshooting

403 Forbidden

A 403 Forbidden error means your token has expired. Re-authenticate to resolve it.


    

Unsupported Engine

An Unsupported engine warning means your Node.js version is out of date. The CLI requires Node.js v20 or later. Update Node.js and try again.