Metadata-Version: 2.5
Name: dcc-mcp-illustrator
Version: 0.3.1
Summary: MCP adapter for Adobe Illustrator
Project-URL: Homepage, https://github.com/dcc-mcp/dcc-mcp-illustrator
Project-URL: Repository, https://github.com/dcc-mcp/dcc-mcp-illustrator
Author-email: loonghao <hal.long@outlook.com>
License: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Requires-Dist: adobepy==0.8.0
Requires-Dist: dcc-mcp-core<1.0.0,>=0.20.14
Requires-Dist: packaging>=24
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: jsonschema>=4.23; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: pyyaml>=6; extra == 'dev'
Requires-Dist: ruff>=0.8; extra == 'dev'
Requires-Dist: twine>=6; extra == 'dev'
Description-Content-Type: text/markdown

# 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"
```

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.

## 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.
