webstudio-ai-agent
Allows integration of Radix UI components into Webstudio projects, including dialogs, popups, and other UI elements.
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., "@webstudio-ai-agentAdd a new hero section to my landing page with a call-to-action button"
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.
π Webstudio AI Agent & Local MCP Toolkit
A full-fledged autonomous bridge for AI agents (Antigravity, Cursor, Claude Code, Windsurf) that unlocks 100% of Webstudio MCP capabilities locally without any tariff restrictions, API limits, or access errors.
π The main problem and the solution
Typical work via Cloud API | Our autonomous bridge (Local MCP + Cloud Push) |
β Blocked on free tiers ( | β 100% free and without limits |
β Requires paid API keys | β
Works offline directly with |
β Slow (dozens of network HTTP requests) | β Instant generation (<500ms) thanks to Immer transactions |
β Limited functionality | β Full support for JSX, Radix UI, Animation Groups, Tokens, Collections |
Related MCP server: OGSync
ποΈ Architecture (How it works)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AI CODING ASSISTANT β
β (Google Antigravity, Cursor, Claude Code) β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β LOCAL WEBSTUDIO MCP RUNTIME β
β (70+ Official MCP Tools: insert-fragment, etc.) β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β (Fast Immer Local Mutation)
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β LOCAL PROJECT SOURCE OF TRUTH β
β .webstudio/data.json & .webstudio/assets/ β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β
βΌ webstudio import --to "<shareLink>"
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β WEBSTUDIO CLOUD BUILDER β
β (ΠΠΈΡΡΡΠ²Π΅ Π²ΡΠ΄ΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π½Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π² Ρ
ΠΌΠ°ΡΡ) β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ‘ Installation (2 options to choose from)
Option A: Locally in the project (Recommended, isolated)
# 1. ΠΡΡΠ°Π½ΠΎΠ²ΡΡΡ Webstudio Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π² ΠΏΡΠΎΠ΅ΠΊΡ
npm i webstudio
# 2. ΠΠ°ΠΏΡΡΡΡΡΡ ΠΏΠ°ΡΡΠ΅Ρ
node scripts/setup-local-mcp.mjs --local
# 3. ΠΠ°Π²Π°Π½ΡΠ°ΠΆΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ· Ρ
ΠΌΠ°ΡΠΈ
npx webstudio sync --link "<shareLink>"
# 4. ΠΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅ MCP-ΡΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π΄Π»Ρ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ
npx webstudio mcp single-op-call list-pages "{}"
# 5. ΠΡΠ΄ΠΏΡΠ°Π²ΡΠ΅ ΠΎΠ½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ Ρ Ρ
ΠΌΠ°ΡΡ
npx webstudio import --to "<shareLink>"Option B: Globally on the computer (Once for all projects)
# 1. ΠΡΡΠ°Π½ΠΎΠ²ΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎ
npm i -g webstudio
# 2. ΠΠ°ΠΏΡΡΡΡΡΡ ΠΏΠ°ΡΡΠ΅Ρ
node scripts/setup-local-mcp.mjs
# 3. ΠΠ°Π²Π°Π½ΡΠ°ΠΆΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ· Ρ
ΠΌΠ°ΡΠΈ
webstudio sync --link "<shareLink>"
# 4. ΠΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅ MCP-ΡΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π΄Π»Ρ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ
webstudio mcp single-op-call list-pages "{}"
# 5. ΠΡΠ΄ΠΏΡΠ°Π²ΡΠ΅ ΠΎΠ½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ Ρ Ρ
ΠΌΠ°ΡΡ
webstudio import --to "<shareLink>"π οΈ How to use
1. Use with AI assistants (Antigravity / Cursor / Claude Code)
Just open any Webstudio project in your editor.
The AGENTS.md and .agents/skills/webstudio-ai-designer/SKILL.md files automatically explain all commands and generation rules to the AI assistant!
2. MCP command examples:
π Reading pages and elements:
webstudio mcp single-op-call list-pages "{}"
webstudio mcp single-op-call list-instances '{"pagePath":"/services"}'
webstudio mcp single-op-call list-design-tokens "{}"π¨ Adding sections via JSX (insert-fragment):
Create payload.json:
{
"parentInstanceId": "<parent-instance-id>",
"fragment": "<ws.element ws:tag='section' ws:tokens={[token('token-card', css`background: #fff; padding: 32px; border-radius: 16px;`)]} ws:style={css`display: flex; gap: 24px; @media (max-width: 767px) { flex-direction: column; }`}><ws.element ws:tag='h2'>ΠΠ°Π·Π²Π° Π‘Π΅ΠΊΡΡΡ</ws.element></ws.element>"
}Run:
webstudio mcp single-op-call insert-fragment --input-file payload.jsonπ Dynamic collections from a JSON resource:
Creating a data variable:
webstudio mcp single-op-call create-variable --input-file pricing_data.jsonConnecting a dynamic collection:
webstudio mcp single-op-call insert-collection --input-file collection.jsonπͺ Native Radix UI components (Dialog / Popups):
<radix.Dialog>
<radix.DialogTrigger>
<ws.element ws:tag='button'>ΠΡΠ΄ΠΊΡΠΈΡΠΈ ΠΠΎΠΏΠ°ΠΏ</ws.element>
</radix.DialogTrigger>
<radix.DialogOverlay ws:style={css`position: fixed; inset: 0; background: rgba(0,0,0,0.5); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center;`}>
<radix.DialogContent ws:style={css`background: #fff; border-radius: 20px; padding: 32px; max-width: 500px;`}>
<$.Box>
<radix.DialogTitle>ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΠΎΠΏΠ°ΠΏΡ</radix.DialogTitle>
<radix.DialogDescription>ΠΠΏΠΈΡ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΊΠ½Π°</radix.DialogDescription>
</$.Box>
<radix.DialogClose>β</radix.DialogClose>
</radix.DialogContent>
</radix.DialogOverlay>
</radix.Dialog>π¬ Native Webstudio Animation Groups (<animation.AnimateChildren>):
{
"updates": [
{
"instanceId": "<animation-instance-id>",
"name": "action",
"type": "animationAction",
"value": {
"type": "view",
"animations": [
{
"timing": {
"duration": { "type": "unit", "value": 800, "unit": "ms" },
"rangeStart": { "type": "unit", "value": 10, "unit": "%" },
"easing": "ease-out",
"fill": "backwards"
},
"keyframes": [
{ "offset": 0, "styles": { "opacity": "0", "transform": "translateY(40px)" } },
{ "offset": 1, "styles": { "opacity": "1", "transform": "translateY(0px)" } }
]
}
]
}
}
]
}βοΈ Synchronization to Webstudio Cloud
When you finish generating or editing pages, sync the entire project to the cloud with a single command:
webstudio import --to "https://apps.webstudio.is/builder/<projectId>?authToken=<token>"π License
This project is distributed under the MIT license.
Author: R0STEFAN
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
FlicenseNot gradedqualityBmaintenanceEnables AI agents to extract, sync, test, and debug Roblox games bidirectionally between Studio and filesystem via MCP.31- FlicenseBqualityCmaintenanceA fully local, privacy-first MCP server that gives AI coding assistants deep repository intelligence with file-and-line-cited answers, persistent semantic memory, and agentic abilities like task planning and code reviewβall without any cloud API calls.23
- AlicenseNot gradedqualityAmaintenanceEnables AI tools to read the Roblox Studio game tree, edit scripts, insert models, and run playtests via the Studio MCP interface.28MIT
Related MCP Connectors
Generate, edit, and deploy immersive 3D/WebGL web projects from any MCP assistant.
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors β no code.
MCP-native collaborative markdown editor with real-time AI document editing
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/R0STEFAN/webstudio-ai-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server