moonvy-ui-mcp
Moonvy UI MCP
MCP zum Lesen von Moonvy-Designs für die Frontend-Entwicklung. Durch Eingabe einer Projektseiten- oder Designdatei-URL können Seitenliste, Artboard-Größen, Layer-Baum, Knotenstile, Design-Tokens sowie Slice-/Snapshot-/Bildfüll-Ressourcen abgerufen werden.
Dieses Projekt orientiert sich an den Tool-Grenzen von lanhu-mcp, liest die Daten jedoch speziell für Moonvy: Es extrahiert präzise Parameter aus den Moonvy-Designdatendateien (Genome), anstatt Farben, Schriftgrößen und Abstände anhand von Screenshots zu erraten.
Funktionen
MCP-Tool | Zweck |
| Projekt-, Verzeichnis- und Designdatei-IDs parsen |
| Designdateien aus Projekt/Verzeichnis auflisten; nur bei Ordner-URLs zuerst aufrufen |
| Titel, Artboard-IDs, Artboard-Breite/-Höhe, Genome-Version abrufen |
| Flache Layer-Indizes zum Auffinden von Knoten-IDs nach Namen |
| Größe, relative Koordinaten, Abstände, Füllung, Text, Eckenradius, Kontur, Schatten und CSS eines einzelnen Knotens abrufen |
| Verschachtelten Layer-Baum mit UI-Parametern abrufen |
| Farben, Verläufe, Schriften, Schriftgrößen, Schriftgewichte, Zeilenhöhen, Eckenradien, Schatten und abgeleitete Abstände extrahieren |
| Gibt Metadaten, Tokens und Layer-Baum mit Stilen in einem Aufruf zurück; für die Entwicklung empfohlen |
| Slice, Snapshot, Bildfüllung oder Dateivorschau der obersten Ebene herunterladen |
| In-Memory-Cache nach Design-Updates leeren |
moonvy_get_node_style und moonvy_get_ui_spec liefern:
Absolute Position sowie
relativeX/relativeYrelativ zum übergeordneten KnotenAbstand zur rechten und unteren Kante des übergeordneten Knotens
Breite/Höhe, Sichtbarkeit, Deckkraft, Beschneidungsstatus
Verweise auf Volltonfarben, Verläufe und Bildfüllungen
Schriftart, Schriftgröße, Schriftgewicht, Zeilenhöhe, Zeichenabstand, Textfarbe und Ausrichtung
Eckenradius, Kontur, Schatten
Direkt referenzierbares CSS-Eigenschaftenobjekt
Related MCP server: Figma MCP
Datenpfad
Moonvy URL
-> projectId / dirId / fileId
-> POST https://global-api.moonvy.com/v2/anynode/get
-> files.genome.url
-> 下载并解压 Genome JSON
-> 解析图层、样式、Token、资源
-> MCP JSON 响应Projekt-/Verzeichnislisten verwenden POST /v2/anynode/list. Dies sind nicht-öffentliche Schnittstellen, die derzeit von Moonvy Web verwendet werden. Sollte Moonvy die Schnittstellen oder die Genome-Struktur in Zukunft anpassen, muss die Anpassungsschicht synchron aktualisiert werden.
Installation
Erfordert Node.js 20 oder höher.
cd C:\path\to\moonvy-ui-mcp
npm install
Copy-Item .env.example .envMoonvy-Anmeldetoken konfigurieren
Bei Moonvy im Browser anmelden und die zu lesende Moonvy-Seite öffnen.
Die Entwicklertools öffnen und zur Konsole wechseln.
Ausführen:
copy(window.app?.api?.$options?.token)Den kopierten Wert in die
.env-Datei dieses Projekts schreiben:
MOONVY_TOKEN=你的本机令牌Das Token wird nur lokal gespeichert. Es darf nicht in Chats gesendet, in Git committet oder in Frontend-Code geschrieben werden. Die Dienstantworten blenden JWT und Ressourcen-URLs mit Abfrageparametern automatisch aus.
Selbsttest
npm run check
npm test
npm startnpm start ist ein stdio-MCP-Dienst, der normalerweise keine regulären Logs ausgibt und auf eine MCP-Client-Verbindung wartet.
Integration in Codex / ChatGPT-Desktop-App
In den Einstellungen MCP servers -> Add server wählen und den Typ STDIO auswählen:
Command:
nodeArguments:
C:\path\to\moonvy-ui-mcp\src\server.jsWorking directory:
C:\path\to\moonvy-ui-mcp
Alternativ kann Folgendes in ~/.codex/config.toml oder in eine .codex/config.toml innerhalb eines vertrauenswürdigen Projekts eingefügt werden:
[mcp_servers.moonvy]
command = "node"
args = ["C:/path/to/moonvy-ui-mcp/src/server.js"]
cwd = "C:/path/to/moonvy-ui-mcp"
startup_timeout_sec = 20
tool_timeout_sec = 180Der Dienst liest MOONVY_TOKEN standardmäßig aus der .env-Datei im cwd. Falls das Token aus lokalen Umgebungsvariablen weitergeleitet werden soll, kann zusätzlich Folgendes hinzugefügt werden:
env_vars = ["MOONVY_TOKEN"]Nach dem Speichern Codex/Desktop-App neu starten und im Eingabefeld /mcp verwenden, um die Verbindung zu prüfen.
Integration in Cursor / Windsurf / Claude Code
Standard-stdio-MCP-Konfiguration verwenden:
{
"mcpServers": {
"moonvy": {
"command": "node",
"args": ["C:/path/to/moonvy-ui-mcp/src/server.js"],
"cwd": "C:/path/to/moonvy-ui-mcp"
}
}
}Verwendungsreihenfolge für aktuelle Moonvy-Links
Aktueller Link:
https://moonvy.com/project/89f75621-a0e7-4122-b9ee-b6b703e1c826/cf67c54c-8e2b-4809-9e4d-fc6512d0e0beEr enthält projectId + dirId und zeigt auf einen Ordner statt auf eine konkrete Designdatei. Daher wird Folgendes empfohlen:
moonvy_list_pagesaufrufen, um die Dateiliste abzurufen.Eine konkrete Design-URL aus den zurückgegebenen Ergebnissen auswählen.
moonvy_get_designaufrufen, um die Artboard-Liste anzuzeigen.Für das Ziel-Artboard
moonvy_get_ui_specmitmaxDepth=4undmaxNodes=500aufrufen.Falls ein bestimmtes Element genau geprüft werden soll, zuerst
moonvy_list_layersverwenden, um die Knoten-ID zu finden, dannmoonvy_get_node_styleaufrufen.Icons, Hintergrundbilder oder Seiten-Snapshots mit
moonvy_download_assetin das Ressourcenverzeichnis des tatsächlichen Frontend-Projekts herunterladen.
Beispiel-Prompt:
使用 Moonvy MCP 列出这个项目目录里的设计文件。找到“新增学生”页面后,
读取它的 UI spec,保留原始颜色、字号、间距和圆角,并把需要的切图下载到
C:/work/school-web/src/assets/moonvy。Entsprechung zu lanhu-mcp
lanhu-mcp-Ansatz | Umsetzung in diesem Projekt |
Designliste abrufen |
|
Designparameter analysieren |
|
Slices abrufen |
|
Login-Berechtigung über Cookie/JWT wiederverwenden |
|
Designdaten cachen | In-Process-Genome-TTL-Cache |
Modellkontext steuern |
|
Die aktuelle Version konzentriert sich auf „Design → Frontend-Implementierung" und übernimmt nicht die Anforderungsdokumentanalyse, das Team-Message-Board und die Feishu-Kollaborationsfunktionen aus dem Lanhu-Projekt.
Sicherheit und Einschränkungen
Nur Moonvy-Projekte verwenden, auf die Sie ohnehin Zugriffsrechte haben.
.envist in.gitignoreenthalten; dennoch sollte das Token nicht manuell committet werden.moonvy_download_asseterfordert ein absolutes Ausgabeverzeichnis, um zu verhindern, dass Ressourcen versehentlich an unklare Orte geschrieben werden.Nach Ablauf des Moonvy-Tokens muss es neu abgerufen werden.
Dieses Projekt umgeht keine Anmeldung, Projektberechtigungen oder Zugriffskontrollen des Moonvy-Servers.
Die Felder im Genome können je nach Design-Tool-Version leicht abweichen; der Parser behält gängige Kompatibilitätsfelder bei, dennoch wird eine End-to-End-Abnahme mit einem realen Team-Design empfohlen.
Entwicklung und Tests
Unit-Tests verwenden synthetische Genome und benötigen keine Moonvy-Anmeldedaten:
npm testEnd-to-End-Tests mit echten Projekten erfordern ein gültiges MOONVY_TOKEN:
1. moonvy_list_pages(文件夹 URL)
2. moonvy_get_design(设计文件 URL)
3. moonvy_get_ui_spec(设计文件 URL)
4. moonvy_get_node_style(设计文件 URL, 节点 ID)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
- AlicenseBqualityDmaintenanceEnables interaction with Figma designs through the Figma API, allowing users to export images in multiple formats, extract style data and CSS, analyze design elements, and retrieve SVG code from Figma files. Supports batch operations and comprehensive design element analysis including images, vectors, and components.72011MIT
- FlicenseAqualityDmaintenanceEnables interaction with Figma files through intelligent API access, providing navigation, asset extraction, and design token retrieval with 95% token-optimized compact tree output format.151
- FlicenseBqualityDmaintenanceEnables AI agents to read, inspect, and export Figma designs programmatically. Provides tools for listing components, styles, and exporting assets in various formats.51
- AlicenseNot gradedqualityDmaintenanceEnables developers to extract and organize Figma design files, including complete node data (tree structure and images) for AI understanding and code generation.MIT
Related MCP Connectors
Turn any live website into brand colors, fonts, design tokens, SVGs, Lottie and paste-ready code.
Score any URL against a real design contract — 42 checks, A-F grade, token + motion validation.
Read your Savee saves, boards and home feed, and search its public library. Read-only.
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/Cc-Zzh1/moonvy-ui-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server