GitHub
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
Description from the maker (original English)
Portable MCP runtime for RTL logs and VCD; repository setup adds FSDB and site EDA integration
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"traceweave": {
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}Run this in your terminal
claude mcp add traceweave -- uvx traceweave-mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"traceweave": {
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"traceweave": {
"type": "stdio",
"command": "uvx",
"args": [
"traceweave-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account gokeshenzhen, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.0.2) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: GitHub, Desktop Commander, Cloudflare MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
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/
Only the beginning is shown; read the rest in the repo