关于 Openroad Mcp
Openroad Mcp 是用于与 OpenROAD 和 ORFS 建立交互会话的 MCP 服务,供兼容的 AI 客户端开展半导体物理设计工作。它提供命令执行,以及会话管理、历史记录、指标和报告图像访问。
主要功能
- 01通过 PTY 运行交互式 OpenROAD 命令
- 02创建、检查、列出和终止会话
- 03获取命令历史和会话指标
- 04列出并读取 ORFS 报告图像
适用场景
- 01从 MCP 客户端运行交互式物理设计命令
- 02管理多个 OpenROAD 设计会话
- 03查看命令历史和性能指标
- 04查看 ORFS 运行生成的报告图像
MCP 相关
向 MCP 客户端提供 OpenROAD 和 ORFS 交互工具,包括命令执行、会话控制、历史记录、指标及报告图像访问。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
OpenROAD MCP 服务
一个模型上下文协议(MCP)服务,提供用于与 OpenROAD 和 ORFS 交互的工具。
关于 OpenROAD MCP
初次使用? 查看快速入门指南,只需 5 分钟即可让 AI 助手分析设计。
OpenROAD MCP 打通了 AI 助手与物理设计之间的壁垒,可将 Claude、Cursor 及其他兼容 MCP 的客户端直接连接到 OpenROAD 布局工具。
OpenROAD 是领先的开源半导体数字设计基础应用,可提供从 RTL 到 GDSII 的自主、无需人工介入(NHIL)流程。OpenROAD-flow-scripts(ORFS)是围绕它构建的完全自主流程。
借助此 MCP 服务,你的 AI 助手可以:
- 执行命令 - 运行具备完整 PTY 支持的交互式 OpenROAD 会话。
- 管理会话 - 创建、列出、检查并终止多个物理设计会话。
- 跟踪历史记录和指标 - 获取完整的命令历史记录和性能指标,以供分析。
- 可视化报告 - 直接在聊天中列出并读取 ORFS 运行生成的报告图像。
演示

要求与安装
要使用此 MCP 服务,你需要服务运行时,以及底层的 OpenROAD 布局工具。
1. 服务运行时
- 运行
npx发行版需要 Node.js 22+。
2. OpenROAD
必须安装 OpenROAD,并确保它可在你的 PATH 中找到。
3. OpenROAD-flow-scripts(ORFS)
ORFS 是可选项,但强烈建议安装,以支持完整的 RTL 到 GDS 流程和报告可视化。
配置
有关特定平台的 Node.js 和 C++ 工具链设置说明,请参阅**跨平台构建指南**。
通常情况下,你无需克隆此仓库或传递路径环境变量。已发布的 npx 软件包不会读取 .env 文件。
启动时,服务会继承 MCP 客户端的环境,然后按照与 which openroad 相同的方式填充 PATH:先使用当前的 PATH,再使用登录 shell 的 PATH,最后查找常见安装位置(/opt/homebrew/bin、conda、本地 OpenROAD 构建目录)。ORFS_FLOW_PATH 默认为 ~/OpenROAD-flow-scripts/flow;如果 ORFS 与 openroad 二进制文件位于同一目录下,也会自动检测到它。
支持的 MCP 客户端
以下是大多数客户端通用的标准基础配置:
{
"command": "npx",
"args": ["-y", "openroad-mcp"]
}
请在下方找到对应的客户端,查看准确的配置片段和文件位置。
Claude Code
claude mcp add --transport stdio openroad-mcp -- npx -y openroad-mcp
或者将标准配置添加到 .mcp.json / .claude/settings.json。
如果通过 GUI 启动的客户端仍然无法找到 openroad,请传入覆盖值。使用 command -v,避免将路径写死:
claude mcp add \
--env PATH="$(dirname "$(command -v openroad)"):${PATH}" \
--env ORFS_FLOW_PATH="${HOME}/OpenROAD-flow-scripts/flow" \
--transport stdio openroad-mcp \
-- npx -y openroad-mcp
将 --transport 放在 --env 和服务名称之间,避免 CLI 将名称误认为另一组 KEY=value 参数。
Claude Desktop
将标准配置添加到:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
将标准配置添加到 .cursor/mcp.json。
GitHub Copilot (VS Code)
添加到 .vscode/mcp.json。需要 "type": "stdio":
{
"servers": {
"openroad-mcp": {
"type": "stdio",
"command": "npx",
"args": ["-y", "openroad-mcp"]
}
}
}
Windsurf
将标准配置添加到 ~/.codeium/windsurf/mcp_config.json。
Cline / Roo Code
将标准配置添加到 cline_mcp_settings.json(Cline)或 .roo/mcp.json(Roo Code)。
Continue / PearAI
在相应的 config.json 中,将配置添加到 modelContextProtocolServers 下:
{
"transport": {
"type": "stdio",
"command": "npx",
"args": ["-y", "openroad-mcp"]
}
}
Zed
添加到 ~/.config/zed/settings.json:
{
"context_servers": {
"openroad-mcp": {
"command": {
"path": "npx",
"args": ["-y", "openroad-mcp"]
}
}
}
}
Docker / MCP Registry / Others
此服务可通过 MCP Registry 和 Docker 获取:
docker run --rm -i ghcr.io/the-openroad-project/openroad-mcp:latest
大多数其他标准 STDIO 客户端也完全受支持。请参阅相应工具的 MCP 设置指南。
可用工具
配置完成后,AI 助手即可使用以下工具。如需了解详细参数、架构和返回格式,请参阅 API 参考。
interactive_openroad_queryinteractive_openroad_execcreate_interactive_sessionlist_interactive_sessionsterminate_interactive_sessioninspect_interactive_sessionget_session_historyget_session_metricslist_report_imagesread_report_image
故障排查
- 服务无法启动:确保已安装 Node.js 22+。较旧版本将无法运行。
- 会话创建失败:确认在终端中运行
command -v openroad正常。服务会继承 PATH 并搜索常见安装位置;如果安装前缀比较特殊,请按照 Claude Code 部分所示,通过--env传入PATH。 - 命令因 CommandBlocked 被拒绝:你向
interactive_openroad_query发送了会修改状态的命令。请改用interactive_openroad_exec。 - 找不到报告图像:服务默认使用
~/OpenROAD-flow-scripts/flow。如果 ORFS 位于其他位置,请在 MCP 客户端的env块中设置ORFS_FLOW_PATH(而不是在.env文件中设置)。
如需查看更多信息,请在服务的环境中设置 LOG_LEVEL=DEBUG。
开发
克隆此仓库。.env.example 仅供本地开发参考;如果使用 direnv 或类似工具,请将其复制为 .env。服务仍会读取 process.env(MCP 客户端的 env 块),而不是该文件。
然后运行:
cd typescript
npm install
npm run build
测试:
npm run test # unit tests
npm run test:integration # integration tests
npm run test:performance # performance benchmarks
Lint 和类型检查:
npm run typecheck
npm run lint
贡献
欢迎贡献!有关开发工作流和代码规范的详细说明,请参阅 CONTRIBUTING.md。
许可证
BSD 3-Clause License。请参阅 LICENSE 文件。
由 Precision Innovations 用 ❤️ 打造
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。