GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Descripción del creador (original en inglés)
Drive AMD Vivado from AI assistants, with Red Pitaya STEMlab 125-14 build and deploy flows.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
VIVADO_MCP_NO_AUTOFETCHNecesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"vivado-red": {
"command": "uvx",
"args": [
"vivado-red-mcp"
],
"env": {
"VIVADO_MCP_NO_AUTOFETCH": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add vivado-red --env VIVADO_MCP_NO_AUTOFETCH=your-value -- uvx vivado-red-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"vivado-red": {
"command": "uvx",
"args": [
"vivado-red-mcp"
],
"env": {
"VIVADO_MCP_NO_AUTOFETCH": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"vivado-red": {
"type": "stdio",
"command": "uvx",
"args": [
"vivado-red-mcp"
],
"env": {
"VIVADO_MCP_NO_AUTOFETCH": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
VIVADO_MCP_NO_AUTOFETCH envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub sinemortal, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.5.0) llegó al registro hace 7 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: GitHub, Desktop Commander, Cloudflare MCP
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
An MCP server that lets an AI assistant such as Claude drive AMD/Xilinx Vivado directly: create projects, build block designs, synthesize, implement, simulate, read timing/utilization reports and generate bitstreams — without opening the Vivado GUI.
It has first-class support for the Red Pitaya STEMlab 125-14 (Zynq xc7z010clg400-1): you can go from a natural-language description to a .bit.bin running on the board, using either pure RTL or the official RedPitaya-FPGA PS+PL (ARM + FPGA) backbone, and deploy it over SSH.
Forked from coreyhahn/vivado_mcp and
heavily extended (93 tools): block design / IP Integrator, IP catalog, Hardware
Manager, advanced reports, Red Pitaya RTL and PS+PL flows, SSH deploy.
Current version: 0.5.0 — see What's new and CHANGELOG.md.
Not to be confused with the unrelated
vivado-mcppackage on PyPI. This project is
vivado-red-mcp: Python modulevivado_red_mcp, commandvivado-red-mcp.
.bit.bin generation, SSH deploy.| Status | |
|---|---|
| Vivado 2026.1, Windows 11 | Validated end-to-end in 0.4.0: session, RTL and PS+PL Red Pitaya builds, reports, behavioral + post-synthesis xsim, block design, RedPitaya-FPGA tutorials (see below) |
| Vivado 2020.1, Linux | Original development target (0.3.x). Not re-tested on 0.4.0 |
| Other Vivado releases | Expected to work (the generic tools use standard Tcl); not tested |
| Red Pitaya board | STEMlab 125-14 (Z10) only for the Red Pitaya flows |
| Python | 3.10 – 3.12 |
| MCP Python SDK | 1.x only (mcp>=1.0,<2, pinned automatically) |
The RedPitaya-FPGA tutorials in prj/Examples (Led_blink, Knight_rider, Stopwatch, Frequency_counter) build to a bitstream through the server. Led_blink and Knight_rider rebuilt from scratch with MCP tools only produce byte-identical bitstreams to the tutorials' own scripts.
xc7z010). When installing, you only need *Vivado* and, under devices, *SoCs → Zynq-7000*; Vitis Model Composer and DocNav are not needed.a valid license was not found): /bin/vlm.bat on Windows, vlm on Linux);Xilinx.lic with *Load License → Copy License*.PATH (Linux: source /settings64.sh; Windows: add \bin to PATH), orstart_session (e.g. C:\AMDDesignTools\2026.1\Vivado\bin\vivado.bat).pexpect (Linux/macOS) or pywinpty (Windows) is installed automatically.
git clone https://github.com/sinemortal/vivado-red-mcp.git
cd vivado-red-mcp python -m venv .venv
pip install -e .
pip pins the MCP SDK to 1.x by itself. Do not upgrade mcp to 2.x: the server would not start ('Server' object has no attribute 'list_tools').
Once, for all your projects:
claude mcp add --transport stdio --scope user vivado -- vivado-red-mcp
If vivado-red-mcp is not on PATH when Claude Code starts (typical with a virtual environment), point to the venv's Python instead:
# Windows
claude mcp add --transport stdio --scope user vivado -- "C:\path\to\vivado-red-mcp\.venv\Scripts\python.exe" -m vivado_red_mcp
claude mcp add --transport stdio --scope user vivado -- /path/to/vivado-red-mcp/.venv/bin/python -m vivado_red_mcp
Or share it with a single project through a .mcp.json at the project root:
{
"mcpServers": { "vivado": { "type": "stdio", "command": "vivado-red-mcp" } } }
Check it with claude mcp list: vivado should show as connected.
On startup the server downloads the RedPitaya-FPGA repo (source zip) into its working directory if it is missing, for the PS+PL flow. Set the environment variable VIVADO_MCP_NO_AUTOFETCH=1 to turn this off; the rp_fetch_repo tool can still download it on demand.
Talk to Claude in plain language, for example:
PATH)C:/work/my_proj/my_proj.xpr"Claude picks the tools; you never have to call them by name.
Two flows, depending on whether you need the ARM processor:
| Flow | Tool | Use it for |
|---|---|---|
| RTL only (no PS7) | create_redpitaya_project_rtl | Logic clocked by the 125 MHz ADC clock: LEDs, counters, expansion-connector GPIO. One call does create → sources → XDC → synth → impl → bitstream → .bit.bin |
| PS + PL | rp_fetch_repo → rp_setup_workspace → rp_build_project | Designs that need the ARM, DDR or AXI. Reuses the PS7 block design shipped by RedPitaya-FPGA instead of reconfiguring the Zynq by hand |
Example prompt:
Make an LED blinker at 1 Hz for the Red Pitaya using the 125 MHz ADC clock on
led_o[0], build it and give me the.bit.bin.
To load the result on the board, ask Claude to use deploy_to_redpitaya (SSH, default credentials root/root; works with OS 1.04 xdevcfg and OS 2.00 fpgautil), or copy it yourself:
scp led_blinker.bit.bin root@rp-xxxxxx.local:/tmp/
ssh root@rp-xxxxxx.local 'cat /tmp/led_blinker.bit.bin > /dev/xdevcfg'
PS+PL and the RedPitaya-FPGA repo. The current upstream master targets Vivado 2025.1; older checkouts targeted 2020.1. Both layouts are supported. rp_setup_workspace copies the repo into a separate workspace and patches only that copy, so the scripts run on the Vivado you have installed (their exported block-design/IP scripts otherwise refuse any other release) and without a git checkout. Your downloaded repo is never modified. Details: get_vivado_doc redpitaya_ps_pl_flow.
Bundled board data (data/boards/):
red_pitaya_125_14_full.xdc — full pinout (ADC, DAC, LEDs, expansion connector, XADC), port names as in the official red_pitaya_top (adc_dat_ich, dac_dat_o, exp_p_io, …); checked pin by pin against upstream sdc/red_pitaya.xdc.red_pitaya_125_14_leds_min.xdc — 125 MHz differential ADC clock + 8 LEDs, for hello-world designs.red_pitaya_125_14_info.json — part number and board metadata.The RedPitaya tutorials (prj/Examples) use different port names (adc_dat_a_i, adc_clk_p_i, …) and a PS7 preset (cfg/red_pitaya.xml); use their own cfg/ files when rebuilding them.
More Italian prompt examples and the step-by-step low-level flow: USAGE.md.
Renamed to `vivado-red-mcp` (package, Python module vivado_red_mcp, command vivado-red-mcp), so it no longer clashes with the unrelated vivado-mcp package on PyPI. If you installed an earlier version, reinstall it and re-register it with Claude Code using the new command (see Installation).
Works on Vivado 2026.1 and with the current RedPitaya-FPGA repo.
Fixed:
Spawn failed) → fixed.run_tcl was silently corrupted on Windows → fixed.get_timing_summary always returned empty values; get_utilization misread newer reports → both parse current Vivado output.No open design) → the latest completed run is opened automatically.get_synthesis_errors_parsed always returned 0 errors → now reads the run logs, including failed IP runs.launch_simulation modes rejected by recent Vivado → fixed.generate_bitstream timed out after 300 s and didn't check the result → now verified, returns the .bit path.dac_dat_o[8..12]) → corrected.New tools: create_bd_port, add_module_to_bd, configure_bd_cell, set_run_strategy. Full list in CHANGELOG.md.
| Symptom | Cause / fix |
|---|---|
start_session fails with valid license was not found | Vivado 2025.x/2026.x needs a license file even for the free edition — see Requirements |
start_session cannot find Vivado | Put /bin on PATH or give Claude the full path of vivado.bat / vivado |
Server does not start: 'Server' object has no attribute 'list_tools' | MCP SDK 2.x installed. Run pip install "mcp>=1.0,<2" |
claude mcp list shows vivado as failed | vivado-red-mcp not on PATH for Claude Code: register it with the venv's Python (see Installation) |
A RedPitaya example fails synthesis with red_pitaya_pll ... port does not exist | Upstream issue in prj/Examples/Simple_moving_average (it pulls in rtl_250), not in this server |
Occasional Could not open 'C' for writing in an IP run | Intermittent Vivado issue with parallel out-of-context runs; re-run synthesis |
| Long paths on Windows | Keep projects in short paths; Vivado and IP generation hit the 260-character limit |
start_session - Start a persistent Vivado Tcl session (optional vivado_path)stop_session - Stop the Vivado sessionsession_status - Session statisticscheck_session_health - Detect a hung/dead session, optionally recover-
Solo se muestra el principio; lee el resto en el repo