mcp-indesign

mcp-indesign

Enables AI assistants to control Adobe InDesign on Windows via the Model Context Protocol, allowing document inspection, text and style editing, and exports to formats like PDF, images, and EPUB.

Category
Visit Server

README

<div align="center">

InDesign MCP

Typing SVG

npm version npm downloads Windows License

English | Português | Español

Control Adobe InDesign directly from Codex, Claude, OpenCode, and other MCP clients.

Installation · Tools · Security · Development

</div>


InDesign MCP is a Model Context Protocol server that automates Adobe InDesign on Windows through COM and ExtendScript. It enables AI assistants to inspect documents, edit content, and perform exports using structured tools.

✨ Highlights

  • 19 tools ready for editing, inspection, and export.
  • npm installation, with no InDesign plugin or startup script required.
  • Native integration with Codex, Claude Desktop, Claude Code, and OpenCode.
  • Local execution over stdio; your documents are not sent through MCP.
  • Secure by default, with arbitrary JSX execution disabled.

📋 Requirements

  • Windows 10 or 11
  • Adobe InDesign 2024 or later
  • Node.js 18 or later
  • PowerShell 5.1 or later

InDesign must be open while the server is in use. No startup script or firewall configuration is required.

📦 npm Installation

You do not need to clone the repository or install the package globally. Configure your MCP client to run:

npx -y mcp-indesign

Codex

Add the following to ~/.codex/config.toml:

[mcp_servers.indesign]
command = "npx"
args = ["-y", "mcp-indesign"]
startup_timeout_sec = 30

[mcp_servers.indesign.env]
INDESIGN_MCP_LANGUAGE = "en"

Claude Desktop or Claude Code

{
  "mcpServers": {
    "indesign": {
      "command": "npx",
      "args": ["-y", "mcp-indesign"],
      "env": { "INDESIGN_MCP_LANGUAGE": "en" }
    }
  }
}

OpenCode

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "indesign": {
      "type": "local",
      "command": ["npx", "-y", "mcp-indesign"],
      "environment": { "INDESIGN_MCP_LANGUAGE": "en" },
      "enabled": true
    }
  }
}

Restart the client, open InDesign, and run check_connection.

🧰 Tools

Tool Function
check_connection Checks communication with InDesign
list_documents Lists open documents
get_document_info Returns document pages and properties
get_page_info Returns information about a page
get_text Reads text from the selection, page, document, or frame
insert_text Inserts text into a frame
set_frame_text Replaces, appends, or prepends text
replace_text Finds and replaces text
list_frames Lists text frames
create_text_frame Creates a text frame
list_styles Lists document styles
apply_style Applies styles to the selection or a frame
list_colors Lists color swatches
create_color_swatch Creates an RGB, CMYK, LAB, or GRAY swatch
export_pdf Exports a PDF
export_image Exports a JPG, PNG, or TIFF image
quick_export Quickly exports to a selected format
batch_export Exports multiple documents and formats
run_jsx Runs ExtendScript when explicitly enabled

🔐 Security

The runtime defaults to English. Set the interface language in your MCP environment when needed:

INDESIGN_MCP_LANGUAGE=en     # English
INDESIGN_MCP_LANGUAGE=pt-BR  # Portuguese (pt and pt-PT are also accepted)
INDESIGN_MCP_LANGUAGE=es     # Spanish

run_jsx allows arbitrary ExtendScript execution and is disabled by default. Enable it only in trusted environments:

INDESIGN_MCP_ENABLE_RUN_JSX=1

To use an external installation of BatchExportProfessional.jsx:

INDESIGN_MCP_BATCH_SCRIPT=C:\path\BatchExportProfessional.jsx

🛠️ Development

git clone https://github.com/SanNw/Indesign-MCP.git
cd Indesign-MCP
npm install
npm test

The test starts the server, validates all 19 tools, and confirms that run_jsx remains blocked by default.

🩺 Troubleshooting

  • Run check_connection before using the other tools.
  • Confirm that InDesign is open in the same Windows session.
  • Restart the MCP client after changing its configuration.
  • Export presets vary by InDesign version and language.

⚠️ Limitations

  • The 0.1.x series supports Windows only.
  • Operations may modify the open document but do not save it automatically.
  • Compatibility has been directly validated with InDesign 2025; other versions should be tested by the community.

📄 License

MIT

<div align="center">

Built to bring artificial intelligence and editorial design closer together.

Footer

</div>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured