Skip to main content

MCP server for RTL waveform analysis using WAL

Project description

WAL MCP Server

MCP (Model Context Protocol) server for RTL waveform analysis using WAL (Waveform Analysis Language).

Supported Waveform Formats

  • VCD (Value Change Dump)
  • FST (Fast Signal Trace)
  • Any other formats supported by WAL

Installation and Usage

pip install wal-mcp

Add to your MCP client configuration:

{
  "mcpServers": {
    "wal-mcp": {
      "type": "stdio",
      "command": "wal-mcp-server",
      "args": []
    }
  }
}

For WAL expression syntax and advanced examples, see the WAL documentation.

This package also comes with script to install a skill and sufficient reference material to teach an AI agent how to write WAL. This allows you to use natural language to analyze waveforms.

To install the skill into .claude/skills/ your current directory run:

wal-mcp-install-skills

Or pass a filepath to the script to install elsewhere.

Alternatively, if you are using the Github CLI application you can install the skill using that.

gh install skill ktbarrett/wal-mcp

Development

To set up a development environment, install the dev group and the current package. This is easiest done with uv.

uv sync

There are also pre-commit hooks which will run lints whenever you make a commit. prek is the recommended pre-commit hook runner.

First install prek if you already haven't.

uv tool install prek

Then install the git hooks.

prek install

Testing

pytest is used for testing. Run the following to run all the tests and collect coverage.

pytest

You can better visualize the coverage by using a coverage report format such as html.

coverage html

Credits

Built on WAL (Waveform Analysis Language), a domain-specific language for hardware waveform analysis. See the WAL website for more information.

License

BSD 3-Clause License. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wal_mcp-0.2.0.tar.gz (164.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wal_mcp-0.2.0-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file wal_mcp-0.2.0.tar.gz.

File metadata

  • Download URL: wal_mcp-0.2.0.tar.gz
  • Upload date:
  • Size: 164.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for wal_mcp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 218fb082af9e005adc91e0a27eec5afeef5c0ba8c7749ac9784b81d27affb21b
MD5 de5a64bc3aaddba371b5e1764ae1b0c4
BLAKE2b-256 40dae8a8d98566abbe6149ea110d1d5b0f750702b4358bdbdb4090f9e12e8953

See more details on using hashes here.

File details

Details for the file wal_mcp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: wal_mcp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for wal_mcp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 929efebb1066d2b5cd9a8fcb66ade2a5ffd7faa9cdddd6db9c47980855ec5e17
MD5 efec7aa10901968eb4abc5d50bc89152
BLAKE2b-256 814e24933169aeec1d605009bce05c8225eb2dd508905c45bab51487b04d1719

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page