Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Low-Code UI MCP Serversuggest UI instructions for this list of customer records"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Low-Code UI MCP Server
This project provides a Python MCP server that inspects runtime data and returns UI instructions compatible with the low-code renderer in C:\Users\gregg\development\low-code\low-code\packages\ui.
The server is designed around the instruction types documented in C:\Users\gregg\development\low-code\low-code\README.md:
labellisttablecardaccordioncarousel
What It Does
The exposed MCP tool, suggest_ui_instructions, accepts a data object and returns:
instruction: a renderer-readyUIInstructionorUIInstruction[]analysis: the component decisions made for each fieldnotes: a short explanation of the heuristics used
Example selection behavior:
arrays of primitive values become
listsmall arrays of objects become
carouselmedium arrays of objects become
accordionlarge, flat arrays of objects become
tablenested objects become
card
Install
cd C:\Users\gregg\development\mcp
python -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install -e .Run
cd C:\Users\gregg\development\mcp
.venv\Scripts\Activate.ps1
low-code-ui-mcpYou can also run it directly:
python -m low_code_ui_mcpRun with HTTP REST transport instead of stdio:
python -m low_code_ui_mcp --transport http --host 127.0.0.1 --port 8000When running in HTTP mode:
health check:
GET /healthnon-blocking suggestion endpoint:
POST /api/v1/suggest-ui-instructions
Example request:
Invoke-RestMethod -Method Post -Uri "http://127.0.0.1:8000/api/v1/suggest-ui-instructions" -ContentType "application/json" -Body (@{
data = @{
title = "Quarterly Summary"
highlights = @("Revenue up 12%", "Churn down 3%")
products = @(
@{ name = "Alpha"; owner = "Team A"; score = 92 },
@{ name = "Beta"; owner = "Team B"; score = 88 }
)
}
} | ConvertTo-Json -Depth 20)MCP Tool
suggest_ui_instructions
Parameters:
data: the object to analyzecarousel_max_items: maximum object-array size that still preferscarouseltable_min_items: minimum object-array size that starts preferringtabletable_max_columns: maximum distinct object keys that still counts as a flat tablemax_depth: recursion limit for nested instruction generation
Example request payload:
{
"data": {
"title": "Quarterly Summary",
"highlights": ["Revenue up 12%", "Churn down 3%"],
"products": [
{ "name": "Alpha", "owner": "Team A", "score": 92 },
{ "name": "Beta", "owner": "Team B", "score": 88 }
],
"accounts": [
{ "name": "Acme", "region": "NA", "status": "Active" },
{ "name": "Globex", "region": "EU", "status": "Active" },
{ "name": "Initech", "region": "APAC", "status": "Paused" },
{ "name": "Umbrella", "region": "NA", "status": "Active" },
{ "name": "Soylent", "region": "EU", "status": "Pilot" },
{ "name": "Wonka", "region": "NA", "status": "Active" },
{ "name": "Hooli", "region": "APAC", "status": "Active" },
{ "name": "Stark", "region": "NA", "status": "Active" }
]
}
}Example response shape:
{
"instruction": [
{ "type": "label", "field": "title", "label": "Title" },
{ "type": "list", "field": "highlights", "label": "Highlights" },
{
"type": "carousel",
"field": "products",
"label": "Products",
"contents": [
{ "type": "label", "field": "name", "label": "Name" },
{ "type": "label", "field": "owner", "label": "Owner" },
{ "type": "label", "field": "score", "label": "Score" }
]
},
{ "type": "table", "field": "accounts", "label": "Accounts" }
]
}Heuristics
Primitive fields render as
labelArrays of primitives render as
listEmpty arrays default to
listArrays of objects render as:
carouselwhen item count is smallaccordionwhen item count is medium or the objects are more nestedtablewhen the array is large and the objects are flat enough for columns
Nested objects render as
cardwith child instructions inferred from the nested fields
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.