moonvy-ui-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MOONVY_TOKEN | Yes | Your Moonvy login token, obtained from the browser console (copy from `window.app?.api?.$options?.token`) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| moonvy_parse_urlA | Validate a Moonvy URL and return project, directory, and file IDs. Does not require authentication. |
| moonvy_list_pagesA | List folders and design files below a Moonvy project or directory URL. Call this first when only a project URL is known. |
| moonvy_get_designA | Return the design title, genome version, frame IDs, frame dimensions, and child counts for a Moonvy design URL. |
| moonvy_list_layersA | Return a flat layer index with node IDs, names, types, depth, absolute bounds, and parent-relative positions. Use it to find a node ID before requesting exact style. |
| moonvy_get_node_styleA | Return one node’s size, coordinates, distances to parent edges, fills, typography, borders, radius, effects, opacity, visibility, and directly usable CSS declarations. |
| moonvy_get_treeA | Return the nested design layer tree. Styles include exact UI values and CSS. Limit depth and node count to keep model context compact. |
| moonvy_extract_tokensB | Extract reusable colors, gradients, fonts, text metrics, radii, inferred padding/gaps, and shadows from a design. |
| moonvy_get_ui_specA | Recommended development tool: return design metadata, inferred design tokens, and a styled component tree in one response. Use frameId/maxDepth/maxNodes to control context size. |
| moonvy_download_assetA | Download a design slice, snapshot, image fill, or top-level file/preview into an absolute local output directory. |
| moonvy_clear_cacheA | Clear the in-memory genome cache after a design has changed and must be fetched again. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Each tool has a distinct responsibility: URL parsing, listing pages, fetching design metadata, layer indexing, node style extraction, tree traversal, token extraction, full spec generation, asset download, and cache management. No two tools overlap in purpose, making misselection unlikely.
All tools follow a consistent 'moonvy_verb_noun' pattern using snake_case (e.g., moonvy_list_pages, moonvy_get_node_style). The prefix uniformly identifies the server, and verbs are action-oriented with descriptive nouns, creating a predictable and readable API surface.
With 10 tools, the server covers the core workflow of navigating Moonvy designs, extracting styles, tokens, specs, and assets without excess. The count is well-scoped for its purpose—neither too sparse nor bloated.
The tool surface covers the full design-to-code pipeline: parse URLs, navigate hierarchy, retrieve detailed node styles, extract tokens, generate UI specs, and download assets. A minor gap is the lack of tools for editing or creating designs, but given the read-focused nature of this server, the existing set is comprehensive and leaves no dead ends for typical usage.