NuvUI

The docs, rules, blocks, charts and design tokens of nuvui, a React UI library, for coding agents.

Should I use this

Quality & Safety

A
Description quality
97%
Schema completeness
84%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'list_components' description lacks action verbin list_components

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,599Tokens (tool definitions)
~859 BTypical response size
Moderate attention impact (1.25% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "nuvui": {
      "url": "https://nuvui.nuvraxis.com/mcp"
    }
  }
}

Remote endpoints

https://nuvui.nuvraxis.com/mcpstreamable-http

What it can do

Tool inventory

Tools (10)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_rules(topic)

Start here. Without a topic: what to know before writing code with nuvui, the packages, the rules in a line each, and which component meets which need. With a topic: that rule in full, with wrong and right code.

Input Schema

{
  "type": "object",
  "properties": {
    "topic": {
      "description": "One of: accessibility, composition, forms, packages, server-components, styling, text-and-direction.",
      "type": "string",
      "enum": [
        "accessibility",
        "composition",
        "forms",
        "packages",
        "server-components",
        "styling",
        "text-and-direction"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_components(package)

Every component page, by package, with what each is for in a line. Pass a package to see only its pages.

Input Schema

{
  "type": "object",
  "properties": {
    "package": {
      "description": "A package, such as @nuvui/table or table. One of: @nuvui/react, @nuvui/date-picker, @nuvui/table, @nuvui/charts, @nuvui/barcodes, @nuvui/chat, @nuvui/kanban, @nuvui/editor, @nuvui/emoji, @nuvui/map, @nuvui/flow, @nuvui/icons.",
      "type": "string",
      "maxLength": 40
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_guides

The pages that aren't about one component: getting started, theming, Tailwind, SCSS, forms, right to left, translation, the Content Security Policy, support, and recipes for whole screens.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_page(page, section)

One page of the reference, as Markdown: a component's parts, props, examples, CSS variables, classes and accessibility, or a guide. Takes a page's id from list_components, list_guides or search_docs, or a component's name, such as Compare or DataTable. A section gives only that part of the page, such as Props or CSS variables.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
      "description": "A page's id, such as components/compare, or a component's name."
    },
    "section": {
      "description": "A `##` heading on the page, such as Props, Accessibility or CSS variables.",
      "type": "string",
      "maxLength": 100
    }
  },
  "required": [
    "page"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢search_docs(query, limit)

Finds the sections of the reference that best answer a question or a few words, such as 'sortable table', 'dark mode' or 'error message on a field'. Each result names its page and section, for get_page.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "limit": {
      "default": 8,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_blocks(category)

Blocks are screens and parts of apps built from the components, such as a sign-in screen, a dashboard or a pricing table, each a TSX file and an SCSS file to copy and change. Look here before building a screen from nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "description": "One of: accounts, chat, dashboard, data, editor, flows, layout, marketing, settings.",
      "type": "string",
      "maxLength": 40
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_block(name)

A block's files in full, the packages they need, and the command that adds it to a project.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
      "description": "A block's name from list_blocks, such as sign-in."
    }
  },
  "required": [
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_charts(family)

Charts built with @nuvui/charts on Recharts, each one file to copy: area, bar, line, pie, radar, radial, scatter and more.

Input Schema

{
  "type": "object",
  "properties": {
    "family": {
      "description": "One of: area, bar, line, pie, radar, radial, tooltip, composed, scatter, dashboard.",
      "type": "string",
      "maxLength": 40
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_chart(name)

A chart's file in full, such as bar/stacked, from list_charts.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
      "description": "A chart's id from list_charts, such as bar/stacked."
    }
  },
  "required": [
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_tokens(prefix)

The design tokens as CSS custom properties, for your own CSS: var(--color-primary), never a color written out. A prefix gives only those, such as --color-, --radius- or --text-.

Input Schema

{
  "type": "object",
  "properties": {
    "prefix": {
      "type": "string",
      "maxLength": 60,
      "pattern": "^[a-z0-9-]*$"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded10 tools