Agent skill

pencil-mcp-get-variables

Read design token variables (colors, fonts, spacing) from a Pencil .pen file via the get_variables MCP tool. Use when the user explicitly mentions Pencil and needs to list design tokens, check the current theme, or retrieve variable IDs for use in batch_design operations.

Stars 254
Forks 41

Install this agent skill to your Project

npx add-skill https://github.com/partme-ai/full-stack-skills/tree/main/skills/pencil-skills/pencil-mcp-get-variables

SKILL.md

Tools

This skill is designed to call the Pencil MCP tool:

  • get_variables

If your client namespaces MCP tools, it may appear as mcp__pencil__get_variables.

When to use this skill

Intent Recognition (CRITICAL)

Even if a trigger phrase matches, you must verify the user's intent:

  1. Is the user explicitly asking to use "Pencil"?
  2. Is the current conversation context clearly about "Pencil" design tasks?

If the answer is NO, do NOT use this skill. (e.g., "Get variables" might refer to environment variables or code variables).

CRITICAL PREREQUISITE: You must ONLY use this skill when the user EXPLICITLY mentions "Pencil".

ALWAYS use this skill when:

  • You need to know the available Design Tokens (Colors, Typography, Spacing) in Pencil.
  • You want to use semantic names (e.g., primary-color) instead of hardcoded hex codes.
  • You are checking the current theme.

Trigger phrases include:

  • "Get Pencil variables" (获取 Pencil 变量)
  • "Read Pencil design tokens" (读取 Pencil 设计令牌)
  • "Check Pencil colors" (检查 Pencil 颜色)
  • "List Pencil theme values" (列出 Pencil 主题值)

Input Parameters

  • filePath (string, optional): Path to the .pen file.

How to use this skill

  1. Call Tool: get_variables().
  2. Analyze Output: The result is a list/map of variable definitions.
  3. Apply: Use the variable IDs or names in batch_design operations (e.g., fill: { type: "var", id: "var_123" }).

Examples

1. Simple: Get All Variables

Retrieve all variables defined in the current document.

json
{}

2. Medium: Get from Specific File

Read variables from a different design file (e.g., a shared library).

json
{
  "filePath": "/Users/design/system/tokens.pen"
}

3. Complex: Theme Audit (Conceptual)

Same as simple, but used when auditing themes.

json
{}

Keywords

English keywords: get variables, read tokens, design system, theme values, color palette, typography tokens

Chinese keywords (中文关键词): 获取变量, 读取令牌, 设计系统, 主题值, 调色板, 字体令牌

Expand your agent's capabilities with these related and highly-rated skills.

partme-ai/full-stack-skills

ocrmypdf-batch

OCRmyPDF batch processing skill — process multiple PDFs, Docker automation, shell scripting, and CI/CD integration. Use when the user needs to OCR many PDFs, set up automated OCR pipelines, or integrate OCR into workflows.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-optimize

OCRmyPDF optimization skill — compress PDFs, configure PDF/A output, JBIG2 encoding, and lossless optimization. Use when the user needs to reduce PDF file size, create archival PDF/A files, or optimize OCR output.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-image

OCRmyPDF image processing skill — deskew, rotate, clean, despeckle, remove border from scanned documents. Use when the user needs to improve scanned PDF quality, fix skewed pages, remove noise, or clean up scanned documents before OCR.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf-api

OCRmyPDF Python API and plugin skill — use OCRmyPDF programmatically from Python, integrate with applications, and extend with plugins (EasyOCR, PaddleOCR, AppleOCR). Use when the user needs to call OCRmyPDF from Python code, build OCR pipelines, or use alternative OCR engines.

254 41
Explore
partme-ai/full-stack-skills

ocrmypdf

OCRmyPDF core skill — add searchable OCR text layer to scanned PDFs, convert images to searchable PDFs, support 100+ languages via Tesseract. Use when the user needs to OCR a PDF, make a scanned PDF searchable, or extract text from scanned documents.

254 41
Explore
partme-ai/full-stack-skills

svelte

Guides Svelte and SvelteKit development including reactive components, stores, transitions, lifecycle hooks, SSR, file-based routing, and deployment. Use when the user needs to build Svelte components, create SvelteKit applications, implement reactivity patterns, or configure Svelte with Vite.

254 41
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results