Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
C++ code coverage on Windows for AI agents. Find uncovered code from PDBs, no rebuild.
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.
COVDBG_PROJECT_TOKEN, COVDBG_OUTPUTValues marked secret are keys to your account. Never share them or paste them into a chat.
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
Fill in the empty values before running it.
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.
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.
COVDBG_OUTPUT envThese 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 6, 2026
The registry name was verified against the domain covdbg.com (the registry checks domain ownership)
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.
You need to fill in: COVDBG_PROJECT_TOKEN
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 (1.5.1) reached the registry 9 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need MCPB on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, topo^alpin
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
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.
Avalanche bulletins and mountain weather forecasts for any place in the Alps.
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.
MCP server for covdbg: C++ code coverage on Windows for AI agents. Run tests, find uncovered code, and add targeted tests. No rebuild required.
covdbg measures coverage of the Windows binaries you already build, using their PDB debug information: x64, ARM64 and 32-bit x86. It works like a debugger: it starts your executable, reads the PDB, and places lightweight probes while the program runs. The MCP server is built into the covdbg executable (since v1.3.0) and is started with covdbg mcp.
This repository holds the MCP registry metadata (server.json, glama.json) and the MCP Bundle manifest (manifest.json) for covdbg. The server itself ships with covdbg.
.covdb) with read-only SQL, and merge them, also across checkouts and builds.covdbg login (covdbg 1.4 and newer sign in to one team, and runs need a seat in that team), or COVDBG_PROJECT_TOKEN for CI. A public repository in GitHub Actions needs neither (covdbg 1.5 and newer, see Licensing in CI)..covdbg.yaml next to the target executable, or a config_path passed to run (see the configuration reference)%LocalAppData%\Programs\Liasoft\covdbg and adds that directory to your user PATH.PATH yourself. Keep the agent DLLs next to covdbg.exe: covdbg looks for them only there.There is no separate 32-bit covdbg. The x64 build ships libcovdbg32.dll, a 32-bit build of its agent, and measures 32-bit programs with the same covdbg.exe.
Then open a new terminal and sign in:
covdbg --version
covdbg login
Sign-in is team-scoped: in the browser you choose one team (your personal team, or a team you own or hold a seat in), and the agent's runs are licensed for that team. Use covdbg login --team to choose it up front, and covdbg whoami to see which team is active.
In CI, set COVDBG_PROJECT_TOKEN in the server's environment; the run is licensed for the token's team.
A public repository in GitHub Actions needs no project token (covdbg 1.5 and newer). Grant the job permissions: id-token: write: without COVDBG_PROJECT_TOKEN and without a stored sign-in, covdbg presents the token GitHub issues to the job, which names the repository it runs in. GitHub issues no such token to a pull request from a fork. A private repository still needs a project token, and a project token that is set takes precedence.
The server uses stdio transport. Start it from your project directory, or pass --workspace .
| Option | Environment variable | Default | Purpose |
|---|---|---|---|
--workspace | working directory | The project directory; the default root for discover | |
--query-timeout | COVDBG_MCP_QUERY_TIMEOUT_MS | 5000 | How long one query statement may run, 1 to 600000 ms (covdbg 1.5 and newer). The option wins over the variable. |
From the project directory:
claude mcp add covdbg -- covdbg mcp
Or add a project .mcp.json:
{
"mcpServers": { "covdbg": { "command": "covdbg", "args": ["mcp"] } } }
.vscode/mcp.json:
{
"servers": { "covdbg": { "type": "stdio", "command": "covdbg", "args": ["mcp", "--workspace", "${workspaceFolder}"] } } }
.cursor/mcp.json:
{
"mcpServers": { "covdbg": { "command": "covdbg", "args": ["mcp"] } } }
covdbg.mcpb from the latest release.covdbg.exe. The default is the MSI install location.covdbg login; runs are then licensed for the team you signed in to (see covdbg whoami).The bundle does not contain covdbg itself. It launches your installed covdbg.exe, so covdbg updates take effect without a new bundle.
| Tool | Purpose | Main inputs |
|---|---|---|
guide | Workflow and configuration guidance. Call it before the first run. | optional topic (workflow, config, excludes, baseline, merging, uncovered, children, libraries) |
discover | Find executables and coverage databases | optional root |
run | Start a coverage run; returns a run session right away | target; optional target_arguments, config_path, output_path, follow_children |
wait_run | Wait briefly or collect the completed result | session_id; optional timeout_seconds |
cancel_run | End a run: covdbg, the target and every process they started | session_id |
open_coverage | Open an existing database read-only | path |
files | Rank files by uncovered lines | session_id; optional limit, max_coverage_percent |
code | Read uncovered source segments with context | session_id, file_path |
query | Run one read-only SQL statement, within a time limit | session_id, sql; optional max_rows |
merge | Combine databases, also from different checkouts and builds | input_paths, output_path |
close | Release a run or coverage session | session_id |
run-; coverage session IDs start with covdb-.wait_run has seen it finish, it no longer takes a slot.wait_run blocks for at most 30 seconds. If it reports stillRunning, call it again.success, nothing_measured, license_failure, or error. nothing_measured (no_functions_to_track before covdbg 1.5.1) means the target ran to its end, but no function passed the coverage filter, so the database covdbg wrote is empty; outputLines say why, after "nothing was measured". Before covdbg 1.5.1, the target did not run at all.outputLines, below the program's output, how the program exited.cancel_run, and close on a run that is still going, end the run's whole process tree at once: covdbg, the target and every process either of them started (covdbg 1.5.1 and newer; before, a process they started kept running until close). A run that cannot be set up that way is not started, and run says why..covdbg.yaml that covdbg refuses, such as a value of the wrong shape (include: "src/**" where a list belongs) or an unknown type:, ends the run with outcome error, and outputLines name the key with its line and column. A key covdbg does not know is a warning in outputLines, and the run goes on (covdbg 1.5.1 and newer).follow_children measures the processes the target starts. A launcher without debug information of its own, such as ctest.exe or cmd.exe, runs unmeasured and covdbg measures its children, so run with target ctest.exe, target_arguments --test-dir build and follow_children measures the test binaries CTest runs. Every process of one binary adds its hits to one database (covdbg 1.5 and newer).query stops a statement still running at the time limit, 5000 ms unless --query-timeout says otherwise, and answers with an error; the session stays open. It also bounds a statement's size: at most 100 KiB of SQL, expressions nested 250 deep, 100 SELECTs in one compound, LIKE/GLOB patterns of 1000 bytes, and 16 MiB for any one string or blob (covdbg 1.5 and newer).merge matches source files recorded in different checkouts by their path relative to each run's source_root, and keeps different builds at one module path, such as the x64 and ARM64 builds of a test, side by side (covdbg 1.5 and newer). remappedModules and remappedFiles say how many it matched that way..covdb files written by covdbg 1.5.0 or earlier, and covdbg 1.5.0 refuses those of 1.5.1. open_coverage names both versions. Record that coverage again, with the same covdbg everywhere databases are merged or opened.From covdbg 1.5.0, the installer can upgrade or uninstall covdbg while a client holds covdbg mcp open, without a reboot. The running server keeps answering from the old version, and the runs it starts use the newly installed covdbg.exe. Reconnect the server to get the new version of the server itself: in Claude Code, /mcp → covdbg → Reconnect.
| Variable | Purpose |
|---|---|
COVDBG_PROJECT_TOKEN | Project token for CI or headless use. Local use relies on covdbg login, which is bound to one team. |
COVDBG_OUTPUT | Fixed default output location. Avoid reusing one location across a suite, since later runs overwrite earlier results. |
COVDBG_MCP_QUERY_TIMEOUT_MS | Time limit for one query statement, 1 to 600000 ms (default 5000). A value outside that range is ignored. --query-timeout wins when both are given. |
Keep version in manifest.json and server.json, and the release tag in the server.json package URL, in sync.
.mcpbignore limits it to manifest.json, icon.png and LICENSE: npx @anthropic-ai/mcpb validate manifest.json
npx @anthropic-ai/mcpb pack . covdbg.mcpb
v and upload covdbg.mcpb as an asset.fileSha256 in server.json: (Get-FileHash covdbg.mcpb -Algorithm SHA256).Hash.ToLower()
com.covdbg/* namespace uses DNS authentication on covdbg.com: mcp-publisher login dns --domain covdbg.com --private-key <key>
mcp-publisher publish
glama.json from the repository.The metadata in this repository is licensed under the Apache License 2.0. covdbg itself is licensed separately, with Free, Team, and Enterprise plans. See [covdbg.com](http
Only the beginning is shown; read the rest in the repo