Metadata-Version: 2.5
Name: dcc-mcp-aftereffects
Version: 0.7.1
Summary: MCP adapter for Adobe After Effects
Project-URL: Homepage, https://github.com/dcc-mcp/dcc-mcp-aftereffects
Project-URL: Repository, https://github.com/dcc-mcp/dcc-mcp-aftereffects
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.6.2
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: ruff>=0.8; extra == 'dev'
Requires-Dist: twine>=6; extra == 'dev'
Description-Content-Type: text/markdown

# dcc-mcp-aftereffects

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

<!-- 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-aftereffects** — Adobe After Effects adapter with typed project, layer, render
queue, 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

AI agents should use the shared gateway through `dcc-mcp-cli`; IDE users may
continue to use the MCP endpoint. Prefer typed skills and tools over raw scripts.

### Install or update the CLI

`dcc-mcp-cli` is the preferred control path for every shell-capable agent. If
it is missing, ask the user before installing the latest official release:

```bash
# Linux/macOS
curl -fsSL https://raw.githubusercontent.com/dcc-mcp/dcc-mcp-core/main/scripts/install-cli.sh | sh

# Windows PowerShell
powershell -ExecutionPolicy Bypass -c "irm https://raw.githubusercontent.com/dcc-mcp/dcc-mcp-core/main/scripts/install-cli.ps1 | iex"
```

Keep an official build current through the release manifest:

```bash
dcc-mcp-cli update check
dcc-mcp-cli update apply
```

`update apply` downloads and stages the latest CLI for the next launch. It
does not update a running `dcc-mcp-server`; update that server in its own
environment.

```bash
dcc-mcp-cli dcc-types
dcc-mcp-cli list
dcc-mcp-cli search --query "<task>" --dcc-type aftereffects
dcc-mcp-cli describe <tool-slug>
dcc-mcp-cli call <tool-slug> --json '{"key":"value"}'
```

`dcc-types` reports release-catalog support; `list` reports live sessions. If a
tool belongs to an inactive progressive skill, call `dcc-mcp-cli load-skill <skill-name> --dcc-type aftereffects` before retrying. For post-task improvement,
attach a stable session id with `--meta-json`, query `dcc-mcp-cli stats --range 24h --session-id <task-id>`, then pass the bounded evidence to the
`review_skill_improvement` prompt from `dcc-mcp-skills-creator`.


MCP adapter for Adobe After Effects, built on the shared `adobepy` broker, CEP bridge, and typed facade.

```bash
pip install dcc-mcp-aftereffects
```

Use the standard adapter-owned lifecycle; it stages the official adobepy CEP
bridge without putting `ADOBEPY_TOKEN` in process arguments:

```bash
dcc-mcp-aftereffects install --json --dry-run --dcc-path "<host>" --python "<python>"
dcc-mcp-aftereffects install --json --yes --dcc-path "<host>" --python "<python>"
dcc-mcp-aftereffects verify --json --dcc-path "<host>" --python "<python>"
```

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

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

The source directory must contain the bridge manifest and is selected by an
approved catalog or Internal descriptor. This path does not copy files or
require a Developer Tool, but it is only valid for a bridge that has already
been built and approved. The adapter-owned installer remains canonical for
adobepy provisioning, generated CEP bridges, receipts, upgrades, and
uninstall. Restart After Effects if it has already cached the extension, then
use `dcc-mcp-cli wait-ready --dcc-type aftereffects` to verify the live bridge.

See [install.md](install.md) for supported Windows/macOS paths, the Linux
boundary, adobepy CLI provisioning, receipt-driven upgrade/uninstall, stable
exit codes, and troubleshooting. Each adapter instance uses an OS-assigned
port and registers it for CLI discovery. Connect through the stable gateway at
`http://127.0.0.1:9765/mcp`; set `DCC_MCP_AFTEREFFECTS_PORT` only when a fixed
direct endpoint is required.

Set `ADOBEPY_TOKEN` to the same non-default token used when installing the bridge.

The adapter reports ready only after the target After Effects 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.

## Skill groups

- `aftereffects-project`: inspect/open/save projects, list and import project
  items, create compositions, and run the motion-intro workflow.
- `aftereffects-layers`: inspect compositions, layers, effects, masks, and text;
  create text/solid/footage layers; edit text, transforms, keyframes, and order.
- `aftereffects-render`: inspect and control the render queue, queue
  compositions, and configure render settings and output modules.
- `aftereffects-advanced`: structured access to the complete official object
  model. Raw ExtendScript is an explicit destructive fallback, not the primary
  API.

Load a group before first use when progressive loading is enabled:

```bash
dcc-mcp-cli load-skill aftereffects-layers --dcc-type aftereffects
dcc-mcp-cli search --query "create text layer" --dcc-type aftereffects
```
