Vivado Agent MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WINDIR | No | Windows directory, set to avoid missing base environment variables in some MCP hosts. | C:/WINDOWS |
| SystemRoot | No | Windows system root, set to avoid missing base environment variables in some MCP hosts. | C:/WINDOWS |
| VIVADO_PATH | Yes | Absolute path to the trusted vivado.bat (e.g., C:\Xilinx\Vivado\2021.2\bin\vivado.bat). Must be configured before server startup; cannot be overridden by MCP tool arguments. | |
| VIVADO_AGENT_MCP_RUNTIME_DIR | Yes | Uniform runtime root directory for MCP bootstrap, session logs, and Vivado temporary files. | |
| VIVADO_AGENT_MCP_TOOL_PROFILE | No | Tool exposure policy. Normal users should keep 'core' to avoid exposing hardware tools. | core |
| VIVADO_AGENT_MCP_TRUSTED_PROJECT_ROOTS | No | Local project roots allowed for trusted XSIM execution. Windows multiple roots are separated by semicolon (e.g., C:/fpga-work). Optional unless using trusted XSIM. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_tool_catalogA | Return the Agent-facing Vivado MCP capability matrix and tool groups. |
| get_agent_workflowsA | Return standard Agent workflow recipes for no-board Project Mode PL development. |
| get_agent_scenariosB | Return reusable Subagent validation scenarios for Agent-facing Vivado MCP acceptance. |
| get_workflow_trace_statusB | Return the current Agent workflow transcript status and recoverable handoff pointers. |
| detect_vivado_environmentC | Detect the server-start VIVADO_PATH environment and optionally run a bounded batch probe; vivado_path can only assert the same canonical executable identity. |
| start_sessionA | Start a visible Vivado GUI session from the server-start VIVADO_PATH identity and open a local TCP Tcl channel. |
| stop_sessionB | Stop the managed Vivado session. |
| session_statusB | Get managed Vivado session status. |
| get_runtime_cache_statusB | Inspect the MCP runtime directory and summarize temporary Vivado cache candidates. |
| clean_runtime_cacheB | Dry-run or safely clean temporary files from the MCP runtime directory without touching project vmcp_* artifacts. |
| create_projectB | Create a Vivado project from existing design, constraint, and simulation files. |
| configure_simulationC | Configure a Vivado sim_1 fileset in the currently open project. |
| repair_project_setupC | Dry-run or repair Project Mode setup by reconciling RTL, XDC, sim files, tops, SystemVerilog file types, and compile order. |
| run_behavioral_simulationB | Run Vivado XSIM behavioral simulation for a configured simulation fileset. |
| get_simulation_resultC | Read and parse Vivado XSIM logs and generated waveform artifacts. |
| open_projectC | Open a Vivado .xpr project. |
| close_projectC | Close the current Vivado project. |
| get_project_stateC | Get current Vivado project, fileset, run, and artifact state. |
| list_fileset_filesC | List files referenced by a Vivado fileset. |
| update_project_compile_orderC | Update Vivado compile order for sources_1 and/or sim_1. |
| check_syntaxC | Run Vivado native syntax check for a fileset. |
| get_compile_orderC | Inspect Vivado compile order, missing files, duplicates, and unknown file types. |
| analyze_sourcesC | Aggregate syntax and compile-order diagnostics for a fileset. |
| clean_run_outputsC | Delete selected Vivado generated run/simulation/cache outputs inside the current project directory only. |
| collect_build_artifactsB | Copy bitstream, probes, checkpoints, reports, and Vivado metadata into vmcp_artifacts and write manifest.json. |
| collect_report_bundleC | Generate and collect pre-hardware Vivado reports into vmcp_reports with report_manifest.json. |
| run_project_auditB | Aggregate Project Mode health, signoff, manifests, waivers, and next-step diagnostics without launching build runs. |
| collect_diagnostic_bundleB | Collect audit inputs, manifests, waivers, and log tails into vmcp_diagnostics//diagnostic_manifest.json. |
| validate_diagnostic_bundleA | Validate a project-local diagnostic reference manifest for integrity and reviewability; it is not a portable reproduction bundle. |
| run_synthesisA | Launch synthesis asynchronously; poll with get_run_progress. |
| run_implementationA | Launch implementation asynchronously; poll with get_run_progress. |
| generate_bitstreamA | Launch bitstream generation asynchronously for an implementation run; poll with get_run_progress. |
| get_run_progressC | Get Vivado run status and progress. |
| diagnose_run_failureC | Aggregate run status, run log tail, and critical messages into a structured run failure diagnosis. |
| get_timing_summaryC | Parse report_timing_summary output. |
| get_constraints_summaryC | Summarize XDC files, ports, clocks, and common constraint commands. |
| check_timing_constraintsC | Run and parse Vivado check_timing. |
| get_timing_pathsC | Parse worst setup or hold timing paths. |
| analyze_timing_closureC | Aggregate timing, constraints, methodology, DRC, and run messages into prioritized findings. |
| run_pre_hw_signoffC | Aggregate source, elaboration, simulation, timing, CDC, power, reports, readiness, and signoff waivers into pre-hardware signoff. |
| check_bitstream_readinessC | Aggregate timing, DRC, and critical messages into READY/WARN/BLOCK. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 41 tools
Most tools target distinct resources and actions: project lifecycle, simulation, synthesis, timing, constraints, and artifact collection are cleanly separated. A few diagnostic aggregation tools like run_project_audit, collect_diagnostic_bundle, and run_pre_hw_signoff have overlapping purposes, but their descriptions delineate different scopes and outputs. Overall, an agent can generally tell the tools apart with only minor risk of misselection.
Every tool follows a consistent snake_case verb_noun pattern: get_, create_, run_, check_, collect_, validate_, etc. Even the agent-facing meta tools like get_agent_workflows and get_workflow_trace_status conform to the same convention. No camelCase or mixed verb styles are present.
41 tools is well above the 25+ threshold for a heavy tool surface. While the Vivado Project Mode flow is broad, many diagnostic aggregation and artifact collection tools could be consolidated into fewer multi-purpose tools. This count will likely overwhelm agents and increase selection latency.
The tool set provides coverage across the entire Project Mode PL development lifecycle: project creation/opening, simulation, synthesis, implementation, bitstream generation, timing/constraint analysis, diagnostic bundles, and pre-hardware signoff. The surface is remarkably complete for the stated 'no-board Project Mode PL development' scope, with no critical dead ends for standard workflows.