Openroad Mcp

io.github.The-OpenROAD-Project由 GitHub 账号 The-OpenROAD-Project 发布v1.1.0更新于 Oct 24, 2026

The OpenROAD MCP server - interactive EDA sessions via Model Context Protocol

已验证STDIO仅桌面开发者工具AI 与机器学习

概览

AI 生成的概览

让 AI 助手运行和管理 OpenROAD 交互式物理设计会话,并查看 ORFS 报告。

可以做什么
该服务器提供用于 OpenROAD 交互式 EDA 会话的工具:可创建、列出、检查和终止会话,通过 PTY 执行命令,并查询会话状态。它还能返回命令历史和性能指标,并可列出和读取 OpenROAD-flow-scripts 运行生成的报告图片。查询工具会拒绝修改状态的命令,这类命令需改用执行工具。
适用场景
当助手需要驱动 OpenROAD 或 ORFS 数字设计流程、执行 RTL 到 GDSII 的步骤,或在不离开对话的情况下查看运行报告和指标时使用。它适用于芯片设计与 EDA 工作流,而非通用软件任务。
运行要求
通过 stdio 在本地运行,通常使用 npx 并需要 Node.js 22 或更高版本,也可使用 Docker 镜像。必须安装 OpenROAD 并能在 PATH 中找到;ORFS 可选但推荐,ORFS_FLOW_PATH 默认指向 ~/OpenROAD-flow-scripts/flow。未声明账号、API 密钥或请求头。
安装前请注意
执行工具会在活动的 OpenROAD 会话中运行命令,因此可能修改工作环境中的设计和文件;查询工具会阻止改变状态的命令。服务器会继承 MCP 客户端的环境变量并搜索 PATH 和常见安装位置,因此可能需要显式设置 PATH 和 ORFS_FLOW_PATH。可选的 LOG_LEVEL=DEBUG 会增加日志详细程度。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Openroad Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

OpenROAD MCP Server

A Model Context Protocol (MCP) server that provides tools for interacting with OpenROAD and ORFS.

About OpenROAD MCP

New here? Check out the Quick Start Guide to get your AI assistant analyzing designs in 5 minutes.

OpenROAD MCP eliminates the barrier between your AI assistant and physical design by connecting Claude, Cursor, and other MCP-compatible clients directly to the OpenROAD layout tools.

OpenROAD is the leading open-source, foundational application for semiconductor digital design, delivering an Autonomous, No-Human-In-Loop (NHIL) flow from RTL-GDSII. OpenROAD-flow-scripts (ORFS) is the fully autonomous flow built around it.

With this MCP server, your AI assistant can:

  • Execute Commands - Run interactive OpenROAD sessions with full PTY support.
  • Manage Sessions - Create, list, inspect, and terminate multiple physical design sessions.
  • Track History & Metrics - Access full command history and performance metrics for analysis.
  • Visualize Reports - List and read report images from ORFS runs directly in the chat.

Demo

[OpenROAD MCP Demo]

Watch full demo video

Requirements & Installation

To use this MCP server, you need the server runtime, plus the underlying OpenROAD layout tools.

1. Server Runtime

  • Node.js 22+ is required to run the npx distribution.

2. OpenROAD

OpenROAD must be installed and available in your PATH.

3. OpenROAD-flow-scripts (ORFS)

ORFS is optional but highly recommended for complete RTL-to-GDS flows and report visualization.

Configuration

For platform-specific Node.js and C++ toolchain setup instructions, see the Cross-Platform Build Guide.

You do not need to clone this repo or pass path environment variables in the common case. The published npx package does not read a .env file.

On startup the server inherits the MCP client's environment, then fills PATH the same way which openroad would: current PATH, then your login-shell PATH, then common install locations (/opt/homebrew/bin, conda, local OpenROAD builds). ORFS_FLOW_PATH defaults to ~/OpenROAD-flow-scripts/flow, and is also detected when ORFS sits next to the openroad binary.

Supported MCP Clients

Here is the standard base configuration used across most clients:

json
{  "command": "npx",  "args": ["-y", "openroad-mcp"]}

Find your specific client below for the exact configuration snippet and file location.

Claude Code
bash
claude mcp add --transport stdio openroad-mcp -- npx -y openroad-mcp

Or add the standard config to .mcp.json / .claude/settings.json.

If a GUI-launched client still cannot find openroad, pass an override. Use command -v so you do not hard-code paths:

bash
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

Put --transport between --env and the server name so the CLI does not treat the name as another KEY=value pair.

Claude Desktop

Add the standard config to:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Cursor

Add the standard config to .cursor/mcp.json.

GitHub Copilot (VS Code)

Add to .vscode/mcp.json. Requires "type": "stdio":

json
{  "servers": {    "openroad-mcp": {      "type": "stdio",      "command": "npx",      "args": ["-y", "openroad-mcp"]    }  }}
Windsurf

Add the standard config to ~/.codeium/windsurf/mcp_config.json.

Cline / Roo Code

Add the standard config to cline_mcp_settings.json (Cline) or .roo/mcp.json (Roo Code).

Continue / PearAI

Add to your respective config.json under modelContextProtocolServers:

json
{  "transport": {    "type": "stdio",    "command": "npx",    "args": ["-y", "openroad-mcp"]  }}
Zed

Add to ~/.config/zed/settings.json:

json
{  "context_servers": {    "openroad-mcp": {      "command": {        "path": "npx",        "args": ["-y", "openroad-mcp"]      }    }  }}
Docker / MCP Registry / Others

The server is available on the MCP Registry and via Docker:

bash
docker run --rm -i ghcr.io/the-openroad-project/openroad-mcp:latest

Most other standard STDIO clients are fully supported. Refer to your tool's MCP setup guide.

Available Tools

Once configured, your AI assistant will have access to the following tools. For detailed parameters, schemas, and return formats, see the API Reference.

  • interactive_openroad_query
  • interactive_openroad_exec
  • create_interactive_session
  • list_interactive_sessions
  • terminate_interactive_session
  • inspect_interactive_session
  • get_session_history
  • get_session_metrics
  • list_report_images
  • read_report_image

Troubleshooting

  • The server fails to start: Ensure you have Node.js 22+. Older versions will fail.
  • Session creation fails: Confirm command -v openroad works in a terminal. The server inherits PATH and searches common install locations; if your prefix is unusual, pass PATH with --env as shown in the Claude Code section.
  • Commands rejected with CommandBlocked: You sent a state-modifying command to interactive_openroad_query. Use interactive_openroad_exec instead.
  • Report images not found: The server defaults to ~/OpenROAD-flow-scripts/flow. If ORFS lives elsewhere, set ORFS_FLOW_PATH in the MCP client's env block (not a .env file).

To get more detail, set LOG_LEVEL=DEBUG in the server's environment.

Development

Clone the repository. .env.example is a local-dev reference only; copy it to .env if you use direnv or similar. The server still reads process.env (the MCP client's env block), not the file.

Then run:

bash
cd typescriptnpm installnpm run build

Testing:

bash
npm run test             # unit testsnpm run test:integration # integration testsnpm run test:performance # performance benchmarks

Linting & type checking:

bash
npm run typechecknpm run lint

Contributing

We welcome contributions! Please see CONTRIBUTING.md for detailed instructions on our development workflow and code standards.

License

BSD 3-Clause License. See LICENSE file.


Built with ❤️ by Precision Innovations

来源:README.md,提交 c366bb5

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分