Skip to main content
Glama

Waveform MCP Server

by ynivin

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 file
  • pattern (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 file
  • signal_name (required): Full signal name
  • start_time (optional): Start time, default 0
  • end_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 file
  • expression (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"}}

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:

pytest

Usage

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

License

BSD 3-Clause License. See LICENSE for details.

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Enables analysis of RTL waveform files (VCD, FST) through WAL (Waveform Analysis Language). Supports signal inspection, transition extraction, and advanced waveform queries for hardware design verification.

  1. Tools
    1. get_signal_list
    2. get_signal_transitions
    3. get_waveform_length
    4. execute_wal_expression
    5. get_wal_help
    6. get_wal_examples
  2. Supported Formats
    1. Credits
      1. Installation
        1. Development
          1. Testing
            1. Usage
              1. Requirements
                1. License

                  Related MCP Servers

                  • -
                    security
                    A
                    license
                    -
                    quality
                    A comprehensive code analysis and management tool that integrates with Claude Desktop to analyze code at project and file levels, helping adapt changes to projects intelligently.
                    Last updated -
                    38
                    MIT License
                  • A
                    security
                    A
                    license
                    A
                    quality
                    Provides tools for analyzing project structures, searching through codebases, managing dependencies, and performing file operations with advanced filtering capabilities.
                    Last updated -
                    6
                    24
                    1
                    MIT License
                  • A
                    security
                    F
                    license
                    A
                    quality
                    Enables comprehensive video file analysis including extracting metadata, stream information, bitrate calculations, and generating technical reports. Supports all FFmpeg-compatible video formats with output in JSON, text, or Markdown formats.
                    Last updated -
                    4
                    9
                    1
                    • Apple
                    • Linux
                  • -
                    security
                    A
                    license
                    -
                    quality
                    Enables comprehensive code analysis including quality assessment, security vulnerability detection, refactoring suggestions, complexity calculations, and automatic documentation generation for multiple programming languages.
                    Last updated -
                    5
                    MIT License

                  View all related MCP servers

                  MCP directory API

                  We provide all the information about MCP servers via our MCP API.

                  curl -X GET 'https://glama.ai/api/mcp/v1/servers/ynivin/waveform-mcp'

                  If you have feedback or need assistance with the MCP directory API, please join our Discord server