Vivado MCP Server (coreyhahn)
MCP serverCommunity
Keeps a single Vivado Tcl process alive so the agent can run synthesis, timing and XSim without restarts. By coreyhahn.
69 starsUpdated 9 months agoGitHub data from 5 Nov 2026
At a glance
- Type
- MCP server
- Works with
- Vivado
- How it connects
- Drives a running copy of the tool
- Access
- Can modify models
- Tool versions
- Tested with Vivado 2023.2 and later
- Operating systems
- Not stated in its documentation
- Needs a Vivado licence
- Not stated in its documentation
- Transport
- Local (stdio)
- AI clients documented
- Claude Code
- Licence
- MIT
- Language
- Python
What it can do
- Holds one persistent Vivado session to avoid the start-up delay on every command.
- Opens projects and runs synthesis, implementation and bitstream generation.
- Returns timing summaries, failing paths, utilisation, clocks and messages as structured JSON.
- Drives XSim (launch, run, step, breakpoints, signal values) and runs raw Tcl.
Limitations
- Drives Vivado through pexpect and waits for the Vivado prompt; the README doesn't say which operating systems are supported.
- Only one Vivado process runs at a time.
- Install from a git clone only; there is no package release.
Install
git clone https://github.com/coreyhahn/vivado_mcp.git
cd vivado_mcp
pip install -e .Source: github.com/coreyhahn/vivado_mcp
{
"mcpServers": {
"vivado": {
"command": "vivado-mcp"
}
}
}Source: github.com/coreyhahn/vivado_mcp
MCP servers and skills run code on your computer. Review the source before installing.
AI-generated models, drawings and results must be checked by a qualified engineer before use.