The docs, rules, blocks, charts and design tokens of nuvui, a React UI library, for coding agents.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
A block's files in full, the packages they need, and the command that adds it to a project.
A block's name from list_blocks, such as sign-in.
The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release.
A block's files in full, the packages they need, and the command that adds it to a project.
| Argument | Type | Description |
|---|---|---|
| name* | string | A block's name from list_blocks, such as sign-in. |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
"maxLength": 100,
"minLength": 1,
"description": "A block's name from list_blocks, such as sign-in."
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}What each @nuvui/* package added and changed after the versions a project has, from the packages' changelogs, newest first, and what's in the docs but in no release yet. Pass the @nuvui/* entries of the project's package.json. Without them: the latest version of each package.
| Argument | Type | Description |
|---|---|---|
| installed | object | The @nuvui/* packages in the project's package.json, with their versions as written there, such as { "@nuvui/react": "^0.6.0", "@nuvui/table": "0.1.6" }. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"installed": {
"type": "object",
"properties": {
"@nuvui/3d": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/map": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/chat": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/flow": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/emoji": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/icons": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/media": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/react": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/table": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/charts": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/editor": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/kanban": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/barcodes": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/backgrounds": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
},
"@nuvui/date-picker": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1
}
},
"description": "The @nuvui/* packages in the project's package.json, with their versions as written there, such as { \"@nuvui/react\": \"^0.6.0\", \"@nuvui/table\": \"0.1.6\" }.",
"additionalProperties": false
}
},
"additionalProperties": false
}A chart's file in full, such as bar/stacked, from list_charts.
| Argument | Type | Description |
|---|---|---|
| name* | string | A chart's id from list_charts, such as bar/stacked. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
"maxLength": 100,
"minLength": 1,
"description": "A chart's id from list_charts, such as bar/stacked."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| page* | string | A page's id, such as components/compare, or a component's name. |
| section | string | A `##` heading on the page, such as Props, Accessibility or CSS variables. |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"page": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 /_-]*$",
"maxLength": 100,
"minLength": 1,
"description": "A page's id, such as components/compare, or a component's name."
},
"section": {
"type": "string",
"maxLength": 100,
"description": "A `##` heading on the page, such as Props, Accessibility or CSS variables."
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}Start here. Without a topic: the versions these docs describe, 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.
| Argument | Type | Description |
|---|---|---|
| topic | string | One of: accessibility, composition, forms, packages, server-components, styling, text-and-direction. |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"topic": {
"enum": [
"accessibility",
"composition",
"forms",
"packages",
"server-components",
"styling",
"text-and-direction"
],
"type": "string",
"description": "One of: accessibility, composition, forms, packages, server-components, styling, text-and-direction."
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}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-.
| Argument | Type | Description |
|---|---|---|
| prefix | string | |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"prefix": {
"type": "string",
"pattern": "^[a-z0-9-]*$",
"maxLength": 60
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
| category | string | One of: 3d, accounts, chat, dashboard, data, editor, flows, layout, marketing, media, settings. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
},
"category": {
"type": "string",
"maxLength": 40,
"description": "One of: 3d, accounts, chat, dashboard, data, editor, flows, layout, marketing, media, settings."
}
},
"additionalProperties": false
}Charts built with @nuvui/charts on Recharts, each one file to copy: area, bar, line, pie, radar, radial, scatter and more.
| Argument | Type | Description |
|---|---|---|
| family | string | One of: area, bar, line, pie, radar, radial, tooltip, composed, scatter, dashboard. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"family": {
"type": "string",
"maxLength": 40,
"description": "One of: area, bar, line, pie, radar, radial, tooltip, composed, scatter, dashboard."
}
},
"additionalProperties": false
}Every component page, by package, with what each is for in a line. Pass a package to see only its pages.
| Argument | Type | Description |
|---|---|---|
| package | string | 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/media, @nuvui/backgrounds, @nuvui/3d, @nuvui/icons. |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"package": {
"type": "string",
"maxLength": 40,
"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/media, @nuvui/backgrounds, @nuvui/3d, @nuvui/icons."
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query* | string | |
| version | string | The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 8,
"maximum": 20,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"version": {
"type": "string",
"pattern": "^(?:\\^|~|>=|=)?v?\\d+(?:\\.(?:\\d+|x|\\*)){0,2}(?:-[0-9A-Za-z.-]+)?$",
"maxLength": 40,
"minLength": 1,
"description": "The @nuvui/react version in the project's package.json, such as 0.6.2 or ^0.6.0, for the docs of that release. Leave it out for the latest release."
}
},
"additionalProperties": false
}