Skip to main content
Glama
dcc-mcp

dcc-mcp-illustrator

by dcc-mcp
README.md
# dcc-mcp-illustrator

<p align="center">
  <img src="docs/assets/dcc-mcp-illustrator.svg" alt="DCC-MCP · ILLUSTRATOR" width="600">
</p>

MCP adapter for Adobe Illustrator, built on the shared `adobepy` broker, CEP
bridge, typed facade, and complete structured official DOM.

![Illustrator workflow from typed tool discovery through structured vector creation to verified export](docs/images/illustrator-showcase.webp)

<sub>Workflow illustration generated with OpenAI image generation; no third-party source assets.</sub>

Use the canonical, receipt-backed [installation guide](install.md):

```bash
python -m pip install --upgrade dcc-mcp-illustrator
dcc-mcp-illustrator install --json --dry-run --dcc-path "$ILLUSTRATOR_EXE" --python "$PYTHON_EXE"
dcc-mcp-illustrator install --json --yes --dcc-path "$ILLUSTRATOR_EXE" --python "$PYTHON_EXE"
```

For an Internal deployment with an approved prebuilt CEP bridge, the shared
Core CLI can link the bridge directly into Illustrator's CEP extension root:

```powershell
dcc-mcp-cli install --dcc-type illustrator `
  --plugin-source F:\studio\artifacts\illustrator-cep-bridge `
  --adobe-debug-root "$env:APPDATA\Adobe\CEP\extensions" `
  --execute
```

The bridge root must contain its manifest and be selected by an approved
catalog or Internal descriptor. This path creates an idempotent directory link
without copying files or using a Developer Tool. The adapter-owned lifecycle
remains canonical for generated bridges, receipts, upgrades, and uninstall.
Restart Illustrator if it has cached the extension, then verify with
`dcc-mcp-cli wait-ready --dcc-type illustrator` and the adapter status command.

Set `ADOBEPY_TOKEN` in the environment shared by the broker, installer, and
adapter, and set the two path variables as shown in the platform-specific guide.
The lifecycle never accepts the token in process arguments. It reports
ready only after the installed CEP bridge connects and a typed Illustrator RPC
succeeds with exact process, profile, and CEP-module identity. The currently
published adobepy runtime does not yet expose that complete attestation; the
adapter therefore remains fail-closed rather than claiming live readiness.
The adapter uses an OS-assigned port and registers with DCC-MCP discovery;
`DCC_MCP_ILLUSTRATOR_PORT` is only needed for a fixed direct endpoint.

The adapter reports ready only after the target Illustrator bridge advertises
the complete typed/official-DOM contract and a real host version RPC succeeds.
A broker process is stopped only when it was started by this adapter.

<!-- dcc-mcp-coverage-pointer:start -->
<!-- Generated from dcc-mcp-catalog.yml by scripts/generate_adapter_pointer.py in dcc-mcp/dcc-mcp-core. Do not edit by hand. -->
## Part of the DCC-MCP host matrix

**dcc-mcp-illustrator** — Adobe Illustrator adapter with typed document, artwork,
export, and official DOM workflows.

It is one of **38 host adapters** in the DCC-MCP catalog. Every adapter speaks the same
MCP protocol and builds on the same core runtime contract; each one exposes the tools
its own host needs on top of that.

- [All host adapters and install metadata](https://dcc-mcp.github.io/ecosystem)
- [Host matrix on the core README](https://github.com/dcc-mcp/dcc-mcp-core#readme)
- [Showcase](https://dcc-mcp.github.io/showcase)

This block is generated from the catalog entry in
[`dcc-mcp-catalog.yml`](https://github.com/dcc-mcp/dcc-mcp-core/blob/main/dcc-mcp-catalog.yml).
Re-run the generator after changing the catalog.
<!-- dcc-mcp-coverage-pointer:end -->

## Agent workflow

Use the typed DCC-MCP CLI path for discovery and calls:

```bash
dcc-mcp-cli dcc-types
dcc-mcp-cli list
dcc-mcp-cli load-skill illustrator-document --dcc-type illustrator
dcc-mcp-cli search --query "inspect selected paths" --dcc-type illustrator
dcc-mcp-cli call <tool-slug> --dcc-type illustrator --json '{"key":"value"}'
```

## Skill groups

- `illustrator-document`: create RGB/CMYK documents; inspect documents,
  artboards, layers, selections, vector/placed/raster items, text frames,
  stories, and swatches.
- `illustrator-artwork`: create named RGB rectangles and point text; inspect
  named items, edit text, and update path points, translation, scale, and
  rotation.
- `illustrator-export`: save AI/PDF/EPS documents and export PNG/JPEG/SVG or
  other Illustrator-supported formats.
- `illustrator-advanced`: structured access to the complete official object
  model. Raw ExtendScript is an explicit destructive fallback, not the primary
  API.

Structured DOM references are opaque and session-scoped. Never persist or reuse
them after a bridge restart or `release` operation.

## Real-host acceptance

The production validation path starts from an empty 640×360 RGB document,
creates named vector and text objects through typed tools, verifies the active
document and item counts, saves the native AI document, and exports a rendered
PNG. Readiness requires all six process, DCC, catalog, dispatcher, host bridge,
and main-thread executor checks before mutations run.