Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Portable MCP runtime for RTL logs and VCD; repository setup adds FSDB and site EDA integration
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"traceweave": {
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}ターミナルでこれを実行します
claude mcp add traceweave -- uvx traceweave-mcpプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"traceweave": {
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"traceweave": {
"type": "stdio",
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント gokeshenzhen で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(2.0.2)がレジストリに届いたのは2 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Aiterm MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
English · 简体中文
An MCP server for evidence-driven simulation debugging
TraceWeave is an MCP server for RTL / SoC debugging. It connects compile records, simulation logs, VCD/FSDB waveforms, and RTL source to your AI assistant, helping you work from a failed simulation to the relevant time, signals, and driving logic.
Use it with Claude Code, Codex, Copilot, or another MCP client. Describe the problem in natural language; the assistant uses tools to investigate, trace, and verify, with evidence you can review.
Use Cases · Installation · Client Setup · Start Debugging · Tool Quick Reference · FAQ · Documentation and Feedback
| Problem | How TraceWeave helps |
|---|---|
| A simulation times out or hangs, with no clear starting point | Summarize failures and scan interface handshakes to narrow down the affected interfaces and time window |
| A scoreboard mismatch or different results between runs | Compare failure records and waveforms, locate observed differences, and trace data and control sources on both sides |
| A signal becomes X/Z | Follow drivers and review waveform history to check whether a register sampled and retained an unknown value |
| Packed buses are hard to read, or TL-UL requests are not completing | Inspect address, data, and control fields individually, then check request/response handshakes, latency, and completion |
| Suspected ties, unconnected inputs, or magic-word conditions | Statically scan source code for constant connections, open inputs, and constant comparisons as investigation leads; no simulation run or waveform required |
| A deep SoC hierarchy with many modules and interfaces | Browse hierarchy on demand, locate instances and source files, and follow drivers, consumers, and connectivity paths |
| A debugging hypothesis needs evidence | Sample by cycle and check timing conditions, handshake stability, and transaction completion |
Supports VCS / Xcelium / Verilator simulation logs and VCD / FSDB / FST waveforms. Exported formal waveforms can also be queried; automatic artifact discovery currently supports JasperGold.
Optional FST support on Linux provides discovery, basic reads, fixed bit selections, expressions, cycle sampling, protocol and transaction analysis, cross-format comparison and X history. The summary lists the currently accepted tools.
Signal tracing (driver, load, and connectivity path queries) follows Verdi NPI → Source Graph → basic static analysis (Legacy Static) by default. It first queries the elaborated KDB; when NPI is unavailable or cannot provide a trustworthy result, it tries Source Graph without a commercial license, then falls back to basic static analysis where supported.
Source Graph counts independent structural writers separately from assignment statements. All retained branch evidence remains available; traversal reports writer, assignment inspection, and evidence limits separately. Overlapping writers are structural evidence, not proof of an observed value conflict. Bit provenance explicitly distinguishes found, proved_no_driver, and unknown, with reason codes and driver_set_complete. A budget or unsupported write never proves absence. If Static also cannot handle an inconclusive Source Graph query, the bounded Source Graph evidence and both attempts remain visible. Driver-chain and provenance rows share identical metadata within a writer; statement_evidence retains every source line and column. The legacy source_line names the first entry. query_instance_path names the queried instance, while resolved_instance_path keeps its historical head-driver meaning. VCD searches explain that direction=null means unavailable metadata.
Driver output migration: explain_signal_driver now defaults to traceweave.driver.compact.v1. Each response contains all retained evidence, with identical statement semantics and ordered locations/indices shared in typed evidence_tables. Legacy scripts should request output_format="full" to retain the original JSON shape and indentation, or decode the response:
from src.evidence_output import expand_compact_result
driver = expand_compact_result(text_content.text) print(driver["driver_chain"])
Reading only response["result"] does not expand its references. Table entries and location occurrences are not writer counts. Other tools keep their defaults and traceweave.compact.v1 contract. Distinct evidence can still produce large responses; this format does not guarantee inline delivery by every client.
Hierarchy handles live only in the server process. An explicit driver compile_context can recover a missing handle once under a 30-second, 4,096-source-file, 128-MiB read budget (stricter hierarchy settings apply). hierarchy_recovery reports reuse, rebuilding or a blocker. Supplied identity tokens are revalidated; without a historical source fingerprint, recovery establishes current sources only. Structural scanning remains a separate step.
Capabilities for large designs, with selected examples of validated scale:
sweep_handshakes discovers AHB / valid-ready interfaces and checks stalls, payload stability, and premature valid/HTRANS deassertion. A recorded design with 78,817 total signals and a 2.59 ms waveform yielded 49 candidate interfaces involving 262 clock/protocol signals; 35 interfaces were checked in about 4.65 minutes, with 14 skipped and partial coverage. Runtime and coverage depend on the waveform, interface types, and resource limits.parse_sim_log has been verified on a 1 GiB synthetic log with 2,097,152 lines, finding all four errors at the beginning, middle, and end.Requires Python 3.11+. Choose the installation that fits your environment:
| Installation | Intended use |
|---|---|
| Repository | Simulation hosts with an existing Verdi installation, for FSDB, Source Graph, and optional NPI / LSF |
| PyPI | Log and VCD analysis, or Source Graph without a commercial license |
git clone https://github.com/gokeshenzhen/TraceWeave.git
cd TraceWeave export VERDI_HOME=/path/to/verdi bash scripts/install.sh
The installer prepares the Python environment, Source Graph, and FSDB reader, then checks the runtime. It leaves shell startup files and MCP client configuration untouched. FSDB support builds against the Synopsys FSDB Reader SDK in VERDI_HOME; TraceWeave does not redistribute its headers or libraries. Use of the FSDB Reader is subject to the applicable VC Apps Access Program Agreement (or successor). NPI and KDB operations also require the appropriate EDA runtime and license from your site.
For an existing installation, start with a read-only check:
bash scripts/install.sh --check
python3.11 -m pip install "traceweave-mcp[source-graph]"
traceweave-mcp --doctor
For logs, VCD, and basic static analysis only, install traceweave-mcp without [source-graph]. The PyPI package does not include the FSDB reader; use the repository installation for FSDB.
Install the extra in the MCP server's Python environment: python3.11 -m pip install "traceweave-mcp[fst]". For a repository installation, use .venv/bin/python -m pip install "pylibfst==0.2.1". Reconnect the server, then check traceweave-mcp --doctor or get_sim_paths. Existing VCD/FSDB users do not need this dependency.
For example, ask: “Find the FST waveform under /path/to/run, show its summary, find top.data, and read its transitions from 10 ns to 20 ns.” The basic tools preserve X/Z and distinguish missing recording intervals from observed values. Nonzero time offsets, real/string signals, external hierarchy files, and whole-file gzip containers are currently unsupported. Reads exceeding the bounded index, native memory, result, or time limits stop explicitly; narrow the query or use a smaller dump. See FST boundaries and resource limits.
Use the same analysis tools to inspect FST handshakes, reconstruct transactions, compare an FST signal against VCD/FSDB, or trace an earlier X after its input has recovered. Source-based analysis keeps its usual compile-context prerequisites. Recording gaps and incomplete clock history remain partial evidence.
After a repository installation, generate a client configuration template with absolute paths:
| Client | Generate configuration template |
|---|---|
| Claude Code | bash scripts/install.sh --print-config claude |
| Codex | bash scripts/install.sh --print-config codex |
| Copilot | bash scripts/install.sh --print-config copilot |
These commands only print templates. Add the output to your client's MCP configuration, supply any required site EDA environment variables, and reconnect the server. See the client configuration reference for complete examples.
Other MCP clients supporting stdio can use these connection settings:
| Installation | command | args |
|---|---|---|
| Repository | /.venv/bin/python | [" /server.py"] |
| PyPI | traceweave-mcp, or its absolute path | [] |
If Verdi/NPI licenses are available only on LSF compute nodes, provide these settings to the MCP server process. Replace digital with your queue:
export TRACEWEAVE_NPI_EXECUTION=lsf
export TRACEWEAVE_NPI_LSF_QUEUE="digital"
The client must inherit or explicitly pass these variables. Project files, the TraceWeave installation, and cache directories must be visible at the same absolute paths on submission and compute nodes. See the [LSF configuration reference](https://github.com/gokeshenzhen/TraceWeave/blob/main/docs/
冒頭だけを表示しています。続きはリポジトリで読めます