multiAI Summary Pending

pencil-mcp-batch-get

Batch search and read node information. The Agent's 'Eyes'. Use to find specific components e.g. all nodes named 'Button' or get child structure within a container.

223 stars

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/pencil-mcp-batch-get/SKILL.md --create-dirs "https://raw.githubusercontent.com/partme-ai/full-stack-skills/main/skills/pencil-skills/pencil-mcp-batch-get/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/pencil-mcp-batch-get/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How pencil-mcp-batch-get Compares

Feature / Agentpencil-mcp-batch-getStandard Approach
Platform SupportmultiLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Batch search and read node information. The Agent's 'Eyes'. Use to find specific components e.g. all nodes named 'Button' or get child structure within a container.

Which AI agents support this skill?

This skill is compatible with multi.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

## Tools

This skill is designed to call the Pencil MCP tool:

*   `batch_get`

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

## 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., if the user just says "Find the button" in a general context, they might mean simple text search or other tools).

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

**ALWAYS use this skill when:**
- You need to **Find** specific nodes by name or ID.
- You need to **Read** the properties of specific nodes.
- You need to inspect the children of a Frame.
- The user asks to "Find the button", "Get properties of X" **in Pencil**.

**Trigger phrases include:**
- "Pencil find all buttons" (Pencil 查找所有按钮)
- "Get node info with Pencil" (用 Pencil 获取节点信息)
- "Read properties using Pencil" (使用 Pencil 读取属性)
- "Pencil search components" (Pencil 搜索组件)

## Input Parameters

*   **`filePath`** (string, optional): Path to file.
*   **`patterns`** (array, optional): Search patterns (e.g., `["name=Button"]`).
*   **`nodeIds`** (array, optional): Specific IDs to read.
*   **`searchDepth`** (integer, optional): Depth for search.
*   **`readDepth`** (integer, optional): Depth for reading children structure. **Keep low (<3)**.
*   **`includePathGeometry`** (boolean, optional): Include vector path data.
*   **`resolveVariables`** (boolean, optional): Return computed values instead of variable refs.

## How to use this skill

1.  **Combine Requests**: If you need to search AND read by ID, do it in ONE call.
2.  **Smart Traversal**:
    *   Start with top-level or known IDs.
    *   If you see `...` (truncated children), make a new call with those specific child IDs.
3.  **Design Systems**: To list available components, search for reusable nodes inside the design system frame.

## Examples

### 1. Simple: Get Root Children
Get the top-level nodes of the document to understand the general structure.
See [1-get-root.json](examples/1-get-root.json).

### 2. Medium: Search by Name
Find all nodes that contain "Button" in their name.
See [2-search-name.json](examples/2-search-name.json).

### 3. Complex: Detailed Search
Search for specific nodes by ID and name pattern, resolving variables to see actual values, and getting full geometry.
See [3-detailed-search.json](examples/3-detailed-search.json).

## Keywords

**English keywords:**
batch get, search nodes, find elements, read properties, inspect structure, get components

**Chinese keywords (中文关键词):**
批量获取, 搜索节点, 查找元素, 读取属性, 检查结构, 获取组件