Microsoft & Azure intelligence →
Association is based on retained identity fields; it does not by itself prove first-party publication.
Enables AI assistants to control Adobe InDesign for automated publishing workflows, document creation, and layout tasks across macOS and Windows
Detailed security scan evidence is not public for this MCP yet. Public identity, registry metadata, and independently observed protocol inventory remain available.
Installation and connection instructions are shown only when supported by retained package, repository, or endpoint evidence.
No verified installation or connection method is available in the retained evidence yet.
| Canonical slug | indesign-mcp-server-20f23af2 | Deployment | Local Only |
|---|---|---|---|
| Canonical package | — | Repository | Tlechanteur/indesign-mcp-server-windows |
| First published | — | Latest release | — |
| Last security verification | — | Classification confidence | 35% |
| Publication | Draft | Official distribution | Not verified |
| Channel | Identifier | Current version | Versions | Source |
|---|---|---|---|---|
| source_git | tlechanteur/indesign-mcp-server-windows | 3162eebf032a95aa8711accc51e49614c8d16b4c | 1 | Repository |
| Package | Version | Published / observed | Inventory | Security scan |
|---|---|---|---|---|
| source_gittlechanteur/indesign-mcp-server-windows | 3162eebf032a95aa8711accc51e49614c8d16b4cCurrent | Aug 25, 2026 | 36 toolsSucceeded · 0 resources · 0 prompts | Evidence restricted |
Independently scan the exact version your agents use, receive alerts when its risk changes, and investigate every finding with retained version evidence.
No public current-version evidence is available yet.
| Tool | Category | Annotations | Risk |
|---|---|---|---|
add_pageAdd a new page to the documentInput schema{
"type": "object",
"properties": {
"position": {
"type": "string",
"enum": [
"before",
"after",
"end"
],
"default": "end"
},
"pageIndex": {
"type": "number",
"description": "Reference page index (for before/after)"
},
"masterPage": {
"type": "string",
"description": "Master page to apply"
}
}
} | — | — | |
apply_colorApply color to an objectInput schema{
"type": "object",
"properties": {
"objectIndex": {
"type": "number",
"description": "Object index on page"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"swatchName": {
"type": "string",
"description": "Color swatch name"
},
"property": {
"type": "string",
"enum": [
"fill",
"stroke"
],
"default": "fill"
}
},
"required": [
"objectIndex",
"swatchName"
]
} | — | — | |
apply_paragraph_styleApply a paragraph style to textInput schema{
"type": "object",
"properties": {
"styleName": {
"type": "string",
"description": "Paragraph style name"
},
"frameIndex": {
"type": "number",
"description": "Text frame index"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"startIndex": {
"type": "number",
"description": "Start character index (optional)"
},
"endIndex": {
"type": "number",
"description": "End character index (optional)"
}
},
"required": [
"styleName",
"frameIndex"
]
} | — | — | |
close_documentClose the current documentInput schema{
"type": "object",
"properties": {
"save": {
"type": "boolean",
"description": "Save before closing",
"default": false
}
}
} | — | — | |
create_character_styleCreate a new character styleInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Style name"
},
"fontFamily": {
"type": "string",
"description": "Font family"
},
"fontStyle": {
"type": "string",
"description": "Font style (Regular, Bold, Italic)"
},
"fontSize": {
"type": "number",
"description": "Font size in points"
},
"textColor": {
"type": "string",
"description": "Text color"
},
"tracking": {
"type": "number",
"description": "Character tracking"
},
"baseStyle": {
"type": "string",
"description": "Base style to inherit from"
}
},
"required": [
"name"
]
} | — | — | |
create_color_swatchCreate a new color swatchInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Swatch name"
},
"colorModel": {
"type": "string",
"enum": [
"CMYK",
"RGB",
"LAB"
],
"default": "CMYK"
},
"colorValues": {
"type": "array",
"description": "Color values array [C,M,Y,K] or [R,G,B]",
"items": {
"type": "number"
}
},
"spotColor": {
"type": "boolean",
"description": "Create as spot color",
"default": false
}
},
"required": [
"name",
"colorValues"
]
} | — | — | |
create_documentCreate a new InDesign document with advanced optionsInput schema{
"type": "object",
"properties": {
"preset": {
"type": "string",
"description": "Document preset (A4, A5, Letter, Custom, etc.)",
"default": "A4"
},
"width": {
"type": "number",
"description": "Document width in mm (for custom preset)"
},
"height": {
"type": "number",
"description": "Document height in mm (for custom preset)"
},
"orientation": {
"type": "string",
"enum": [
"Portrait",
"Landscape"
],
"default": "Portrait"
},
"pages": {
"type": "number",
"description": "Number of pages",
"default": 1
},
"facingPages": {
"type": "boolean",
"description": "Enable facing pages",
"default": false
},
"bleed": {
"type": "number",
"description": "Bleed in mm",
"default": 0
},
"slug": {
"type": "number",
"description": "Slug area in mm",
"default": 0
},
"marginTop": {
"type": "number",
"description": "Top margin in mm",
"default": 20
},
"marginBottom": {
"type": "number",
"description": "Bottom margin in mm",
"default": 20
},
"marginLeft": {
"type": "number",
"description": "Left margin in mm",
"default": 20
},
"marginRight": {
"type": "number",
"description": "Right margin in mm",
"default": 20
}
}
} | — | — | |
create_ellipseCreate an ellipse shapeInput schema{
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "X position in mm"
},
"y": {
"type": "number",
"description": "Y position in mm"
},
"width": {
"type": "number",
"description": "Width in mm"
},
"height": {
"type": "number",
"description": "Height in mm"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"fillColor": {
"type": "string",
"description": "Fill color"
},
"strokeColor": {
"type": "string",
"description": "Stroke color"
},
"strokeWidth": {
"type": "number",
"description": "Stroke width in points",
"default": 1
}
},
"required": [
"x",
"y",
"width",
"height"
]
} | — | — | |
create_layerCreate a new layerInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Layer name"
},
"color": {
"type": "string",
"description": "Layer color for guides"
},
"visible": {
"type": "boolean",
"description": "Layer visibility",
"default": true
},
"locked": {
"type": "boolean",
"description": "Layer locked state",
"default": false
}
},
"required": [
"name"
]
} | — | — | |
create_paragraph_styleCreate a new paragraph styleInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Style name"
},
"fontFamily": {
"type": "string",
"description": "Font family"
},
"fontSize": {
"type": "number",
"description": "Font size in points"
},
"leading": {
"type": "number",
"description": "Leading (line spacing) in points"
},
"spaceBefore": {
"type": "number",
"description": "Space before paragraph in mm"
},
"spaceAfter": {
"type": "number",
"description": "Space after paragraph in mm"
},
"alignment": {
"type": "string",
"enum": [
"LEFT_ALIGN",
"CENTER_ALIGN",
"RIGHT_ALIGN",
"JUSTIFY"
]
},
"textColor": {
"type": "string",
"description": "Text color"
},
"baseStyle": {
"type": "string",
"description": "Base style to inherit from"
}
},
"required": [
"name"
]
} | — | — | |
create_rectangleCreate a rectangle shapeInput schema{
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "X position in mm"
},
"y": {
"type": "number",
"description": "Y position in mm"
},
"width": {
"type": "number",
"description": "Width in mm"
},
"height": {
"type": "number",
"description": "Height in mm"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"fillColor": {
"type": "string",
"description": "Fill color (RGB hex or swatch name)"
},
"strokeColor": {
"type": "string",
"description": "Stroke color"
},
"strokeWidth": {
"type": "number",
"description": "Stroke width in points",
"default": 1
},
"cornerRadius": {
"type": "number",
"description": "Corner radius in mm",
"default": 0
}
},
"required": [
"x",
"y",
"width",
"height"
]
} | — | — | |
create_tableCreate a tableInput schema{
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "X position in mm"
},
"y": {
"type": "number",
"description": "Y position in mm"
},
"width": {
"type": "number",
"description": "Table width in mm"
},
"height": {
"type": "number",
"description": "Table height in mm"
},
"rows": {
"type": "number",
"description": "Number of rows"
},
"columns": {
"type": "number",
"description": "Number of columns"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"headerRows": {
"type": "number",
"description": "Number of header rows",
"default": 1
},
"footerRows": {
"type": "number",
"description": "Number of footer rows",
"default": 0
}
},
"required": [
"x",
"y",
"width",
"height",
"rows",
"columns"
]
} | — | — | |
create_text_frameCreate a text frame with advanced formatting optionsInput schema{
"type": "object",
"properties": {
"content": {
"type": "string",
"description": "Text content for the frame"
},
"x": {
"type": "number",
"description": "X position in mm",
"default": 10
},
"y": {
"type": "number",
"description": "Y position in mm",
"default": 10
},
"width": {
"type": "number",
"description": "Width in mm",
"default": 100
},
"height": {
"type": "number",
"description": "Height in mm",
"default": 50
},
"pageIndex": {
"type": "number",
"description": "Page index (0-based)",
"default": 0
},
"fontSize": {
"type": "number",
"description": "Font size in points",
"default": 12
},
"fontFamily": {
"type": "string",
"description": "Font family name",
"default": "Helvetica Neue"
},
"fontStyle": {
"type": "string",
"description": "Font style (Regular, Bold, Italic, etc.)",
"default": "Regular"
},
"textColor": {
"type": "string",
"description": "Text color (RGB hex or name)",
"default": "Black"
},
"alignment": {
"type": "string",
"enum": [
"LEFT_ALIGN",
"CENTER_ALIGN",
"RIGHT_ALIGN",
"JUSTIFY"
],
"default": "LEFT_ALIGN"
},
"paragraphStyle": {
"type": "string",
"description": "Paragraph style name to apply"
},
"characterStyle": {
"type": "string",
"description": "Character style name to apply"
}
},
"required": [
"content"
]
} | — | — | |
data_mergePerform data merge operationInput schema{
"type": "object",
"properties": {
"dataSourcePath": {
"type": "string",
"description": "Path to CSV data source"
},
"outputFolder": {
"type": "string",
"description": "Output folder for merged documents"
},
"fileFormat": {
"type": "string",
"enum": [
"INDD",
"PDF",
"BOTH"
],
"default": "PDF"
},
"recordRange": {
"type": "string",
"description": "Record range (e.g., \"1-10\", \"all\")",
"default": "all"
}
},
"required": [
"dataSourcePath",
"outputFolder"
]
} | — | — | |
delete_pageDelete a page from the documentInput schema{
"type": "object",
"properties": {
"pageIndex": {
"type": "number",
"description": "Page index to delete"
}
},
"required": [
"pageIndex"
]
} | — | — | |
duplicate_pageDuplicate a pageInput schema{
"type": "object",
"properties": {
"pageIndex": {
"type": "number",
"description": "Page index to duplicate"
},
"position": {
"type": "string",
"enum": [
"before",
"after",
"end"
],
"default": "after"
}
},
"required": [
"pageIndex"
]
} | — | — | |
edit_text_frameEdit properties of an existing text frameInput schema{
"type": "object",
"properties": {
"frameIndex": {
"type": "number",
"description": "Text frame index on page"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"content": {
"type": "string",
"description": "New text content"
},
"fontSize": {
"type": "number",
"description": "Font size in points"
},
"fontFamily": {
"type": "string",
"description": "Font family name"
},
"textColor": {
"type": "string",
"description": "Text color"
},
"alignment": {
"type": "string",
"enum": [
"LEFT_ALIGN",
"CENTER_ALIGN",
"RIGHT_ALIGN",
"JUSTIFY"
]
}
},
"required": [
"frameIndex"
]
} | — | — | |
execute_indesign_codeExecute custom ExtendScript code in InDesignInput schema{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "ExtendScript/JavaScript code to execute in InDesign"
}
},
"required": [
"code"
]
} | — | — | |
export_epubExport document as EPUBInput schema{
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "Output EPUB file path"
},
"version": {
"type": "string",
"enum": [
"EPUB2",
"EPUB3"
],
"default": "EPUB3"
},
"includeImages": {
"type": "boolean",
"description": "Include images",
"default": true
},
"imageFormat": {
"type": "string",
"enum": [
"PNG",
"JPEG",
"GIF"
],
"default": "PNG"
}
},
"required": [
"filePath"
]
} | — | — | |
export_imagesExport pages as imagesInput schema{
"type": "object",
"properties": {
"folderPath": {
"type": "string",
"description": "Output folder path"
},
"format": {
"type": "string",
"enum": [
"PNG",
"JPEG",
"TIFF",
"GIF"
],
"default": "PNG"
},
"resolution": {
"type": "number",
"description": "Export resolution in DPI",
"default": 300
},
"pageRange": {
"type": "string",
"description": "Page range",
"default": "all"
},
"includeBleed": {
"type": "boolean",
"description": "Include bleed area",
"default": false
}
},
"required": [
"folderPath"
]
} | — | — | |
export_pdfExport document as PDF with advanced optionsInput schema{
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "Output PDF file path"
},
"preset": {
"type": "string",
"enum": [
"Print",
"Web",
"SmallestFileSize",
"HighQualityPrint",
"PressQuality"
],
"default": "HighQualityPrint"
},
"pageRange": {
"type": "string",
"description": "Page range (e.g., \"1-5\", \"all\")",
"default": "all"
},
"includeBleed": {
"type": "boolean",
"description": "Include bleed area",
"default": false
},
"includeSlug": {
"type": "boolean",
"description": "Include slug area",
"default": false
},
"colorProfile": {
"type": "string",
"description": "Color profile for export"
},
"jpegQuality": {
"type": "string",
"enum": [
"Low",
"Medium",
"High",
"Maximum"
],
"default": "High"
}
},
"required": [
"filePath"
]
} | — | — | |
find_replace_textFind and replace text in the documentInput schema{
"type": "object",
"properties": {
"findText": {
"type": "string",
"description": "Text to find"
},
"replaceText": {
"type": "string",
"description": "Replacement text"
},
"caseSensitive": {
"type": "boolean",
"description": "Case sensitive search",
"default": false
},
"wholeWord": {
"type": "boolean",
"description": "Whole word only",
"default": false
},
"useGrep": {
"type": "boolean",
"description": "Use GREP (regular expressions)",
"default": false
},
"scope": {
"type": "string",
"enum": [
"document",
"story",
"selection"
],
"default": "document"
}
},
"required": [
"findText",
"replaceText"
]
} | — | — | |
get_document_infoGet detailed information about the current InDesign documentInput schema{
"type": "object",
"properties": {}
} | — | — | |
list_color_swatchesList all color swatches in the documentInput schema{
"type": "object",
"properties": {}
} | — | — | |
list_layersList all layers in the documentInput schema{
"type": "object",
"properties": {}
} | — | — | |
list_stylesList all available styles in the documentInput schema{
"type": "object",
"properties": {
"styleType": {
"type": "string",
"enum": [
"paragraph",
"character",
"object",
"all"
],
"default": "all"
}
}
} | — | — | |
navigate_to_pageNavigate to a specific pageInput schema{
"type": "object",
"properties": {
"pageIndex": {
"type": "number",
"description": "Page index to navigate to"
}
},
"required": [
"pageIndex"
]
} | — | — | |
open_documentOpen an existing InDesign documentInput schema{
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "Path to the InDesign document (.indd)"
}
},
"required": [
"filePath"
]
} | — | — | |
package_documentPackage document for print productionInput schema{
"type": "object",
"properties": {
"folderPath": {
"type": "string",
"description": "Output folder path"
},
"includeLinkedFiles": {
"type": "boolean",
"description": "Include linked files",
"default": true
},
"includeFonts": {
"type": "boolean",
"description": "Include fonts",
"default": true
},
"createReport": {
"type": "boolean",
"description": "Create packaging report",
"default": true
}
},
"required": [
"folderPath"
]
} | — | — | |
place_imagePlace an image with advanced optionsInput schema{
"type": "object",
"properties": {
"imagePath": {
"type": "string",
"description": "Path to the image file"
},
"x": {
"type": "number",
"description": "X position in mm",
"default": 10
},
"y": {
"type": "number",
"description": "Y position in mm",
"default": 10
},
"width": {
"type": "number",
"description": "Width in mm (optional, maintains aspect ratio if not specified)"
},
"height": {
"type": "number",
"description": "Height in mm (optional, maintains aspect ratio if not specified)"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"fitOption": {
"type": "string",
"enum": [
"PROPORTIONALLY",
"FRAME_TO_CONTENT",
"CONTENT_TO_FRAME",
"CENTER_CONTENT"
],
"default": "PROPORTIONALLY"
},
"createFrame": {
"type": "boolean",
"description": "Create frame first",
"default": true
}
},
"required": [
"imagePath"
]
} | — | — | |
populate_tablePopulate table with dataInput schema{
"type": "object",
"properties": {
"tableIndex": {
"type": "number",
"description": "Table index on page"
},
"pageIndex": {
"type": "number",
"description": "Page index",
"default": 0
},
"data": {
"type": "array",
"description": "Array of arrays with table data",
"items": {
"type": "array"
}
},
"includeHeaders": {
"type": "boolean",
"description": "First row contains headers",
"default": true
}
},
"required": [
"tableIndex",
"data"
]
} | — | — | |
preflight_documentRun preflight check on the documentInput schema{
"type": "object",
"properties": {
"profile": {
"type": "string",
"description": "Preflight profile name"
},
"scope": {
"type": "string",
"enum": [
"document",
"selection"
],
"default": "document"
}
}
} | — | — | |
save_documentSave the current documentInput schema{
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "Optional: Save as new file path"
}
}
} | — | — | |
set_active_layerSet the active layerInput schema{
"type": "object",
"properties": {
"layerName": {
"type": "string",
"description": "Layer name to activate"
}
},
"required": [
"layerName"
]
} | — | — | |
view_documentGet visual representation and detailed info about the current documentInput schema{
"type": "object",
"properties": {}
} | — | — | |
zoom_to_pageZoom and fit page in viewInput schema{
"type": "object",
"properties": {
"pageIndex": {
"type": "number",
"description": "Page index to zoom to"
},
"fitOption": {
"type": "string",
"enum": [
"FIT_PAGE",
"FIT_SPREAD",
"ACTUAL_SIZE",
"ZOOM_TO_SELECTION"
],
"default": "FIT_PAGE"
}
}
} | — | — |
| Endpoint | Transport | Authentication | Health | Observed |
|---|---|---|---|---|
| No verified remote endpoint is linked. | ||||
No verified package installation command is available in the retained catalog evidence.
InDesign MCP Server exposed 36 tools during independent protocol observation, including add_page, apply_color, apply_paragraph_style, close_document, create_character_style, create_color_swatch, create_document, create_ellipse, and others.
The selected current version does not yet have completed public verification. Unknown does not mean clean or vulnerable.
These internal links are derived from strong identity fields such as the implementation name, package, repository, vendor, and listing name—not generic description prose.
Association is based on retained identity fields; it does not by itself prove first-party publication.
Curated product and capability guides containing this catalog record.