Add your description here
Project description
UI MCP Server
This project initiates at the Power of Europe Hackathon 2025.
Demo
Overview
ui-mcp-server is an MCP server that generates specifications for a range of UI components, containing only essential data to remain framework-agnostic. Unlike existing solutions, ui-mcp-server is data-focused, acquiring and filling data during conversation sessions while leaving rendering entirely to frontend developers (for now).
Features
- Framework-agnostic UI component specifications
- Data-focused approach with conversation session support
- Full developer freedom for rendering and customization
- Compatible with MCP clients like Cursor, Kilo and Claude Desktop
Installation
Claude Desktop
-
Add the server to your Claude Desktop configuration file (
claude_desktop_config.json):{ "mcpServers": { "UI MCP Server": { "command": "full/path/to/uvx", "args": ["ui-mcp-server"] }, // Your existing MCP servers... } }
-
Restart Claude Desktop to load the MCP server.
Kilo
A working configuration looks like below:
{
"mcpServers": {
"ui-mcp-server":{
"command": "full/path/to/ui-mcp-server",
"args": []
}
}
}
We might have missed something as the expected version below didn't work:
{
"mcpServers": {
"ui-mcp-server":{
"command": "full/path/to/uvx",
"args": ["ui-mcp-server"]
}
}
}
Core concepts
- UI-as-a-tool:
ui-mcp-serverprovides tools that can be used to generate UI components. To this end, frequently used UI components are defined as tools, and the data required for each tool is acquired during the conversation session. The data extraction part is taken care of by AI agents using this MCP server. See our Streamlit demo for an example. - Component standardisation: To be agnostic of frontend frameworks,
ui-mcp-serverdefines a standardised component library, which is basically a set of JSON schemas for UI components, with some values are predefined, and others are left to be filled by AI.
Related Projects
- Magic MCP: Generates React components, focusing on development productivity
- MCP UI: Similar concept to this project but with tighter coupling to specific UI implementations. Can't be used as a standalone MCP server.
- shadcn-ui-mcp-server: Similart to MCP UI, a battery-included solution providing shadcn components as source code.
Key Differentiators
Separation of Concerns: ui-mcp-server handles UI types and conversation data exclusively, providing maximum flexibility for developers to customize and render components according to their specific needs and frameworks.
Future work
- Define standardized component libraries for mainstream frameworks (React, Vue, Svelte, etc.)
- Create templates to streamline frontend development workflow
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ui_mcp_server-0.1.0.tar.gz.
File metadata
- Download URL: ui_mcp_server-0.1.0.tar.gz
- Upload date:
- Size: 73.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc85dd7623bb40037c50bbbd396695fd9a0f2279e7b901d6156dd52e52f4c456
|
|
| MD5 |
7262381f43480f17c3e2a3bcbefccc8e
|
|
| BLAKE2b-256 |
50597d1d2755611f1c43c4ef7db569a7a8d2c24439d927299c35f86cfb0a155c
|
Provenance
The following attestation bundles were made for ui_mcp_server-0.1.0.tar.gz:
Publisher:
ci.yml on ShaojieJiang/ui-mcp-server
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ui_mcp_server-0.1.0.tar.gz -
Subject digest:
cc85dd7623bb40037c50bbbd396695fd9a0f2279e7b901d6156dd52e52f4c456 - Sigstore transparency entry: 317908742
- Sigstore integration time:
-
Permalink:
ShaojieJiang/ui-mcp-server@6f7fa31fddfcb84dd0d3d6dc3bcc9ee889f27dfb -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ShaojieJiang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@6f7fa31fddfcb84dd0d3d6dc3bcc9ee889f27dfb -
Trigger Event:
push
-
Statement type:
File details
Details for the file ui_mcp_server-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ui_mcp_server-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
40be233cb8923b6495d5532f8a0575ead6ce5cfdac223eeeeb0bc3b09b3d1faa
|
|
| MD5 |
1be9a10612cec689e44f056139248191
|
|
| BLAKE2b-256 |
fb303e1c2b897bb9a5542bc81cbbd8925785b2574a3494f843b137b46478e22d
|
Provenance
The following attestation bundles were made for ui_mcp_server-0.1.0-py3-none-any.whl:
Publisher:
ci.yml on ShaojieJiang/ui-mcp-server
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ui_mcp_server-0.1.0-py3-none-any.whl -
Subject digest:
40be233cb8923b6495d5532f8a0575ead6ce5cfdac223eeeeb0bc3b09b3d1faa - Sigstore transparency entry: 317908761
- Sigstore integration time:
-
Permalink:
ShaojieJiang/ui-mcp-server@6f7fa31fddfcb84dd0d3d6dc3bcc9ee889f27dfb -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ShaojieJiang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@6f7fa31fddfcb84dd0d3d6dc3bcc9ee889f27dfb -
Trigger Event:
push
-
Statement type: