io.github.ie3jp/illustrator-mcp-server
NPM · ILLUSTRATOR-MCP-SERVER
Adobe Illustrator MCP with 66 tools — more than the official Illustrator MCP. macOS | Windows.
Available components
Last scanned (1 hour ago)
Scores higher than 99% of npm servers
Category Design and Media
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. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 30 of 94 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to ie3jp/illustrator-mcp-server). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 39 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability80
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 10898 tokens (~165/item across 66 items; 66 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 99% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 66 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Nov 26 +1
- Stability: 0.97 → pass security
- 1 Nov 26 −1
- Stability: pass → 0.97 functional
- 27 Oct 26 0
- Stability: fail → pass ▲ security
- 21 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 95 to 99.
- 20 Oct 26 −1
No change was recorded against any check on this day. Stability & Change Management went from 99 to 95.
- 17 Oct 26 +3
No change was recorded against any check on this day. Stability & Change Management went from 82 to 99.
- 15 Oct 26 −3
No change was recorded against any check on this day. Stability & Change Management went from 99 to 79.
- 14 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 95 to 99.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Analysed npm/illustrator-mcp-server@1.10.3
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | ie3jp/illustrator-mcp-server |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/ie3jp/illustrator-mcp-server/.github/workflows/ci.yml@refs/tags/v1.10.3 |
| Rekor log index | 2965085195 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:1c3865ddd81829b395dea725fba5fbdf356310e1af060b4ea3171b3175b11c7e5efb7649c64b77bfd468b2380ee6ae5228ef3f6282288086718aa6096 |
Background: How many MCP packages publish verified provenance →
Dependencies 94 packages
| Packages resolved | 94 |
|---|---|
| Stale | 30 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
align_objects Align Objects ~167
Align and/or distribute multiple objects by their UUIDs. If any UUID is not found, nothing is moved and the missing UUIDs are returned in notFound.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | UUIDs of objects to align (minimum 2) |
No output schema declared.
No examples provided.
apply_graphic_style Apply Graphic Style ~108
Apply a graphic style to objects. Objects that are found are styled; missing UUIDs are listed in notFound and per-object failures in errors (success is false if either is non-empty). Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| merge | boolean | – | true = merge with existing appearance, false = replace |
| style_name | string | yes | Name of the graphic style to apply |
| uuids | array | yes | UUIDs of target objects |
No output schema declared.
No examples provided.
apply_text_style Apply Text Style ~87
Apply a character or paragraph style to a text frame. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| clear_overrides | boolean | – | Clear existing formatting overrides before applying |
| style_name | string | yes | Name of the style |
| style_type | string | yes | Type of style to apply |
| uuid | string | yes | UUID of the text frame |
No output schema declared.
No examples provided.
check_contrast Check Contrast ~169
Check WCAG color contrast ratios. Manual mode: provide color1 and color2. Auto mode (auto_detect: true): find visible foreground/background pairs by bounding-box overlap (stacking order, opacity and clipping are not considered; gradient/pattern/image backgrounds are reported as unevaluated). Non-RGB colors are converted without ICC profiles, so their ratio is approximate and WCAG pass/fail is null. GrayColor uses ink-quantity interpretation (0=white, 100=black), which differs from the API reference.
| Name | Type | Req | Description |
|---|---|---|---|
| auto_detect | boolean | – | Auto-detect overlapping foreground/background color pairs in the document. Do not combine with color1/color2. |
| color1 | object | – | First color (manual mode) |
| color2 | object | – | Second color (manual mode) |
No output schema declared.
No examples provided.
check_text_consistency Check Text Consistency ~168
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.
| Name | Type | Req | Description |
|---|---|---|---|
| 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… |
No output schema declared.
No examples provided.
close_document Close Document ~104
Close the active Illustrator document. If the document has unsaved changes and save is omitted, the document is NOT closed and an error is returned — pass save: true to save, or save: false to explicitly discard the changes. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| save | boolean | – | true = save then close; false = close and DISCARD unsaved changes. Omit to close only when there are no unsaved changes |
No output schema declared.
No examples provided.
convert_coordinate Convert Coordinate ~53
Convert a point between artboard and document coordinate systems in the active document.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | yes | Source coordinate system |
| point | object | yes | Point to convert |
| to | string | yes | Destination coordinate system |
No output schema declared.
No examples provided.
convert_to_outlines Convert to Outlines ~124
Convert text to outlines (irreversible except via undo). Text frames that cannot be converted (e.g. locked) are left as-is and listed in "failed" with the reason; success is false if any failed. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| target | string | yes | Target: "selection" (selected), "all" (all text), or a top-level layer name (includes text inside groups and sublayers; if several layers share the name, the topmost one is used and a warning is retu… |
No output schema declared.
No examples provided.
create_crop_marks Create Crop Marks (トンボ) ~339
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; the original (trim) rectangle is returned as original_artboard_rect. 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. The Illustrator crop mark style preference, selection and active artboard are restored afterwards. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
No output schema declared.
No examples provided.
create_document Create Document ~87
Create a new Illustrator document. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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) |
No output schema declared.
No examples provided.
create_ellipse Create Ellipse ~178
Create an ellipse. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | Height |
| layer_name | string | – | Target layer name |
| name | string | – | Object name |
| stroke | object | – | Stroke settings |
| width | number | yes | Width |
| x | number | yes | Bounding box top-left X coordinate |
| y | number | yes | Bounding box top-left Y coordinate |
No output schema declared.
No examples provided.
create_gradient Create Gradient ~258
Create a gradient in the document and optionally apply it to objects. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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. For groups/compound paths it is applied to every path and text inside (clipping paths and guides are skipped) and checked by reading back; verified th… |
| 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… |
| name | string | yes | Gradient name |
| stops | array | yes | Gradient stops (minimum 2) |
| type | string | – | – |
No output schema declared.
No examples provided.
create_line Create Line ~176
Create a line. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | Start point X coordinate |
| x2 | number | yes | End point X coordinate |
| y1 | number | yes | Start point Y coordinate |
| y2 | number | yes | End point Y coordinate |
No output schema declared.
No examples provided.
create_path Create Path ~159
Create a custom path. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| anchors | array | yes | 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 |
No output schema declared.
No examples provided.
create_path_text Create Path Text ~307
Create a text frame that flows along a path. If font_name is not found, nothing is created and an error with font_candidates is returned. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| contents | string | yes | Text contents |
| 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… |
| font_name | string | – | Exact font name as listed by list_fonts (the "name" field, e.g. "ArialMT"). Not a partial match: if not found, nothing is created and an error with font_candidates is returned. |
| font_size | number | – | Font size (pt) |
| justification | string | – | Alignment of the text along the path: left (from the path start) | center | right (toward the path end). |
| layer_name | string | – | Target layer name |
| name | string | – | Object name |
| path_uuid | string | yes | UUID of the path to place text along |
| tracking | number | – | Letter spacing (tracking) in 1/1000 em. 0 = none, positive = looser, negative = tighter. Same units and range as Illustrator's Character panel. |
No output schema declared.
No examples provided.
create_rectangle Create Rectangle ~183
Create a rectangle. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | Height |
| layer_name | string | – | Target layer name |
| name | string | – | Object name |
| stroke | object | – | Stroke settings |
| width | number | yes | Width |
| x | number | yes | Top-left X coordinate |
| y | number | yes | Top-left Y coordinate |
No output schema declared.
No examples provided.
create_text_frame Create Text Frame ~611
Create a text frame. Positioning differs by kind: for point text (x, y) is the text ANCHOR — y is the BASELINE of the first line (glyphs extend above it), and x is the left edge, center, or right edge depending on justification (so right-aligned text only needs justification: "right" with x at the right edge). For area text (x, y) is the top-left of the text area. verified.bounds always reports the resulting bounding box (top-left, width, height) — that box is what modify_object position moves. If font_name is not found, nothing is created and an error with font_candidates is returned. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| contents | string | yes | 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 | – | Exact font name as listed by list_fonts (the "name" field, e.g. "HelveticaNeue-Bold", "ArialMT"). Not a partial match: if not found, nothing is created and an error with font_candidates is returned. |
| font_size | number | – | Font size (pt) |
| height | number | – | Area text height |
| justification | string | – | Paragraph alignment for all paragraphs: left | center | right, or justified with the last line left/center/right (justify_left, justify_center, justify_right) or all lines forced (justify_all). Justi… |
| kind | string | – | Text frame type (point or area) |
| layer_name | string | – | Target layer name |
| leading | number | – | Line spacing (leading) in pt, applied to the whole frame. Omit for auto leading (auto leading can be large in Japanese-default environments, e.g. 175%; set this for tight multi-line Latin text). |
| name | string | – | Object name |
| tracking | number | – | Letter spacing (tracking) in 1/1000 em, applied to the whole frame. 0 = none, positive = looser, negative = tighter. Same units and range as the tracking field in Illustrator's Character panel. |
| width | number | – | Area text width |
| x | number | yes | X coordinate. Point text: anchor x (left/center/right edge per justification). Area text: left edge. |
| y | number | yes | Y coordinate. Point text: BASELINE of the first line, not the top of the glyphs. Area text: top edge. |
No output schema declared.
No examples provided.
delete_objects Delete Objects ~145
Delete one or more objects by UUID (get UUIDs from find_objects / get_layers / get_selection). Locked objects are skipped unless force_unlock is true. success is false if any UUID was not found or could not be deleted (see notFound / errors). The undo tool may revert it, but undo steps are Illustrator history steps, not tied to MCP calls. To delete a whole layer use manage_layers instead. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| force_unlock | boolean | – | Unlock locked objects before deleting them (default: false = skip locked objects with an error) |
| uuids | array | yes | UUIDs of objects to delete |
No output schema declared.
No examples provided.
duplicate_objects Duplicate Objects ~233
Duplicate one or more objects, optionally offsetting the copies. Copies (and their group/compound-path children) get new UUIDs; notes/memos are kept (objects whose note cannot be rewritten keep the source UUID and are listed in warnings). Missing UUIDs are listed in notFound and per-item failures in failed (success is then false, but copies that were made are still returned). Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | – | Top-level layer name to place duplicates in. If several layers share the name, the topmost one is used and a warning is returned |
| uuids | array | yes | UUIDs of objects to duplicate |
No output schema declared.
No examples provided.
export Export ~337
Export objects, groups, artboards, or selection. Use target "artboard:all" to batch-export every artboard in one call. For single PNG/JPG exports, the exported image is returned as base64 in the response — you can view it directly without reading the file from disk ("artboard:all" returns file paths only; images larger than ~3.75MB are not inlined). An explicit output_path that already exists is not overwritten unless overwrite is true.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | yes | Export format |
| output_path | string | – | Absolute output file path (SVG file names must be ASCII). The extension must match format (.svg/.png/.jpg); it is added if omitted. If omitted, auto-generates a non-conflicting name in the same direc… |
| overwrite | boolean | – | Replace existing files at output_path (including "artboard:all" per-artboard files). Default false: returns an error listing the existing files |
| raster_options | object | – | Raster export options |
| scale | number | – | Scale factor for PNG/JPG (dpi × scale must be <= 2400) |
| svg_options | object | – | SVG export options |
| target | string | yes | UUID, "artboard:<index>", "artboard:all" (batch-export every artboard; filenames get "_<n>-<artboardName>" suffixes), or "selection". UUID and "selection" export only those objects, cropped to their… |
No output schema declared.
No examples provided.
export_pdf Export PDF ~247
Export print-ready PDF. Japanese trim marks (marks_style "japanese" + trim_marks) are drawn temporarily on the document and removed after export; they are only supported for single-artboard documents (multi-artboard documents return an error). When a preset is given, trim mark settings you do not specify are kept from the preset. An explicit output_path that already exists is not overwritten unless overwrite is true. Note: Illustrator will be activated (brought to foreground) only when generating Japanese trim marks. The exported PDF should be verified by a human before final submission.
| Name | Type | Req | Description |
|---|---|---|---|
| options | object | – | PDF export options |
| output_path | string | – | Absolute output file path ending in .pdf (.pdf is added if omitted). If omitted, auto-generates a non-conflicting name in the same directory as the document (or ~/Desktop for unsaved documents) |
| overwrite | boolean | – | Replace an existing file at output_path. Default false: returns an error with existing_files and exports nothing |
| preset | string | – | PDF preset name (e.g. "[PDF/X-4:2008]"). Must exist in Illustrator's PDF presets, otherwise an error listing available presets is returned. |
No output schema declared.
No examples provided.
extract_design_tokens Extract Design Tokens ~124
Extract colors, typography, and spacing from the document as design tokens in CSS custom properties, JSON, or Tailwind format. Optionally writes the result to output_path (never overwrites an existing file unless overwrite: true).
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format |
| output_path | string | – | Absolute file path to save the output (e.g. "/path/to/tokens.json"). If omitted, returns text only. |
| overwrite | boolean | – | Replace output_path if it already exists. Default false: an existing file is left untouched and an error is returned. |
No output schema declared.
No examples provided.
find_objects Find Objects ~268
Search for objects by specified criteria
| Name | Type | Req | Description |
|---|---|---|---|
| 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 paths and compound paths (matched by their inner paths) 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 paths and compound paths (matched by their inner paths) 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 |
No output schema declared.
No examples provided.
get_artboards Get Artboards ~105
Get all artboard information
| Name | Type | Req | Description |
|---|---|---|---|
| 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) |
No output schema declared.
No examples provided.
get_colors Get Colors ~99
Get all color information used in the document. usedFillColors / usedStrokeColors list each distinct color once with a count of how many paths and text ranges use it (most used first).
| Name | Type | Req | Description |
|---|---|---|---|
| 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 |
No output schema declared.
No examples provided.
get_document_info Get Document Info ~85
Get document metadata
| Name | Type | Req | Description |
|---|---|---|---|
| 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… |
No output schema declared.
No examples provided.
get_document_structure Get Document Structure ~142
Get tree structure of layers, groups, and objects
| Name | Type | Req | Description |
|---|---|---|---|
| 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). Layers/groups cut off by the limit have childrenTruncated: true and childCount. |
No output schema declared.
No examples provided.
get_effects Get Effects ~112
Get effect and appearance information
| Name | Type | Req | Description |
|---|---|---|---|
| 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 |
No output schema declared.
No examples provided.
get_groups Get Groups ~163
Get structure of groups, clipping masks, and compound paths. Children of a clipping-mask group mark the mask path with clipping: true. When depth cuts the tree off, the item has childrenTruncated: true and childCount (children is empty only because of the depth limit).
| Name | Type | Req | Description |
|---|---|---|---|
| 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) |
No output schema declared.
No examples provided.
get_guidelines Get Guidelines ~85
Get guide information
| Name | Type | Req | Description |
|---|---|---|---|
| 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… |
No output schema declared.
No examples provided.
get_images Get Images ~164
Get embedded and linked image information: file path, broken-link status (linkBroken: file missing on disk), pixel size, and effective resolution (ppi at the placed size; rotation-safe).
| Name | Type | Req | Description |
|---|---|---|---|
| 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: resolutionH/resolutionV (effective ppi per axis; they differ when scaled non-uniformly) and, for embedded raster images, a colorSpaceMismatch flag. |
No output schema declared.
No examples provided.
get_layers Get Layers ~113
Get layer structure as a tree
| Name | Type | Req | Description |
|---|---|---|---|
| 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 |
No output schema declared.
No examples provided.
get_overprint_info Get Overprint Info ~70
Get overprint settings of paths (incl. compound paths), text (per character) and raster images, each with a heuristic label (K100 / rich black / spot / likely accidental) inferred from colors only. The result includes the scan scope; placed files, symbols and meshes are not inspected.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_path_items Get Path Items ~163
Get path and shape data, including paths inside groups and compound paths (clipping: true marks a clipping-mask path). Note: fill/stroke do not include per-attribute opacity; use the item-level opacity field for transparency.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 |
No output schema declared.
No examples provided.
get_selection Get Selection ~127
Get detailed information about the currently selected objects. While editing text (text cursor or selected characters), the containing text frame is returned with a textSelection field (selected contents, length, start; insertionPoint: true for a bare cursor).
| Name | Type | Req | Description |
|---|---|---|---|
| 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… |
No output schema declared.
No examples provided.
get_separation_info Get Separation Info ~72
Get color separation info: process and spot plates actually used by the artwork (paths, gradients, text, rasters) with usage counts, inks with no detected usage, global process colors, and Illustrator's document ink list. The result includes the scan scope; placed files, patterns and symbols are not inspected.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_symbols Get Symbols ~86
Get symbol definitions and instances
| Name | Type | Req | Description |
|---|---|---|---|
| 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… |
No output schema declared.
No examples provided.
get_text_frame_detail Get Text Frame Detail ~175
Get detailed text frame attributes including per-character runs (font, tracking, akiLeft/akiRight, tsume, proportionalMetrics), kerning pairs with manual kerning values (1/1000 em), paragraph attributes (leading, autoLeading, paragraph style), orientation (horizontal/vertical) and threaded-frame links (nextFrameUUID/previousFrameUUID). Returns cssHints for web/CSS reproduction.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | UUID of the target text frame |
No output schema declared.
No examples provided.
group_objects Group Objects ~153
Group multiple objects into a single group. The first UUID in the array becomes the bottommost item, the last becomes the topmost. If any UUID is not found, nothing is grouped and the missing UUIDs are returned in notFound. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | UUIDs of objects to group. Order matters: first=bottom, last=top in layer panel. |
No output schema declared.
No examples provided.
import_svg_as_editable Import SVG as Editable ~481
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. Colors are NOT converted: importing into a CMYK document keeps the SVG's RGB colors, and the result then includes a warning with the count (fix with replace_color). Note: Illustrator will be activated (brought to foreground) during execution. Font caveat: Illustrator does not fall back per glyph across a font-family list. If the FIRST family in the list is installed but lacks a glyph, that character is dropped silently and the import still reports success. Specify a single font-family per text element, and pick one that actually contains the glyphs you use (symbols such as U+2713 are the common failure case). An uninstalled family is substituted by Illustrator and is NOT affected by this.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | 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). Works in both coordinate systems. |
| 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. |
No output schema declared.
No examples provided.
list_fonts List Fonts ~54
List fonts available in Illustrator. Does not require an open document.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | string | – | Filter by family or name (case-insensitive partial match) |
| limit | integer | – | Max fonts to return (default 100) |
No output schema declared.
No examples provided.
list_graphic_styles List Graphic Styles ~19
List all graphic styles in the active document.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_text_frames List Text Frames ~292
List text frames with summary-level information (including orientation and threaded-frame links nextFrameUUID/previousFrameUUID). Supports reading-order sort, pagination, and a lightweight contents-only mode. layer_name includes text inside groups and sublayers of that layer.
| Name | Type | Req | Description |
|---|---|---|---|
| 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). On artboards where most frames are vertical text, columns are read ri… |
No output schema declared.
No examples provided.
list_text_styles List Text Styles ~20
List all character and paragraph styles in the active document.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
manage_artboards Manage Artboards ~160
Add, remove, resize, rename, fit, or rearrange artboards. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | 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 |
No output schema declared.
No examples provided.
manage_datasets Manage Variables & Datasets ~230
List variables/datasets, apply or create datasets, bind variables to objects, import/export variable XML, or generate artboards from CSV. import (XML) replaces ALL existing variables and datasets in the document. import_csv does not create variables or datasets: it copies the objects on artboard 0 (left unchanged as the template) onto one new artboard per CSV row, placed to the right of existing artboards, and sets the text of copied text frames whose name matches a CSV header. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | 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) |
No output schema declared.
No examples provided.
manage_layers Manage Layers ~137
Add, rename, show/hide, lock/unlock, reorder, or delete top-level layers by name. If several layers share a name, rename/show/hide/lock/unlock/reorder act on the topmost one with a warning, and delete is refused.
| Name | Type | Req | Description |
|---|---|---|---|
| above | string | – | For add: create above this layer name |
| action | string | yes | 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) |
No output schema declared.
No examples provided.
manage_linked_images Manage Linked Images ~102
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.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action to perform |
| new_path | string | – | New file path (required for relink) |
| uuid | string | yes | UUID of the placed (linked) image |
No output schema declared.
No examples provided.
manage_swatches Manage Swatches ~70
Add, update, or delete swatches in the active document. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action to perform |
| color | – | – | Color for add/update (required for add) |
| name | string | yes | Swatch name |
No output schema declared.
No examples provided.
modify_object Modify Object ~193
Modify properties of an existing object. fill/stroke on a group or compound path are applied to every path and text frame inside it (like Illustrator's UI; clipping paths and guides are skipped) and the result reports how many were changed (painted) and the colors they actually have (verified.descendantFills). success is false if any of them could not be painted. Note: Illustrator will be activated (brought to foreground) during execution.
| Name | Type | Req | Description |
|---|---|---|---|
| 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 | yes | Properties to modify |
| uuid | string | yes | UUID of the target object |
No output schema declared.
No examples provided.
How do I install the io.github.ie3jp/illustrator-mcp-server server?
io.github.ie3jp/illustrator-mcp-server runs locally as an npm package, launched with npx -y illustrator-mcp-server. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · illustrator-mcp-server
claude mcp add ie3jp-illustrator-mcp-server -- npx -y illustrator-mcp-server
What is the io.github.ie3jp/illustrator-mcp-server server?
io.github.ie3jp/illustrator-mcp-server is listed in the public MCP registry as io.github.ie3jp/illustrator-mcp-server. Adobe Illustrator MCP with 66 tools, more than the official Illustrator MCP. macOS | Windows. This page covers its npm package (illustrator-mcp-server).
Is the io.github.ie3jp/illustrator-mcp-server server safe to use?
io.github.ie3jp/illustrator-mcp-server scores 96 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.ie3jp/illustrator-mcp-server server expose?
io.github.ie3jp/illustrator-mcp-server exposes 66 tools: get_document_info, get_artboards, get_layers, get_selection, list_text_frames, and 61 more. Their descriptions and schemas cost roughly 10,898 tokens of context every time the server is loaded.
Is the io.github.ie3jp/illustrator-mcp-server server still maintained?
io.github.ie3jp/illustrator-mcp-server is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.ie3jp/illustrator-mcp-server server under?
io.github.ie3jp/illustrator-mcp-server declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.