Waveform MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Waveform MCP Servershow me all signals matching 'clk' in sim.vcd"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Waveform MCP Server
MCP (Model Context Protocol) server for RTL waveform analysis using WAL (Waveform Analysis Language).
Tools
get_signal_list
Get hierarchical list of signals from waveform file with optional regex filtering.
waveform_file(required): Path to waveform filepattern(optional): Regex pattern to filter signals
Example:
{"tool": "get_signal_list", "arguments": {"waveform_file": "sim.vcd", "pattern": "cpu.*"}}get_signal_transitions
Extract signal transitions within specified time ranges.
waveform_file(required): Path to waveform filesignal_name(required): Full signal namestart_time(optional): Start time, default 0end_time(optional): End time, default end of simulation
Example:
{"tool": "get_signal_transitions", "arguments": {"waveform_file": "sim.vcd", "signal_name": "clk", "start_time": 0, "end_time": 100}}get_waveform_length
Get the total simulation length/duration.
waveform_file(required): Path to waveform file
Example:
{"tool": "get_waveform_length", "arguments": {"waveform_file": "sim.vcd"}}execute_wal_expression
Execute WAL expressions for advanced waveform analysis.
waveform_file(required): Path to waveform fileexpression(required): WAL expression to execute
Example:
{"tool": "execute_wal_expression", "arguments": {"waveform_file": "sim.vcd", "expression": "(find (= clk 1))"}}get_wal_help
Get comprehensive WAL documentation and syntax reference.
topic(optional): Help topic ('overview', 'functions', 'examples', 'debugging', 'syntax')
Example:
{"tool": "get_wal_help", "arguments": {"topic": "examples"}}get_wal_examples
Generate signal-specific WAL examples for your waveform.
waveform_file(required): Path to waveform file
Example:
{"tool": "get_wal_examples", "arguments": {"waveform_file": "sim.vcd"}}Related MCP server: wavekit-mcp
Supported Formats
VCD (Value Change Dump)
FST (Fast Signal Trace)
Other formats supported by WAL
Credits
Built on WAL (Waveform Analysis Language), a domain-specific language for hardware waveform analysis. See the WAL website for more information.
Installation
pip install -e .Development
To set up a development environment, install the dev dependencies:
pip install -e .[dev]Testing
To run the test suite:
pytestUsage
Add to your MCP client configuration:
{
"mcpServers": {
"waveform": {
"type": "stdio",
"command": "waveform-mcp",
"args": []
}
}
}For WAL expression syntax and advanced examples, see the WAL documentation.
Requirements
Python 3.10+
cmake(for FST support)WAL (Waveform Analysis Language) >= 0.8.0
MCP Python SDK >= 1.0.0
License
BSD 3-Clause License. See LICENSE for details.
This server cannot be deployed
Maintenance
Related MCP Connectors
Create RF signal projects from prompts, inspect graphs, and export IQ data.
Query Allen-Bradley and Siemens PLC projects, live tag values, and analyses in plain English.
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
AI-powered codebase analysis — call graphs, security, dead code, complexity. 150+ tools.
Related MCP Servers
- AlicenseCqualityFmaintenanceEnables RTL simulation and hardware verification with Verilator through automatic testbench generation, natural language queries about simulations, waveform analysis, and protocol-aware testing for Verilog/SystemVerilog designs.44MIT
- FlicenseNot gradedqualityBmaintenanceAn MCP server that provides AI assistants with a persistent, sandboxed Python environment for waveform analysis, enabling loading and manipulation of VCD/FST/FSDB files and temporal pattern matching.9-
- AlicenseAqualityDmaintenanceEnables AI assistants to analyze hardware simulation VCD waveforms and GTKWave save files, providing access to signal values, bus definitions, and groupings without loading entire files.5MIT
- AlicenseAqualityBmaintenanceLocal MCP server for querying VCD waveform files via SQLite; enables AI agents to ask precise questions about signal values, transitions, and clock cycles without dumping raw VCD text.181MIT