# io.github.ie3jp/illustrator-mcp-server (npm · illustrator-mcp-server)

Read, manipulate, and export Adobe Illustrator design data. 26 tools. macOS | Windows.

- Trust score: 80/100 (high trust)
- Change this week: +28
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `illustrator-mcp-server`: 80/100 (this document), [markdown](https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server.md), [page](https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `illustrator-mcp-server`
- Version: `1.5.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (96 of 100), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (96 of 100), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to ie3jp/illustrator-mcp-server).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 65 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 79/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 8124 tokens (~123/item across 66 items; 66 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 99% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add ie3jp-illustrator-mcp-server -- npx -y illustrator-mcp-server
```

### Codex

```bash
codex mcp add ie3jp-illustrator-mcp-server -- npx -y illustrator-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ie3jp-illustrator-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "illustrator-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add ie3jp-illustrator-mcp-server --command npx --arg -y --arg illustrator-mcp-server
```

### Hermes

```yaml
mcp_servers:
  ie3jp-illustrator-mcp-server:
    command: "npx"
    args: ["-y", "illustrator-mcp-server"]
```

### Other

```json
{
  "mcpServers": {
    "ie3jp-illustrator-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "illustrator-mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 80, +55)

- [security improvement] Install scripts: unverified → pass
- [security improvement] Provenance: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Malware scan: unverified → pass
- [security] The attested source repository moved: ie3jp/illustrator-mcp-server
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Stability: unverified → 0.23
- [functional improvement] Schema quality: unverified → good
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional] Licence: MIT

### 2026-07-31 (score 25, −27)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 52)

First indexed and scored.

## MCP tools (66)

### `get_document_info` (~85 tokens)

Get Document Info

Get document metadata

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…

### `get_artboards` (~105 tokens)

Get Artboards

Get all artboard information

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `index` (integer): Get a specific artboard by index (0-based integer)

### `get_layers` (~113 tokens)

Get Layers

Get layer structure as a tree

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `include_items` (boolean): Include items within each layer
- `include_sublayers` (boolean): Include sublayers

### `get_selection` (~89 tokens)

Get Selection

Get detailed information about the currently selected objects

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…

### `list_text_frames` (~243 tokens)

List Text Frames

List text frames with summary-level information. Supports reading-order sort, pagination, and a lightweight contents-only mode.

Input parameters:

- `artboard_index` (integer): Filter by artboard index (0-based integer)
- `contents_only` (boolean): When true, return only uuid, contents, and artboardIndex (no position/font/style info). Useful for text proofreading.
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `layer_name` (string): Filter by layer name
- `limit` (integer): Maximum number of items to return (for pagination). Applied after sort.
- `offset` (integer): Number of items to skip (for pagination). Applied after sort.
- `sort` (string): Sort order. "reading-order" sorts by artboardIndex asc → y asc → x asc (rows within ~5pt tolerance are treated as the same line)

### `get_text_frame_detail` (~171 tokens)

Get Text Frame Detail

Get detailed text frame attributes including per-character runs (font, tracking, akiLeft/akiRight, tsume, proportionalMetrics), kerning pairs with manual kerning values (1/1000 em), and paragraph attributes. Returns cssHints for web/CSS reproduction. Note: paragraph leading/autoLeading may return 0 in some ExtendScript versions due to missing API support.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `uuid` (string, required): UUID of the target text frame

### `get_colors` (~70 tokens)

Get Colors

Get all color information used in the document

Input parameters:

- `include_diagnostics` (boolean): Include print diagnostics: gradient color space validation, ink coverage per color, color model mismatch warnings
- `include_swatches` (boolean): Include swatch list
- `include_used_colors` (boolean): Include used color collection

### `get_path_items` (~145 tokens)

Get Path Items

Get path and shape data. Note: fill/stroke do not include per-attribute opacity; use the item-level opacity field for transparency.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `include_points` (boolean): Include anchor point details
- `layer_name` (string): Filter by layer name
- `selection_only` (boolean): Get selected paths only

### `get_guidelines` (~85 tokens)

Get Guidelines

Get guide information

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…

### `get_groups` (~119 tokens)

Get Groups

Get structure of groups, clipping masks, and compound paths

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `depth` (number): Maximum traversal depth
- `layer_name` (string): Filter by layer name (all layers if omitted)

### `get_effects` (~112 tokens)

Get Effects

Get effect and appearance information

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `selection_only` (boolean): Selected objects only
- `target` (string): Filter by UUID for a specific object

### `get_images` (~115 tokens)

Get Images

Get embedded and linked image information

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `include_print_info` (boolean): Include print diagnostics: color space mismatch flag, scale factor (%). Only available for embedded raster images.

### `get_symbols` (~86 tokens)

Get Symbols

Get symbol definitions and instances

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…

### `get_document_structure` (~125 tokens)

Get Document Structure

Get tree structure of layers, groups, and objects

Input parameters:

- `artboard_index` (number): Filter by artboard index (0-based integer)
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `depth` (number): Maximum traversal depth (unlimited if omitted)

### `find_objects` (~246 tokens)

Find Objects

Search for objects by specified criteria

Input parameters:

- `artboard_index` (integer): Artboard index (0-based integer)
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `fill_color` (object): Search by fill color. Tolerance defaults to 5 per channel (0-255 for RGB, 0-100 for CMYK). Set tolerance: 0 for exact match.
- `font_name` (string): Font name (partial match)
- `font_size` (object): Font size range
- `layer_name` (string): Layer name
- `name` (string): Object name (partial match)
- `stroke_color` (object): Search by stroke color. Tolerance defaults to 5 per channel (0-255 for RGB, 0-100 for CMYK). Set tolerance: 0 for exact match.
- `type` (string): Object type

### `check_contrast` (~106 tokens)

Check Contrast

Check WCAG color contrast ratios. Manual mode: provide two colors. Auto mode: detect overlapping foreground/background pairs in the document. Note: GrayColor uses ink-quantity interpretation (0=white, 100=black), which differs from the API reference.

Input parameters:

- `auto_detect` (boolean): Auto-detect overlapping foreground/background color pairs in the document
- `color1` (object): First color (manual mode)
- `color2` (object): Second color (manual mode)

### `extract_design_tokens` (~74 tokens)

Extract Design Tokens

Extract colors, typography, and spacing from the document as design tokens in CSS custom properties, JSON, or Tailwind format

Input parameters:

- `format` (string): Output format
- `output_path` (string): File path to save the output (e.g. "/path/to/tokens.json"). If omitted, returns text only.

### `export` (~175 tokens)

Export

Export objects, groups, artboards, or selection. For PNG/JPG, the exported image is returned as base64 in the response — you can view it directly without reading the file from disk. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `format` (string, required): Export format
- `output_path` (string): Output file path. If omitted, auto-generates in the same directory as the document (or ~/Desktop for unsaved documents)
- `raster_options` (object): Raster export options
- `scale` (number): Scale factor
- `svg_options` (object): SVG export options
- `target` (string, required): UUID, "artboard:<index>", or "selection". When exporting a UUID target as PNG/JPG, a temporary document is created internally (selection state may change).

### `export_pdf` (~106 tokens)

Export PDF

Export print-ready PDF. Note: Illustrator will be activated (brought to foreground) during execution. The exported PDF should be verified by a human before final submission.

Input parameters:

- `options` (object): PDF export options
- `output_path` (string): Output file path. If omitted, auto-generates in the same directory as the document (or ~/Desktop for unsaved documents)
- `preset` (string): PDF preset name (e.g. "[PDF/X-4:2008]")

### `get_overprint_info` (~25 tokens)

Get Overprint Info

Get overprint settings with K100/rich black detection and intent classification

### `get_separation_info` (~27 tokens)

Get Separation Info

Get color separation information: CMYK process plates and spot color plates with usage counts

### `preflight_check` (~190 tokens)

Preflight Check

Run pre-press quality checks. Note: This check is not exhaustive — it does not replace a human final review. GrayColor uses ink-quantity interpretation (0=white/no ink, 100=black/full ink), which differs from the API reference.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `min_dpi` (integer): Minimum acceptable DPI for images (default: 300)
- `target_pdf_profile` (string): Target PDF/X profile for compliance checks. x1a: no transparency/RGB, fonts embedded. x4: allows transparency, recommends ICC profile.

### `check_text_consistency` (~168 tokens)

Check Text Consistency

Analyze text frames for dummy/placeholder text and known notation variation patterns (katakana long vowel, fullwidth/halfwidth, wave dash/tilde). Returns all text contents for LLM-driven deeper analysis of inconsistencies, typos, and version mismatches. Note: AI analysis may miss errors and does not replace a human text review.

Input parameters:

- `artboard_index` (integer): Filter by artboard index (0-based)
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…

### `set_workflow` (~134 tokens)

Set Workflow

Set the session-level workflow and default coordinate system. Call this after confirming the user's intent (web, print, or video). Once set, all tools that omit coordinate_system will use the session default. Use clear: true to reset to auto-detection from document (CMYK/print → document coords, RGB/web → artboard-web).

Input parameters:

- `clear` (boolean): Reset session to default behavior (auto-detect from document).
- `coordinate_system` (string): Explicit coordinate system override. If provided with workflow, overrides the workflow-derived default.
- `workflow` (string): The workflow type. Determines the default coordinate system.

### `set_illustrator_version` (~117 tokens)

Set Illustrator Version

Set which Illustrator version to target when multiple versions are installed. Specify a version year (e.g. "2024", "2025"). If Illustrator is already running, connects to the running instance regardless of version. If not running, launches the specified version. Use clear: true to reset to default behavior (connect to any running Illustrator).

Input parameters:

- `clear` (boolean): Reset to default behavior (connect to any running Illustrator).
- `version` (string): Illustrator version year (e.g. "2024", "2025").

### `create_rectangle` (~183 tokens)

Create Rectangle

Create a rectangle. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `corner_radius` (number): Corner radius
- `fill`: Fill color
- `height` (number, required): Height
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `stroke` (object): Stroke settings
- `width` (number, required): Width
- `x` (number, required): Top-left X coordinate
- `y` (number, required): Top-left Y coordinate

### `create_ellipse` (~178 tokens)

Create Ellipse

Create an ellipse. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `fill`: Fill color
- `height` (number, required): Height
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `stroke` (object): Stroke settings
- `width` (number, required): Width
- `x` (number, required): Bounding box top-left X coordinate
- `y` (number, required): Bounding box top-left Y coordinate

### `create_line` (~176 tokens)

Create Line

Create a line. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `stroke` (object): Stroke settings
- `x1` (number, required): Start point X coordinate
- `x2` (number, required): End point X coordinate
- `y1` (number, required): Start point Y coordinate
- `y2` (number, required): End point Y coordinate

### `create_text_frame` (~248 tokens)

Create Text Frame

Create a text frame. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `contents` (string, required): Text contents. Use \n for line breaks (automatically converted to CR for Illustrator).
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `fill`: Text color
- `font_name` (string): Font name (partial match, e.g. "Arial", "Helvetica"). Use list_fonts to find exact PostScript names.
- `font_size` (number): Font size (pt)
- `height` (number): Area text height
- `kind` (string): Text frame type (point or area)
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `width` (number): Area text width
- `x` (number, required): X coordinate
- `y` (number, required): Y coordinate

### `create_path` (~159 tokens)

Create Path

Create a custom path. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `anchors` (array, required): Array of anchor points
- `closed` (boolean): Whether to close the path
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `fill`: Fill color
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `stroke` (object): Stroke settings

### `modify_object` (~124 tokens)

Modify Object

Modify properties of an existing object. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `properties` (object, required): Properties to modify
- `uuid` (string, required): UUID of the target object

### `convert_to_outlines` (~55 tokens)

Convert to Outlines

Convert text to outlines. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `target` (string, required): Target: "selection" (selected), "all" (all text), or layer name

### `assign_color_profile` (~79 tokens)

Assign Color Profile

Assign (tag) a color profile to the document. WARNING: This only changes the profile tag — it does NOT convert color values (ICC conversion). For full conversion, use Edit > Convert to Profile in Illustrator. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `profile` (string, required): Color profile name or path

### `place_image` (~228 tokens)

Place Image

Place a raster or PDF image file (PNG, JPG, TIFF, PSD, PDF, etc.) into the document as a linked or embedded image. SVG is NOT supported here because PlacedItems produces a non-editable linked artwork — use import_svg_as_editable instead to bring SVG content in as editable paths/text. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `embed` (boolean): Embed the image instead of linking (default: false)
- `file_path` (string, required): Absolute path to the image file
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `x` (number): X position
- `y` (number): Y position

### `import_svg_as_editable` (~349 tokens)

Import SVG as Editable

Import an SVG file into the active document as editable Illustrator paths/text/groups (NOT as a linked image). Internally opens the SVG as a temporary document, duplicates its contents into the target document, then closes the source. Use this instead of place_image for SVG. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `file_path` (string, required): Absolute path to the .svg or .svgz file
- `fit_to_artboard` (boolean): Scale and center the imported content to fit the active artboard (default: false).
- `group` (boolean): Wrap imported items in a single GroupItem (default: true). Set false to keep items flat in the target layer.
- `layer_name` (string): Target layer name in the active document. Created if missing.
- `name` (string): Name to assign to the root group (only when group=true and multiple items are imported).
- `padding` (number): Padding in points from the artboard edges when fit_to_artboard is true.
- `x` (number): X position of the imported content (top-left of bounding box). Ignored when fit_to_artboard is true.
- `y` (number): Y position of the imported content (top-left of bounding box). Ignored when fit_to_artboard is true.

### `resize_for_variation` (~195 tokens)

Resize for Variation

Create size variations from a source artboard. Duplicates all objects and scales/repositions them proportionally to fit target sizes. Limitations: no text reflow, effects/strokes scale with objects but may need manual adjustment, proportional placement only (not smart layout).

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `scale_mode` (string): How to scale objects: proportional (fit within, maintain aspect), fit_width, or fit_height
- `source_artboard_index` (integer, required): Source artboard index to duplicate from (0-based)
- `target_sizes` (array, required): Target sizes for variations

### `align_objects` (~146 tokens)

Align Objects

Align and/or distribute multiple objects by their UUIDs

Input parameters:

- `alignment` (string): Alignment direction
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `distribute` (string): Distribute objects evenly
- `reference` (string): Align relative to selection bounding box or active artboard
- `uuids` (array, required): UUIDs of objects to align (minimum 2)

### `replace_color` (~140 tokens)

Replace Color

Find and replace colors across the document or within a specific layer. Limitations: SpotColor and GrayColor matching not supported. Cross-colorspace matching (e.g. RGB→CMYK) not possible — from_color and to_color must use the same color type as the target objects.

Input parameters:

- `from_color` (required): Color to find (required)
- `scope` (string): Layer name to limit replacement scope (default: entire document)
- `target` (string): Which color attributes to replace
- `to_color` (required): Replacement color (required)
- `tolerance` (number): Color matching tolerance per channel (0 = exact match, 100 = match any)

### `manage_layers` (~101 tokens)

Manage Layers

Add, rename, show/hide, lock/unlock, reorder, or delete layers

Input parameters:

- `above` (string): For add: create above this layer name
- `action` (string, required): Layer operation to perform
- `layer_name` (string): Target layer name (for add: new layer name)
- `new_name` (string): New name (required for rename action)
- `position` (integer): Target position for reorder (0 = topmost)

### `place_color_chips` (~182 tokens)

Place Color Chips

Extract all unique colors from the document and place color chip swatches with labels outside the artboard

Input parameters:

- `artboard_index` (integer): Target artboard (default: active artboard)
- `chip_size` (number): Chip size in points (default: 30)
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `include_info` (boolean): Include color value labels next to chips
- `layer_name` (string): Layer name for color chips
- `position` (string): Place chips to the right or below the artboard

### `place_style_guide` (~152 tokens)

Place Style Guide

Place a visual style guide (color chips, font samples, spacing indicators) outside the artboard

Input parameters:

- `artboard_index` (integer): Target artboard (default: active artboard)
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `layer_name` (string): Layer name for the style guide
- `position` (string): Place style guide to the right or below the artboard

### `create_crop_marks` (~309 tokens)

Create Crop Marks (トンボ)

Create crop marks (トンボ / trim marks) on the active artboard or selected objects. By default, creates marks for the artboard and expands the artboard to include all marks. With use_selection=true, creates marks for the currently selected object(s) without modifying the artboard. Automatically selects Japanese-style (日本式) or Western-style crop marks based on locale. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `artboard_index` (integer): Target artboard index (0-based). Defaults to the currently active artboard. Ignored when use_selection is true.
- `locale` (string): User locale (e.g. "ja", "ja-JP", "en-US", "de-DE"). Used to auto-detect crop mark style when style is "auto". Japanese locales (ja*) → Japanese marks, others → Western marks. If omitted, falls back t…
- `style` (string): Crop mark style. "japanese" = double-line marks with 3mm bleed indication (日本式トンボ). "western" = single-line marks (西洋式トンボ). "auto" = detect from locale parameter or Illustrator locale.
- `use_selection` (boolean): If true, create crop marks for the currently selected object(s) instead of the artboard. The artboard will NOT be modified. If false (default), creates marks for the artboard and expands it to fit.

### `create_document` (~87 tokens)

Create Document

Create a new Illustrator document. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `color_mode` (string): Color mode (default: rgb)
- `height` (number): Document height in points (default: A4 height 841.89pt)
- `width` (number): Document width in points (default: A4 width 595.28pt)

### `close_document` (~45 tokens)

Close Document

Close the active Illustrator document. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `save` (boolean): Whether to save before closing (default: false)

### `save_document` (~82 tokens)

Save Document

Save the active Illustrator document. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `mode` (string): save = overwrite, save_as = save to new path
- `path` (string): File path for save_as mode. If omitted, auto-generates in the same directory as the document (or ~/Desktop for unsaved documents)

### `open_document` (~77 tokens)

Open Document

Open an Illustrator document from a file path. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `color_space` (string): Force color space conversion on open. Omit to keep original.
- `path` (string, required): Absolute file path to open (.ai, .eps, .pdf, .svg, etc.)

### `group_objects` (~132 tokens)

Group Objects

Group multiple objects into a single group. The first UUID in the array becomes the bottommost item, the last becomes the topmost. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `clipped` (boolean): Create as clipping group. The last UUID becomes the clip path (topmost). Example: [content-uuid, mask-uuid] — mask-uuid clips content-uuid.
- `name` (string): Name for the new group
- `uuids` (array, required): UUIDs of objects to group. Order matters: first=bottom, last=top in layer panel.

### `ungroup_objects` (~51 tokens)

Ungroup Objects

Ungroup a group, releasing its children to the parent layer. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `uuid` (string, required): UUID of the group to ungroup

### `duplicate_objects` (~146 tokens)

Duplicate Objects

Duplicate one or more objects, optionally offsetting the copies. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `offset` (object): Offset for duplicated objects
- `target_layer` (string): Layer name to place duplicates in
- `uuids` (array, required): UUIDs of objects to duplicate

### `list_fonts` (~54 tokens)

List Fonts

List fonts available in Illustrator. Does not require an open document.

Input parameters:

- `filter` (string): Filter by family or name (case-insensitive partial match)
- `limit` (integer): Max fonts to return (default 100)

### `manage_artboards` (~160 tokens)

Manage Artboards

Add, remove, resize, rename, fit, or rearrange artboards. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string, required): Action to perform
- `index` (integer): Target artboard index (0-based). Required for remove/resize/rename/fit_to_art. Note: the last remaining artboard cannot be removed.
- `layout` (string): Artboard layout for rearrange
- `name` (string): New name for rename action
- `rect` (object): Position and size for add/resize (document coordinates)
- `rows_or_cols` (integer): Number of rows or columns for rearrange
- `spacing` (number): Spacing in points for rearrange

### `set_z_order` (~54 tokens)

Set Z-Order

Change the stacking order of an object. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `command` (string, required): Stacking order command
- `uuid` (string, required): UUID of the object

### `move_to_layer` (~77 tokens)

Move to Layer

Move one or more objects to a different layer. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `position` (string): beginning = front of layer, end = back of layer
- `target_layer` (string, required): Target layer name
- `uuids` (array, required): UUIDs of objects to move

### `apply_graphic_style` (~77 tokens)

Apply Graphic Style

Apply a graphic style to objects. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `merge` (boolean): true = merge with existing appearance, false = replace
- `style_name` (string, required): Name of the graphic style to apply
- `uuids` (array, required): UUIDs of target objects

### `list_graphic_styles` (~19 tokens)

List Graphic Styles

List all graphic styles in the active document.

### `manage_swatches` (~70 tokens)

Manage Swatches

Add, update, or delete swatches in the active document. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string, required): Action to perform
- `color`: Color for add/update (required for add)
- `name` (string, required): Swatch name

### `apply_text_style` (~87 tokens)

Apply Text Style

Apply a character or paragraph style to a text frame. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `clear_overrides` (boolean): Clear existing formatting overrides before applying
- `style_name` (string, required): Name of the style
- `style_type` (string, required): Type of style to apply
- `uuid` (string, required): UUID of the text frame

### `list_text_styles` (~20 tokens)

List Text Styles

List all character and paragraph styles in the active document.

### `create_gradient` (~117 tokens)

Create Gradient

Create a gradient in the document and optionally apply it to objects. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `angle` (number): Gradient angle (for linear). Note: may not take effect due to a long-standing Illustrator bug (since 2008).
- `apply_to_uuids` (array): UUIDs of objects to apply this gradient as fill
- `name` (string, required): Gradient name
- `stops` (array, required): Gradient stops (minimum 2)
- `type` (string)

### `manage_linked_images` (~102 tokens)

Manage Linked Images

Relink or embed a placed (linked) image. embed converts PlacedItem to RasterItem — the original UUID becomes invalid and a new UUID for the RasterItem is returned. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string, required): Action to perform
- `new_path` (string): New file path (required for relink)
- `uuid` (string, required): UUID of the placed (linked) image

### `undo` (~54 tokens)

Undo / Redo

Undo or redo actions in Illustrator. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string)
- `count` (integer): Number of times to undo/redo (max 20)

### `manage_datasets` (~161 tokens)

Manage Variables & Datasets

List variables/datasets, apply or create datasets, bind variables to objects, import CSV/XML. CSV headers are auto-bound to objects with matching names. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string, required): Action to perform
- `dataset_name` (string): Dataset name (for apply_dataset, create_dataset)
- `dataset_name_prefix` (string): Prefix for auto-generated dataset names (for import_csv). If omitted, first column value is used.
- `file_path` (string): File path (XML for import/export, CSV for import_csv)
- `object_name` (string): Object name to bind variable to (for bind_variable)
- `variable_name` (string): Variable name (for bind_variable)

### `place_symbol` (~187 tokens)

Place Symbol

Place a new symbol instance or replace the symbol definition of an existing instance. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `action` (string, required): place = new instance, replace = swap symbol definition
- `coordinate_system` (string): Coordinate system. Auto-detected from document by default (CMYK/print → document, RGB/web → artboard-web). artboard-web: origin at active artboard top-left, Y-down. document: Illustrator native coord…
- `symbol_name` (string, required): Symbol name to place or new symbol name for replace
- `uuid` (string): UUID of existing symbol item (for replace action)
- `x` (number): X position (for place action)
- `y` (number): Y position (for place action)

### `create_path_text` (~120 tokens)

Create Path Text

Create a text frame that flows along a path. Note: Illustrator will be activated (brought to foreground) during execution.

Input parameters:

- `contents` (string, required): Text contents
- `font_name` (string): Font name (partial match, e.g. "Arial"). Use list_fonts to find exact PostScript names.
- `font_size` (number): Font size (pt)
- `layer_name` (string): Target layer name
- `name` (string): Object name
- `path_uuid` (string, required): UUID of the path to place text along

### `select_objects` (~57 tokens)

Select Objects

Select objects by UUID. Pass an empty array to deselect all. Selected objects can then be manipulated interactively in Illustrator.

Input parameters:

- `uuids` (array, required): Array of object UUIDs to select. Pass empty array [] to deselect all.

### `convert_coordinate` (~53 tokens)

Convert Coordinate

Convert a point between artboard and document coordinate systems in the active document.

Input parameters:

- `from` (string, required): Source coordinate system
- `point` (object, required): Point to convert
- `to` (string, required): Destination coordinate system

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server#diagnostics

## Score history

- 2026-08-03: 80
- 2026-08-02: 80
- 2026-08-01: 25
- 2026-07-31: 25
- 2026-07-30: 52
- 2026-07-28: 52
- 2026-07-27: 52

## Links

- npm package: https://www.npmjs.com/package/illustrator-mcp-server
- Socket report: https://socket.dev/npm/package/illustrator-mcp-server
- Repository: https://github.com/ie3jp/illustrator-mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/ie3jp-illustrator-mcp-server/illustrator-mcp-server
