InDesign MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@InDesign MCP Server Create a new A4 document with 4 pages and facing pages"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
InDesign MCP Server β Cross-Platform (macOS & Windows)
A comprehensive Model Context Protocol (MCP) server for Adobe InDesign automation with 35+ professional tools. This server enables AI assistants like Claude to directly control Adobe InDesign, automating complex publishing workflows, document creation, and professional layout tasks.
Cross-platform fork of lucdesign/indesign-mcp-server (macOS-only, AppleScript). This fork adds a native Windows transport via COM/VBScript (
CreateObject("InDesign.Application")+DoScript) and picks the right transport automatically fromprocess.platform. All 36 tools are unchanged β the ExtendScript layer is identical on both platforms. See WINDOWS.md for details of the port.
π Features
π Document Management
Create, open, save, and close documents with advanced options
Support for all standard formats (A4, A5, Letter, Legal, Custom)
Facing pages, bleeds, slugs, and margin configuration
Multi-page document handling
βοΈ Text & Typography
Advanced text frame creation and editing
Character and paragraph style management
Find/replace with GREP support
Professional typography controls (leading, tracking, optical margin alignment)
π¨ Graphics & Layout
Image placement with multiple fit options
Shape creation (rectangles, ellipses with styling)
Layer management and organization
Color swatch creation and management (CMYK, RGB, Spot colors)
π Tables & Data
Table creation and data population
Support for headers and footers
CSV data integration capabilities
π€ Export & Production
Professional PDF export with presets
Multi-format image export (PNG, JPEG, TIFF)
EPUB export for digital publishing
Package for print production
Preflight checking
π§ Automation & Scripting
Data merge operations
Custom ExtendScript execution
Batch processing capabilities
Professional publishing workflows
Related MCP server: InDesign MCP Server
π Prerequisites
Adobe InDesign (tested on 2024β2026 releases)
macOS (AppleScript transport) or Windows (COM/VBScript transport β this fork)
Node.js 18+
MCP-compatible client (Claude Desktop, Claude Code, Cursorβ¦)
Optional environment variables
INDESIGN_APP_NAME(macOS) β application name for AppleScript, defaultAdobe InDesign 2025INDESIGN_PROGID(Windows) β COM ProgID, defaultInDesign.Application(version-independent; falls back throughInDesign.Application.2026/2025/2024)
π οΈ Installation
1. Clone the Repository
git clone https://github.com/Tlechanteur/indesign-mcp-server-windows.git
cd indesign-mcp-server-windows2. Install Dependencies
npm install3. Configure MCP Client
Add the server to your MCP client configuration (e.g., Claude Desktop):
claude_desktop_config.json:
{
"mcpServers": {
"indesign": {
"command": "node",
"args": ["/path/to/indesign-mcp-server/index.js"],
"env": {}
}
}
}4. Start Adobe InDesign
Ensure Adobe InDesign is running before using the MCP server.
π― Quick Start
Create a Professional Document
// Create an A4 document with facing pages
create_document({
preset: "A4",
orientation: "Portrait",
pages: 4,
facingPages: true,
marginTop: 20,
marginBottom: 20,
marginLeft: 20,
marginRight: 20
})Add Formatted Text
// Create a text frame with professional typography
create_text_frame({
content: "Professional Publishing with InDesign MCP",
x: 20,
y: 20,
width: 170,
height: 50,
fontSize: 18,
fontFamily: "Helvetica Neue",
fontStyle: "Bold",
alignment: "LEFT_ALIGN"
})Create and Apply Styles
// Create a character style
create_character_style({
name: "Emphasis",
fontFamily: "Helvetica Neue",
fontStyle: "Italic",
textColor: "Red"
})
// Apply to specific text
find_replace_text({
findText: "important",
replaceText: "important",
applyCharacterStyle: "Emphasis"
})Export Professional PDF
export_pdf({
filePath: "/path/to/output.pdf",
preset: "HighQualityPrint",
includeBleed: true,
colorProfile: "ISO Coated v2"
})π οΈ Available Tools
Document Management (5 tools)
get_document_info- Document information and statisticscreate_document- Advanced document creationopen_document- Open existing documentssave_document- Save with optional new pathclose_document- Close with save options
Page Management (4 tools)
add_page- Add pages with position controldelete_page- Remove pages safelyduplicate_page- Copy pages with contentnavigate_to_page- Page navigation
Text Management (3 tools)
create_text_frame- Advanced text frame creationedit_text_frame- Modify existing framesfind_replace_text- Search and replace with GREP
Graphics Management (3 tools)
place_image- Image placement with fit optionscreate_rectangle- Rectangle creation with stylingcreate_ellipse- Ellipse creation with styling
Style Management (4 tools)
create_paragraph_style- Paragraph style creationcreate_character_style- Character style creationapply_paragraph_style- Apply styles to textlist_styles- List all available styles
Color Management (3 tools)
create_color_swatch- Create CMYK/RGB/Spot colorslist_color_swatches- List available colorsapply_color- Apply colors to objects
Table Management (2 tools)
create_table- Table creation with headers/footerspopulate_table- Fill tables with data
Layer Management (3 tools)
create_layer- Create new layersset_active_layer- Switch active layerlist_layers- List all layers
Export & Production (4 tools)
export_pdf- Professional PDF exportexport_images- Multi-format image exportexport_epub- Digital publishing exportpackage_document- Print production packaging
Automation & Utilities (4 tools)
execute_indesign_code- Custom ExtendScript executionpreflight_document- Quality checkingview_document- Document visualizationdata_merge- Automated data integration
π‘ Use Cases
Automated Publishing
Generate newsletters, brochures, and reports from data
Batch process multiple documents
Consistent styling across document series
Data-Driven Documents
Mail merge for personalized materials
Catalog generation from databases
Financial reports with dynamic content
Professional Workflows
Template-based document creation
Brand compliance automation
Print production preparation
Educational Materials
Automated textbook layout
Exercise sheet generation
Multi-language document variants
π§ Advanced Configuration
Custom ExtendScript Integration
execute_indesign_code({
code: `
// Custom InDesign scripting
var doc = app.activeDocument;
// Your custom automation logic here
`
})Batch Processing Example
// Process multiple files
const files = ["doc1.indd", "doc2.indd", "doc3.indd"];
for (const file of files) {
await open_document({ filePath: file });
await export_pdf({
filePath: file.replace('.indd', '.pdf'),
preset: 'HighQualityPrint'
});
await close_document({ save: false });
}π Troubleshooting
Common Issues
"Adobe InDesign not found"
Ensure InDesign is installed and running
macOS: check AppleScript permissions in System Preferences
Windows: the COM bridge starts InDesign if needed, but launching it first is faster and more reliable. If you run several InDesign versions side by side, set
INDESIGN_PROGID(e.g.InDesign.Application.2026)
"Script execution failed"
Verify Adobe InDesign is the active application
Check for document-specific errors in console
"Tool not found"
Restart MCP client after configuration changes
Verify server is running with
node index.js
Debug Mode
node --inspect index.jsπ€ Contributing
Fork the repository
Create a feature branch (
git checkout -b feature/AmazingFeature)Commit your changes (
git commit -m 'Add some AmazingFeature')Push to the branch (
git push origin feature/AmazingFeature)Open a Pull Request
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Acknowledgments
Anthropic for the Model Context Protocol
Adobe for InDesign ExtendScript API
MCP Community for tools and inspiration
π Support
Issues: GitHub Issues
Original macOS project: lucdesign/indesign-mcp-server
Made with β€οΈ for the publishing community
Transform your InDesign workflows with AI automation
Available Tools
36 toolsadd_pageB
Add a new page to the document
Inputs: position, pageIndex, masterPage.
apply_colorC
Apply color to an object
Inputs: swatchName (required), objectIndex (required), property, pageIndex.
apply_paragraph_styleB
Apply a paragraph style to text
Inputs: styleName (required), frameIndex (required), endIndex, pageIndex, +1 more.
close_documentB
Close the current document
Inputs: save.
create_character_styleC
Create a new character style
Inputs: name (required), fontSize, tracking, baseStyle, +3 more.
create_color_swatchB
Create a new color swatch
Inputs: name (required), colorValues (required), spotColor, colorModel.
create_documentB
Create a new InDesign document with advanced options
Inputs: slug, bleed, pages, width, +8 more.
create_ellipseC
Create an ellipse shape
Inputs: x (required), y (required), width (required), height (required), +4 more.
create_layerC
Create a new layer
Inputs: name (required), color, locked, visible.
create_paragraph_styleC
Create a new paragraph style
Inputs: name (required), leading, fontSize, alignment, +5 more.
create_rectangleC
Create a rectangle shape
Inputs: x (required), y (required), width (required), height (required), +5 more.
create_tableC
Create a table
Inputs: x (required), y (required), rows (required), width (required), +5 more.
create_text_frameB
Create a text frame with advanced formatting options
Inputs: content (required), x, y, width, +9 more.
data_mergeD
Perform data merge operation
Inputs: outputFolder (required), dataSourcePath (required), fileFormat, recordRange.
delete_pageB
Delete a page from the document
Inputs: pageIndex (required).
duplicate_pageC
Duplicate a page
Inputs: pageIndex (required), position.
edit_text_frameB
Edit properties of an existing text frame
Inputs: frameIndex (required), content, fontSize, alignment, +3 more.
execute_indesign_codeC
Execute custom ExtendScript code in InDesign
Inputs: code (required).
export_epubC
Export document as EPUB
Inputs: filePath (required), version, imageFormat, includeImages.
export_imagesB
Export pages as images
Inputs: folderPath (required), format, pageRange, resolution, +1 more.
export_pdfC
Export document as PDF with advanced options
Inputs: filePath (required), preset, pageRange, includeSlug, +3 more.
find_replace_textC
Find and replace text in the document
Inputs: findText (required), replaceText (required), scope, useGrep, +2 more.
get_document_infoB
Get detailed information about the current InDesign document
Inputs: no named parameters.
list_color_swatchesA
List all color swatches in the document
Inputs: no named parameters.
list_layersA
List all layers in the document
Inputs: no named parameters.
list_stylesC
List all available styles in the document
Inputs: styleType.
open_documentB
Open an existing InDesign document
Inputs: filePath (required).
package_documentB
Package document for print production
Inputs: folderPath (required), createReport, includeFonts, includeLinkedFiles.
place_imageC
Place an image with advanced options
Inputs: imagePath (required), x, y, width, +4 more.
populate_tableC
Populate table with data
Inputs: data (required), tableIndex (required), pageIndex, includeHeaders.
preflight_documentC
Run preflight check on the document
Inputs: scope, profile.
save_documentB
Save the current document
Inputs: filePath.
set_active_layerC
Set the active layer
Inputs: layerName (required).
view_documentB
Get visual representation and detailed info about the current document
Inputs: no named parameters.
zoom_to_pageC
Zoom and fit page in view
Inputs: fitOption, pageIndex.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 36 tools
Most tools have distinct purposes, but 'get_document_info' and 'view_document' overlap significantly as both provide document information, causing potential confusion.
Tools predominantly follow a verb_noun snake_case pattern, though 'data_merge' deviates (noun_verb) and 'find_replace_text' uses compound verbs, introducing minor inconsistency.
With 36 tools covering a wide range of InDesign operations, the count is well-suited to the complexity of the domain without being excessive or insufficient.
The tool set covers most core workflows (document, pages, objects, styles, export), but lacks dedicated object editing tools beyond text frames; however, 'execute_indesign_code' can bridge gaps.
Maintenance
Related MCP Connectors
- DNS-DATA RemoteDeprecatedcom.dns-data
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Connect AI assistants to your approved computer for files, commands, browser and desktop tasks.
Convert, create and edit Word, PowerPoint, Excel and PDF documents from any AI agent.
Give your AI agents a design superpower. Generate, edit, and publish publication-grade decks, reports, landing pages, resumes, and marketing visuals directly within your agent workflow. Delivering frontier-level design quality at 3Γ the speed and 53Γ lower cost -from conversational prompt to live link or vector PDF in minutes.
Related MCP Servers
- AlicenseCqualityCmaintenanceEnables AI assistants to automate Adobe InDesign publishing workflows, including document creation, text formatting, image placement, PDF export, and more via 35+ professional tools.3660 npm61MIT
- AlicenseCqualityBmaintenanceTransforms Adobe InDesign into an AI-powered design automation platform with 135+ professional tools for seamless programmatic control over layout and design capabilities.210026 npm31MIT
- AlicenseBqualityBmaintenanceEnables 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.1995 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables Claude to create and edit Adobe InDesign documents, including pages, text frames, styles, images, and previews.25 npmMIT