Get the FREE Ultimate OpenClaw Setup Guide →

openroad

Model Context Protocol (MCP) server for OpenROAD

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio luarss-openroad-mcp uvx --from git+https://github.com/luarss/openroad-mcp openroad-mcp

How to use

This MCP server provides a set of tools to interact with the OpenROAD toolchain via the MCP protocol. It supports interactive OpenROAD sessions with PTY support, as well as session management commands to create, list, inspect, and terminate multiple sessions. You can access command history for any session, fetch performance metrics, and view ORFS (OpenROAD Flow Scripts) report images. The available commands are exposed through MCP transports and can be used by compatible MCP clients (such as Claude Code, Gemini CLI, or other STDIO transports). To get started, connect to the MCP server via the UV-based runtime, then use the provided tool endpoints to launch and manage interactive OpenROAD sessions, run RTL-to-GDS flows, and inspect results and logs.

Key capabilities include:

  • interactive_openroad: start and drive an interactive OpenROAD session with PTY support
  • create_interactive_session: create a new isolated session
  • list_interactive_sessions: enumerate active sessions
  • terminate_interactive_session: end a session
  • inspect_interactive_session: retrieve detailed session information
  • get_session_history: view the command history for a session
  • get_session_metrics: obtain performance metrics across sessions
  • list_report_images / read_report_image: access ORFS report visuals from runs Use these tools through your MCP client to manage long-running OpenROAD tasks, run iterative flows, and visualize results without restarting sessions between commands.

How to install

Prerequisites:

  • OpenROAD installed and available in your PATH
  • Python 3.13+ or higher
  • uv package manager installed (see installation instructions below)
  1. Install uv (if not already installed)

  2. Install the MCP server package (OpenROAD MCP) via uvx

  3. Run the MCP server locally for development

    • From the repository or a cloned copy of openroad-mcp:

      uv run openroad-mcp

  4. (Optional) Verify dependencies

    • If you encounter missing toolchain components, ensure OpenROAD and ORFS dependencies are installed per their official guides.
  5. Alternative local development command (if running directly via uv):

    uv --directory /path/to/openroad-mcp run openroad-mcp

Notes:

  • The above commands assume you want to pull the latest openroad-mcp from GitHub. You can replace the repository URL with a local path if you’re developing locally.
  • Ensure your environment PATH includes OpenROAD so that the MCP server can invoke it during interactive sessions.

Additional notes

Tips and common issues:

  • Ensure OpenROAD is properly installed and accessible in PATH; startup failures often indicate a missing or inaccessible OpenROAD executable.
  • If you encounter PTY or interactive issues in CI or container environments, try running with a non-interactive transport first to verify basic MCP communication before enabling PTY features.
  • The uv command used in the examples may require different flags depending on your environment; consult uv’s documentation for your platform if you see syntax errors.
  • When using ORFS, ensure that RTL-to-GDS flows are supported by your OpenROAD installation; ORFS is optional but recommended for full flow compatibility.
  • If you update the MCP server code, re-run the installation steps to ensure the latest changes are picked up by uvx/uv.

Related MCP Servers

Sponsor this space

Reach thousands of developers