1. Status and opening
silent_status, silent_list_documents, puis open_document or create_document: each returns documentId, revision and stateToken.
MCP SERVER · ADOBE INDESIGN · WINDOWS
Adobe InDesign for Claude Code and Codex.
One native Windows engine, NexusInDesign.exe (C#, self-contained), drives InDesign 2024 to 2026 through its COM automation only: UXP scripts run by DoScript, with no interaction at all. No panel, no Adobe UXP plugin, no Node.js, no network listener, no Computer Use. Every change is checked against the document’s revision, every open document is backed up first, and every exported file is verified.
Works with
open_document(…)run_layout_script(…)preflight_document(…)finalize_layout(…)01 / WHAT IT DOES
The nexus-indesign skill guides the agent; run_layout_script makes every coherent change in one tracked InDesign pass.
run_layout_scriptChecks revision and state token, backs up every open document, runs the UXP script, saves if asked, renders a verified PNG preview and returns the new revision, so calls chain without re-inspection.
open_document, create_documentOpen or create a document; each returns documentId, revision and stateToken.
preflight_document, finalize_layoutThe preflight, then a PDF only if the layout contract and Adobe’s preflight pass.
export_pdf, export_png, export_idmlThe exports, each verified structurally; also package_document, save_document and save_as.
analyze_layout, compare_layout_snapshotGeometry, resources, styles, a typographic audit and a stable layout fingerprint.
preview_layoutA preview, annotated on request (margins, column gutters, each item’s outline and #id, overset text in red), without touching the source document.
silent_restore_backupRestore a backup; the current state is backed up first.
silent_operation_statusWhat is known after a timeout or a crash, before any new command.
indesign_doctor, search_official_domLocal checks without starting InDesign; an offline index of Adobe’s official DOM reference, pinned by SHA-256.
01 / HOW IT WORKS
silent_status, silent_list_documents, puis open_document or create_document: each returns documentId, revision and stateToken.
run_layout_script for every coherent change; a failing script is a known outcome, with its backup.
preflight_document, puis finalize_layout or export_pdf, export_png, export_idml, package_document.
silent_close_document for the documents the task opened.
One-step undo: a single undo() removes the changes of a script’s synchronous part (everything before its first await), a failed script’s partial changes included.
02 / INSTALLATION
Paste this message into Claude Code or Codex: it follows the NexusSystem guide and installs NexusInDesign.
Install NexusInDesign by following https://raw.githubusercontent.com/pironjulien/NexusSystem/main/INSTALL-AI.mdFree on the Microsoft Store, no account: it runs NexusInDesign’s get.ps1 and adds the nexus-indesign plugin to Claude Code and Codex from the Nexus catalog.
Quit them completely so they load the new MCP server and its skill.
In Claude Code or Codex, ask for example: “Open this InDesign document and run its preflight.” The engine starts InDesign when needed.
In PowerShell, without administrator rights: download get.ps1 and the checksum list, check the SHA-256 hash, then run the file. It installs %USERPROFILE%\.nexus\nexus-indesign\NexusInDesign.exe, the path both plugins start.
$r = 'https://github.com/pironjulien/NexusInDesign/releases/latest/download'
Invoke-WebRequest "$r/get.ps1" -OutFile get.ps1
Invoke-WebRequest "$r/SHA256SUMS.txt" -OutFile SHA256SUMS.txt
$h = (Select-String SHA256SUMS.txt -Pattern '^([0-9a-f]{64})\s+get\.ps1$').Matches[0].Groups[1].Value
if ((Get-FileHash get.ps1 -Algorithm SHA256).Hash -ne $h) { throw 'get.ps1 does not match SHA256SUMS.txt' }
powershell -NoProfile -ExecutionPolicy Bypass -File .\get.ps1Every release file is attested (gh attestation verify get.ps1 --repo pironjulien/NexusInDesign). Run get.ps1 again to update; -Remove removes the program and keeps backups and the audit journal. Details: repository README.
Paste this message into your AI: it follows the NexusSystem guide, suggests the Nexus products that fit your PC, installs each one with its official installer, then checks the result. Or the NexusSystem, free on the Microsoft Store.
Install Nexus for me by following https://raw.githubusercontent.com/pironjulien/NexusSystem/main/INSTALL-AI.mdCode, documentation and installer: NexusInDesign GitHub repository.
Independent project, not affiliated with Adobe, Anthropic or OpenAI.
03 / NEXUS ECOSYSTEM
NexusInDesign installs on its own, or with the other Nexus bricks, each one à la carte.
WithNexusSystem runs its get.ps1 and adds the nexus-indesign plugin to Claude Code and Codex from the Nexus catalog.
Withoutget.ps1, from the release, installs the engine; the plugin is added from the Nexus catalog.
Discover NexusSystemEach one installs on its own, à la carte, with its own installer.
04 / SECURITY
The safeguards live in the engine, not only in the instructions given to the agents.
Claude Code or Codex starts NexusInDesign.exe --mcp and talks to it over stdio. The engine opens no port, exposes no HTTP API and sends nothing over the network.
Start-up is refused unless a parent process is an allowed agent: claude.exe signed by Anthropic or codex.exe signed by OpenAI, with a valid Authenticode signature, in an allowed folder.
Every path a structured tool reads or writes is resolved through junctions and links, then must stay inside the allowed roots (by default the user profile), outside the denied roots: private storage, ~\.nexus, .ssh, .gnupg, AppData. An existing file is replaced only with overwrite=true, after a private copy.
Every open document is backed up before any change, with its INDD signature and SHA-256 recorded; a restore checks that provenance and backs up the current state first.
Every change checks the document’s revision and stateToken before and after; any difference refuses or flags the outcome. After a timeout or a crash, every InDesign command is refused until reconciliation.
Produced PDF, PNG, IDML and INDD files are verified structurally, never trusted from InDesign’s report alone.
Backups, the audit journal and the runtime stay in %USERPROFILE%\.nexus\nexus-indesign\private, readable by the current user only. The journal never records a document’s text, a path, code or a secret.
05 / GOOD TO KNOW
run_layout_script and execute_uxp_silent have the full rights of Adobe scripts, files and network included: it is not a sandbox, and agents run there only code decided for the task.
It registers its COM server. The engine starts it when needed and closes it again if it started it hidden and nothing stays open.
By default, documents are read from and written to the user profile; to change the folders, use %USERPROFILE%\.nexus\nexus-indesign\settings.json (readRoots, writeRoots, deniedRoots).
06 / LINKS
The engine, the plugins, the skill, the tests and the documentation are on GitHub, under the MIT licence.