paper-design
Read and write designs in Paper via MCP. Paper is a DOM-based design tool — designs are HTML/CSS structures that Claude reads and writes natively.
Prerequisites
Paper Desktop must be running before starting Claude Code. The app auto-starts an MCP server at http://127.0.0.1:29979/mcp. Run python3 ~/.claude/skills/paper-design/scripts/health-check.py to verify connection. If the MCP server is not registered, run bash ~/.claude/skills/paper-design/scripts/setup.sh.
Paper vs Pencil
Use Paper for design-to-code, code-to-design, and rapid prototyping (native DOM). Use Pencil for reusable design systems, existing .pen files, and presentations. Full comparison: references/paper-vs-pencil.md
Workflow
Every Paper interaction follows four phases: Orient, Create, Verify, Export.
1. Orient
Read document state before making changes. Call get_basic_info for file name, page name, artboard list. Call get_tree_summary with an optional depth limit for structure overview. Call get_selection when the user says "this element" or "the selected thing."
2. Create
Two paths depending on direction:
Design from scratch:
find_placement— find empty canvas space for new artboardcreate_artboard— common sizes: Desktop (1440x900), Tablet (768x1024), Mobile (375x812)start_working_on_nodes— lock the artboard (shows progress indicator to user)write_html— write semantic HTML with inline styles or Tailwind classesfinish_working_on_nodes— release the lock
Modify existing design:
get_node_infoorget_children— understand the target node's structurestart_working_on_nodes— lock before modifyingwrite_html(replace content),update_styles(targeted CSS changes), orset_text_content(text-only)finish_working_on_nodes— release the lock
write_html replaces the entire content of the target node. To update part of a design, target a specific child node, not the artboard root.
3. Verify
Call get_screenshot after every write operation to verify visual results. DOM correctness does not guarantee visual correctness. Scale options: 1x (default) or 2x for detail inspection.
4. Export
Design to code: get_jsx exports a node as React + Tailwind JSX. Post-process if the project uses plain CSS. Combine with get_computed_styles to extract design tokens (colors, spacing, typography). Check get_font_family_info to verify font availability before shipping.
Responsive variants: duplicate_nodes to clone a desktop artboard, then resize and adjust layout for tablet/mobile breakpoints.
Working Indicators
start_working_on_nodes and finish_working_on_nodes are locks, not advisories. Starting prevents the user from editing those nodes simultaneously. Forgetting to call finish_working_on_nodes locks the user out. Always pair them. Call finish even if an error occurs mid-workflow.
Integration
When minoan-frontend-design is active, use it for creative direction (aesthetic, typography, color, spatial composition), then translate that direction into Paper artboards via write_html. The design lives in Paper; the code lives in the project. get_jsx bridges them.
When shadcn is active, extract Paper design tokens via get_computed_styles and map them to shadcn's OKLCH CSS variables. Or reverse: read the project's shadcn theme, apply as Paper styles via update_styles.
References
Consult references/ on demand:
tool-reference.md— All 21 MCP tools with usage patterns and gotchas. Read for any Paper MCP operation.workflow-patterns.md— 7 detailed workflow recipes. Read when starting a multi-step design task.paper-vs-pencil.md— Decision matrix across 10 dimensions. Read when choosing between design tools.
More from tdimino/claude-code-minoan
academic-research
Search academic papers, build literature reviews, and synthesize research findings — combines Exa MCP (research_paper category, arxiv filtering) with arxiv-mcp-server for paper discovery, download, and deep analysis. Triggers on academic paper, literature review, research synthesis, arxiv, find papers, scholarly search.
70travel-requirements-expert
Plan a trip, create an itinerary, or research a destination through a structured 5-phase workflow---discovery questions, Exa/Firecrawl research, expert detail gathering, and a day-by-day requirements spec. This skill should be used when a user says "plan a trip," "create an itinerary," "help me visit [place]," or needs travel research with specific venues, safety protocols, and dietary accommodations.
67twilio-api
Use this skill when working with Twilio communication APIs for SMS/MMS messaging, voice calls, phone number management, TwiML, webhook integration, two-way SMS conversations, bulk sending, or production deployment of telephony features. Includes official Twilio patterns, production code examples from Twilio-Aldea (provider-agnostic webhooks, signature validation, TwiML responses), and comprehensive TypeScript examples.
65figma-mcp
Convert Figma designs into production-ready code using MCP server tools. Use this skill when users provide Figma URLs, request design-to-code conversion, ask to implement Figma mockups, or need to extract design tokens and system values from Figma files. Works with frames, components, and entire design files to generate HTML, CSS, React, or other frontend code.
61firecrawl
Scrape web pages to clean markdown using Firecrawl v2 — handles JS-heavy pages, site crawls, URL mapping, document parsing (PDF/DOCX/XLSX), LLM-powered extraction, autonomous agent scraping, and post-scrape browser interaction (Interact API). Prefer over WebFetch for quality and completeness. Triggers on scrape URL, fetch page, crawl site, extract content, parse document, web to markdown, DeepWiki, Firecrawl.
51scrapling
Scrape pages locally with anti-bot bypass, TLS impersonation, and adaptive element tracking — no API keys, no cloud. Handles Cloudflare protection, CSS/XPath element extraction, and survives site redesigns. Complements firecrawl (cloud) with 100% local execution. Triggers on Cloudflare bypass, anti-bot scraping, stealth fetch, local scraping, Scrapling.
47