Remote endpoint Recommended No install
Streamable HTTP, no authentication. Use the exact URL, without a trailing slash. Opening it in a browser returns 405; that is expected.
https://auigrid.com/mcpA demo of the AUIGrid band layout (bodyLayoutMode: "band"). It loads large data sets into the grid at once, without paging, and shows several fields per row grouped into parent and child cells. You can choose 29, 57, 113, or 1,000 columns, and virtual scrolling renders only the cells on screen. It supports status list, quantity stepper, calendar, and checkbox editors, multi-column sorting, list, numeric, and date filters, a totals footer that recalculates after filtering and editing, a right-click context menu with quick filter, sort, change, and copy actions, and an Auto view that switches between band and flat (flatAll) layouts by screen width. A View code panel shows the column layout and grid properties behind the demo.
Getting ready…
AUIGrid is plain JavaScript, so it works anywhere. Official wrappers and samples are ready for React and Vue.
Add one script and one stylesheet, then call AUIGrid.create().
Typed column layouts, properties, and events for React and Vue projects.
An AUIGrid React component with the same column layout and props.
A Vue 3 component for templates and the Composition API.
The AUIGrid MCP server gives AI coding tools the official API reference, default values, TypeScript declarations, and JavaScript, React, and Vue examples, so they write grid code from the real documentation instead of guessing. Available since AUIGrid 3.0.18.
Streamable HTTP, no authentication. Use the exact URL, without a trailing slash. Opening it in a browser returns 405; that is expected.
https://auigrid.com/mcpYour AI tool starts auigrid-mcp-server with npx (stdio). Use it when your network blocks outside connections.
npx -y auigrid-mcp-server@latestRemote. Run in your project's terminal, then restart Claude Code and check /mcp:
claude mcp add --transport http auigrid https://auigrid.com/mcp
Or local:
claude mcp add --transport stdio auigrid -- npx -y auigrid-mcp-server@latest
Remote. Register, restart Codex, then check codex mcp list:
codex mcp add auigrid --url https://auigrid.com/mcp
Or local:
codex mcp add auigrid -- npx -y auigrid-mcp-server@latest
Remote. Add to .cursor/mcp.json in the project:
{
"mcpServers": {
"auigrid": { "url": "https://auigrid.com/mcp" }
}
}
Or local, then make sure auigrid is enabled in Cursor's MCP settings:
{
"mcpServers": {
"auigrid": {
"type": "stdio",
"command": "npx",
"args": ["-y", "auigrid-mcp-server@latest"]
}
}
}
Remote. Add to .vscode/mcp.json (the top-level key is servers, not mcpServers), then start it from MCP: List Servers:
{
"servers": {
"auigrid": { "type": "http", "url": "https://auigrid.com/mcp" }
}
}
Or local:
{
"servers": {
"auigrid": {
"type": "stdio",
"command": "npx",
"args": ["-y", "auigrid-mcp-server@latest"]
}
}
}
Add a remote MCP server (for example, a Claude custom connector) with the URL https://auigrid.com/mcp and the Streamable HTTP transport.
HTTP 429 means the request limit was exceeded; retry after the Retry-After time.
list_versionssearch_docsget_apilist_examplesget_examplebodyLayoutMode, then write a band column layout."exportToXlsx and useExportStyle and write an example that styles the export separately from the screen."Read-only: the server looks up published documentation and examples. It does not read or change your project or grid data. The AUIGrid engine and license are separate.
Three files and one call to AUIGrid.create(). Save the page below and open it on localhost to try it right away.
Non-commercial CDN: the files below are the non-commercial edition and run only on localhost and 127.0.0.1.
For any other domain, replace them with your licensed AUIGrid files (AUIGrid.js, AUIGridLicense.js, theme CSS). See Pricing & License.
AUIGrid.create(selector, columnLayout, gridProps). Define the columnLayout array before this call; it is required.AUIGrid.create() returns a grid ID. Keep it: every instance method takes it as the first argument.AUIGrid.bind(gridId, eventName, handler). There is no event-handler property on gridProps.AUIGridLicense.js before AUIGrid.js; without it the grid will not render.localhost and 127.0.0.1 only. Don't put them in production code; use the customer's licensed files instead.aui-grid package is installed, its type definitions are authoritative for that version.<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>AUIGrid Quick Start</title>
<!-- Non-commercial edition: runs only on localhost and 127.0.0.1.
For other domains, use your licensed AUIGrid files instead. -->
<!-- AUIGrid license file: required; load it before AUIGrid.js -->
<script src="https://cdn.jsdelivr.net/gh/aui-community/auigrid-noncommercial@main/dist/AUIGridLicense.js"></script>
<!-- AUIGrid library: required -->
<script src="https://cdn.jsdelivr.net/gh/aui-community/auigrid-noncommercial@main/dist/AUIGrid.js"></script>
<!-- Theme stylesheet: required; swap for another theme if you like -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/aui-community/auigrid-noncommercial@main/dist/AUIGrid_style.css">
</head>
<body>
<div id="grid_wrap" style="width:800px; height:480px;"></div>
<script>
const columnLayout = [
{ dataField: "name", headerText: "Name", width: 140 },
{ dataField: "country", headerText: "Country", width: 120 },
{ dataField: "quantity", headerText: "Quantity", dataType: "numeric" },
{ dataField: "price", headerText: "Price", dataType: "numeric", formatString: "#,##0" }
];
const myGridID = AUIGrid.create("#grid_wrap", columnLayout, { editable: true });
AUIGrid.setGridData(myGridID, [
{ name: "Anna", country: "Korea", quantity: 12, price: 52000 },
{ name: "Lucas", country: "Germany", quantity: 4, price: 128000 }
]);
AUIGrid.bind(myGridID, "cellClick", (event) => {
console.log(event.dataField, event.value);
});
</script>
</body>
</html>
The most-used parts of the AUIGrid API. Every method takes the grid ID as its first argument. For the full reference (about 900 entries, with defaults and TypeScript declarations), connect the AUIGrid MCP server.
AUIGrid.create(pid, columnLayout, gridProps) | Create a grid in the given element and return its grid ID |
|---|---|
setGridData(id, rows) | Load an array of row objects |
getGridData(id) | Rows as currently shown (after sort and filter) |
getOrgGridData(id) | All rows, ignoring sort and filter |
getCellValue(id, rowIndex, dataField) | Read one cell |
setCellValue(id, rowIndex, dataField, value) | Change one cell |
setSorting(id, [{ dataField, sortType }]) | Sort; sortType 1 ascending, -1 descending |
setFilterByValues(id, dataField, values) | Show only rows with these values |
clearFilterAll(id) | Remove every filter |
setFooter(id, footerLayout) | Set the summary row (SUM, AVG, COUNT, …) |
exportToXlsx(id, options) | Export to Excel |
resize(id, width, height) | Resize; without size, fit the parent element |
destroy(id) | Remove the grid and free its resources |
dataField | Field name in the row object |
|---|---|
headerText | Header label |
width | Column width in pixels |
dataType | "string" (default), "numeric", "date", "boolean" |
formatString | Display format, e.g. "#,##0" |
children | Child columns for grouped headers |
renderer | Cell renderer, e.g. { type: "BarRenderer" } |
editRenderer | Cell editor, e.g. { type: "DropDownListRenderer", list } |
labelFunction | Function that returns the text to display |
filter | Filter icon and type, e.g. { showIcon: true } |
bodyCell | Band layout: show this value above its child cells |
editable | Allow cell editing |
|---|---|
selectionMode | "singleCell" (default), "singleRow", "multipleCells", "multipleRows", "none" |
showRowNumColumn | Show the row number column |
enableSorting | Sort by clicking headers |
enableFilter | Turn on column filters |
showFooter | Show the summary row |
usePaging | Split rows into pages (default false) |
bodyLayoutMode | "band" for band layouts like the demo above |
ready | Rendering finished after data was set |
|---|---|
cellClick | A cell was clicked |
cellEditBegin | Before editing; return false to block it |
cellEditEnd | Editing finished; oldValue and value |
selectionChange | The selected cells or rows changed |
sorting / filtering | Sort or filter state changed |
Prices, development license rules, and what each license covers are on auisoft.net.
See pricing on auisoft.net ↗AUIGrid is a commercial JavaScript data grid for enterprise web applications, made by AUISoft Co., Ltd. It works in plain JavaScript and has official React and Vue components. TypeScript definitions are published on npm as aui-grid; that package does not include the grid engine, which is provided separately with the license file.
Add the AUIGrid MCP server. The recommended way is the hosted endpoint https://auigrid.com/mcp (Streamable HTTP, no installation). If your network blocks outside connections, run it locally: use npx -y auigrid-mcp-server@latest with Node.js 22.12 or later. See setup by tool.
No. It only looks up the published AUIGrid documentation and examples. It has no tools that read or change your project or grid data; your AI tool writes the code.
AUIGrid works with plain JavaScript and TypeScript, and provides official React and Vue components with samples in both JavaScript and TypeScript (GitHub).
AUIGrid is a commercial product, not open source. Production use requires a perpetual license bound to a specific domain or IP; a registered domain cannot be changed after issue. See Pricing & License. A non-commercial edition on GitHub is for personal, educational, testing, and demo use and runs only on localhost and 127.0.0.1. For production evaluation, a 30-day trial is in the download center.