内容
# indesign-mcp
MCP 服务器桥接 Claude 至 Adobe InDesign 2026。v1 版本通过 macOS `osascript` 调度 ExtendScript。UXP 插件升级延迟至 v2。
26 个工具涵盖文档生命周期、文本 + 段落样式、视觉效果和几何形状、母版页和页码、内联字符样式、框架优化以及读取/实用程序助手。通过 415 个单元测试和 79 个实时集成测试,验证了 InDesign 2026(21.3.0.60)。
参见 `docs/PROJECT_STATE.md` 了解当前状态、约定以及尚未发布的內容。参见 `docs/superpowers/specs/` 和 `docs/superpowers/plans/` 了解每次迭代背后的设计规格和实施计划。
## 要求
- macOS
- Node 20+
- Adobe InDesign 2026(已安装;调用工具时运行)
## 安装和构建
```bash
npm install
npm run build
```
## 测试
单元测试(无需 InDesign):
```bash
npm test
```
集成测试(需要 InDesign 2026 运行):
```bash
npm run test:integration
```
## 连接 Claude Desktop
将以下内容添加到 `~/Library/Application Support/Claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"indesign-mcp": {
"command": "node",
"args": ["/absolute/path/to/indesign-mcp/dist/index.js"]
}
}
}
```
重启 Claude Desktop。确认服务器在 MCP 状态面板中显示为已连接。
## 连接 Claude 代码
将以下内容添加到 `~/.claude/settings.json`(或项目中的 `.claude/settings.json`):
```json
{
"mcpServers": {
"indesign-mcp": {
"command": "node",
"args": ["/absolute/path/to/indesign-mcp/dist/index.js"]
}
}
}
```
## 烟雾测试
1. 启动 InDesign 2026。等待应用程序空闲(无启动对话框)。
2. 在 Claude(Desktop 或 Code)中,询问:*“使用 indesign-mcp 工具 `get_app_version` 并告诉我结果。”*
3. 预期:Claude 报告版本号字符串,如 `21.0`(或更高)。
如果 Claude 报告 `app_not_available`,则 InDesign 未完全启动。等待并重试。对于其他错误,请检查 `~/Library/Logs/indesign-mcp/server.log`。
## 日志记录
服务器将每事件的一行 JSON 日志追加到:
```
~/Library/Logs/indesign-mcp/server.log
```
有助于诊断“Claude 说它做了 X,但 X 没有发生”的情况 — 日志记录了组合的 ExtendScript 和原始返回值。
## 状态
所有七个实施计划(B1 至 B7)已合并。参见 `docs/PROJECT_STATE.md` 了解工具清单和尚未发布的內容。