JW

jiegec/waveform-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

49 stars 5 forks Качество 62 Тренд 27MIT

MCP-сервер для чтения файлов формы волны

Обзор

Сервер MCP (Model Context Protocol) для чтения и анализа файлов формы волны (формат VCD/FST) с использованием библиотеки Wellen. Встроенный двоичный файл будет на ~/.cargo/bin/waveform-mcp. Встроенная двоичная система будет находиться на уровне target/release/waveform-mcp. Сервер поддерживает два вида транспорта: - (по умолчанию): Использует стандартный вход/выход для связи MCP - : Использует потоковый HTTP-сервер для удаленного доступа в /mcp конечной точке При работе в режиме HTTP сервер прослушивает по указанному адресу связывания (по умолчанию: 127.0.0.1:8000). Режим HTTP позволяет совместно использовать хранилище формы волны для нескольких сеансов HTTP, позволяя удаленный анализ файлов формы волны.

Обзор (машинный перевод)

Сервер MCP (Model Context Protocol) для чтения и анализа файлов формы волны (формат VCD/FST) с использованием библиотеки Wellen.

Использование

###Установка

Установка через груз:

Строительный бинар будет на ~/.cargo/bin/waveform-mcp.

Установите вручную:

Построенный бинар будет на target/release/waveform-mcp.

###Бегущий

Сервер поддерживает два вида транспорта:

  • Stdio mode (по умолчанию): Использование стандартного ввода/вывода для связи MCP HTTP-режим: использует потоковый HTTP-сервер для удаленного доступа в конечной точке /mcp

При работе в режиме HTTP сервер слушает по указанному адресу связывания (по умолчанию: 127.0.0.1:8000). Режим HTTP позволяет совместно использовать хранилище формы волны для нескольких сеансов HTTP, позволяя удаленный анализ файлов формы волны.

Особенности

Открытый VCD (Value Change Dump) и FST (Fast Signal Trace) Перечислите все сигналы в форме волны с иерархическими путями Прочитайте иерархию модуля формы волны как изрезанное дерево

  • Значения сигнала считываются в конкретных временных индексах (одинарных или множественных) Получить метаданные сигнала (тип, ширина, диапазон индексов) Найти сигнальные события (изменения) в пределах временного диапазона
  • Значения времени формата с информацией о временной шкале (например, “10ns”, “5000ps”)

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Waveform MCP Server

An MCP (Model Context Protocol) server for reading and analyzing waveform files (VCD/FST format) using the wellen library.

Usage

Installation

Install via cargo:

cargo install waveform-mcp

The built binary will be at ~/.cargo/bin/waveform-mcp.

Install manually:

# Clone the repository
git clone https://github.com/jiegec/waveform-mcp
cd waveform-mcp

# Build the server
cargo build --release

The built binary will be at target/release/waveform-mcp.

Running

# Run the server with stdio transport (default)
target/release/waveform-mcp

# Run the server in HTTP mode
target/release/waveform-mcp --http

# Run the server in HTTP mode with custom bind address
target/release/waveform-mcp --http --bind-address 0.0.0.0:8000

The server supports two transport modes:

  • Stdio mode (default): Uses standard input/output for MCP communication
  • HTTP mode: Uses streamable HTTP server for remote access at /mcp endpoint

When running in HTTP mode, the server listens on the specified bind address (default: 127.0.0.1:8000). HTTP mode allows the waveform store to be shared across multiple HTTP sessions, enabling remote analysis of waveform files.

Features

  • Open VCD (Value Change Dump) and FST (Fast Signal Trace) waveform files
  • List all signals in a waveform with hierarchical paths
  • Read the waveform module hierarchy as an indented tree
  • Read signal values at specific time indices (single or multiple)
  • Get signal metadata (type, width, index range)
  • Find signal events (changes) within a time range
  • Format time values with timescale information (e.g., “10ns”, “5000ps”)
  • Streamable HTTP server support for remote access

Tools

The server provides 8 MCP tools:

  1. open_waveform - Open a waveform file

    • file_path: Path to .vcd or .fst file
    • alias: Optional alias for the waveform (defaults to filename)
    • overwrite: Optional flag to reopen a waveform whose id is already open (default: false); otherwise opening an id twice is an error

    When the file does not exist, files with a similar name in the same directory are suggested. Failures are reported as tool errors, like every other tool.

    Example response:

    Waveform opened successfully with alias: waveform.vcd
    
  2. close_waveform - Close a waveform and free its memory

    • waveform_id: ID or alias of the waveform to close

    Example response:

    Waveform 'waveform.vcd' closed successfully
    
  3. list_signals - List all signals in an open waveform

    • waveform_id: ID or alias of the waveform
    • pattern: Optional pattern (a string or an array of strings) matched against the full signal path, e.g. tb.dut.abc_bank. Multiple patterns are OR-ed
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →