
Sketch
Processes Sketch design files to extract design elements, analyze structure, and convert components to SVG for automated design-to-code workflows.
Processes Sketch design files by extracting internal structure, analyzing design elements, and rendering visual components as SVG images for design-to-code workflows and automated design analysis.
What it does
- Load and parse Sketch design files
- Extract node positions and detailed design information
- Search nodes by name patterns
- Render design components as SVG images
- Analyze page structures and hierarchies
- Process Symbol Masters and Instances
Best for
About Sketch
Sketch is a community-built MCP server published by mater1996 that provides AI assistants with tools and capabilities via the Model Context Protocol. Sketch processes design files, extracts internal structure, and renders SVGs for automated design analysis and design-to It is categorized under ai ml, developer tools. This server exposes 17 tools that AI clients can invoke during conversations and coding sessions.
How to install
You can install Sketch in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
Sketch is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Tools (17)
Get the position of a node by its ID
Get detailed information about a node by its ID
Find nodes by name pattern
List all pages in the Sketch document
List nodes with optional filtering
Sketch MCP Server
English | 中文
A Sketch file processing server based on Model Context Protocol (MCP), designed for AI tools to intelligently analyze Sketch design files and generate code.
✨ Core Features
- 🎨 Sketch File Analysis: Comprehensive parsing of Sketch files, extracting nodes, styles, hierarchies, and complete information
- 🚀 Smart Token Optimization: Up to 90% token consumption reduction, significantly lowering AI call costs
- 🔍 Intelligent Query System: 16 professional tools for efficient discovery and analysis of design elements
- 🎯 Symbol Component Support: Complete Symbol Master and Instance processing capabilities
- 🖼️ Visual Rendering: Render design nodes as SVG/PNG images for AI analysis
- 📊 Detailed Statistical Analysis: Comprehensive statistics for documents and nodes
- 🔧 CLI Tool Support: Support for direct npx calls without installation
📦 Installation
Global Installation (Recommended)
npm install -g sketch-mcp-server
Using npx (No Installation Required)
npx sketch-mcp-server
Local Project Installation
npm install sketch-mcp-server
🚀 Quick Start
Command Line Launch
# Start MCP server (stdio mode)
sketch-mcp-server
# Or use npx
npx sketch-mcp-server
AI Tool Integration
This server is designed for the following AI development environments:
- Trae AI: As an MCP server for Sketch file analysis
- Cursor: Configure as MCP tool for design-to-code workflow
- Claude Desktop: For Sketch file processing and analysis
Trae AI Configuration Example
Add MCP server configuration in Trae AI:
{
"mcpServers": {
"sketch-mcp-server": {
"command": "npx",
"args": ["sketch-mcp-server"]
}
}
}
🛠️ Tool List
📁 File Loading Tools
| Tool Name | Description |
|---|---|
loadSketchByPath | Load Sketch file from file system |
loadSketchByConfig | Load Sketch data from configuration object |
📊 Document Structure Tools
| Tool Name | Description | Optimization Features |
|---|---|---|
getDocumentStructure | Get complete document hierarchy | 🚀 Supports field filtering and summary mode |
getPageStructure | Get single page structure | - |
listPages | List all page basic information | - |
🎯 Node Query Tools
| Tool Name | Description | Token Optimization |
|---|---|---|
getNodesSummary | Smart Node Summary | 🔥 80-90% Token Reduction |
listNodes | List nodes (with filtering support) | - |
listNodesByPage | List nodes by page | - |
findNodesByName | Search nodes by name | - |
🔍 Detailed Information Tools
| Tool Name | Description |
|---|---|
getNodeInfo | Get detailed information for single node |
getMultipleNodeInfo | Batch get node information (up to 100) |
getNodePosition | Get node position information |
🔄 Symbol Component Tools
| Tool Name | Description |
|---|---|
getSymbolMasters | Get all Symbol Masters |
getSymbolInstances | Get all Symbol Instances |
getSymbolMasterBySymbolID | Find Master by Symbol ID |
getSymbolInstanceStyles | Get instance styles (including override styles) |
🎨 Visualization Tools
| Tool Name | Description |
|---|---|
renderNodeAsBase64 | Render node as image (SVG/PNG) |
💡 Token Optimization Strategy
Data Volume Comparison
| Tool/Mode | Token Reduction | Use Case |
|---|---|---|
getNodesSummary | 80-90% | Initial analysis, understanding overall structure |
getDocumentStructure (summary mode) | 70-85% | Quick document structure overview |
getDocumentStructure (field filtering) | 30-50% | Structural analysis |
| Full mode | 0% | Detailed design requirements |
Recommended Workflow
- 🔍 Quick Analysis: Use
getNodesSummaryto understand overall design structure - 📋 Structure Analysis: Use field-filtered
getDocumentStructureto get hierarchical relationships - 🎯 Detailed Information: Get detailed information for specific nodes as needed
- 👁️ Visual Verification: Render key components to confirm effects
📝 Usage Examples
Basic Workflow
// 1. Load Sketch file
{
"name": "loadSketchByPath",
"arguments": {
"path": "/path/to/design.sketch"
}
}
// 2. Get smart summary (save 80-90% tokens)
{
"name": "getNodesSummary",
"arguments": {
"groupBy": "type",
"includeStats": true,
"maxSamples": 5
}
}
// 3. Get detailed information for specific nodes
{
"name": "getMultipleNodeInfo",
"arguments": {
"nodeIds": ["button-id", "text-id"]
}
}
// 4. Render node as image
{
"name": "renderNodeAsBase64",
"arguments": {
"nodeId": "button-id",
"format": "svg"
}
}
Advanced Optimization Examples
// Use field filtering to reduce data volume
{
"name": "getDocumentStructure",
"arguments": {
"fields": ["id", "name", "type", "children"],
"maxDepth": 3,
"summaryMode": false
}
}
// Smart summary grouped by style
{
"name": "getNodesSummary",
"arguments": {
"groupBy": "style",
"includeStats": true,
"maxSamples": 3
}
}
🎯 Tool Selection Guide
| Use Case | Recommended Tool | Token Efficiency | Description |
|---|---|---|---|
| Understanding overall structure | getNodesSummary | ⭐⭐⭐⭐⭐ | Most efficient overview method |
| Analyzing page hierarchy | getDocumentStructure (filtered) | ⭐⭐⭐⭐ | Structured hierarchical information |
| Finding specific nodes | findNodesByName | ⭐⭐⭐ | Precise search |
| Getting detailed information | getMultipleNodeInfo | ⭐⭐ | Batch retrieval |
| Handling Symbol components | getSymbolMasters | ⭐⭐⭐ | Component-based design |
| Visual confirmation | renderNodeAsBase64 | ⭐⭐ | Intuitive effect viewing |
🔧 Development Guide
Environment Requirements
- Node.js >= 16.0.0
- npm or yarn
Local Development
# Clone project
git clone https://github.com/mater1996/sketch-mcp-server.git
cd sketch-mcp-server
# Install dependencies
npm install
# Build project
npm run build
# Run tests
npm test
# Start development server
npm run start:mcp
Available Scripts
npm run build # Build TypeScript to JavaScript
npm run test # Run test suite
npm run test:coverage # Run tests and generate coverage report
npm run start # Start HTTP server
npm run start:mcp # Start MCP stdio server
npm run release # Release new version
npm run release:dry # Simulate release process
📚 API Reference
For detailed API documentation, please refer to Tool Usage Guide.
Development Standards
- Write code in TypeScript
- Follow existing code style
- Add tests for new features
- Update relevant documentation
📄 License
MIT License
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📞 Support
If you encounter any issues or have questions, please:
- Check the documentation
- Search existing issues
- Create a new issue if needed
Alternatives
Related Skills
Browse all skillsUI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: "AI SDK", "Vercel AI SDK", "generateText", "streamText", "add AI to my app", "build an agent", "tool calling", "structured output", "useChat".
Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.
Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.
Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.
Integrate Vercel AI SDK applications with You.com tools (web search, AI agent, content extraction). Use when developer mentions AI SDK, Vercel AI SDK, generateText, streamText, or You.com integration with AI SDK.