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 分