Waveform MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
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: mcp-vcd
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.
Manage SysML2 projects; check, evaluate, verify, query, document and diagram models.
VaultCrux Memory Core — 32 tools: knowledge, decisions, constraints, signals, coverage
SysML v2 systems engineering: generate, verify, simulate and export system models from text.
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
- 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
- AlicenseAqualityCmaintenanceLocal 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.182MIT
- AlicenseAqualityAmaintenanceEnables read-only analysis of FST waveform files, including signal value queries, timing measurements, event search, latency analysis, and PNG plot generation using human-readable time addressing.8MIT