This project is a stdio MCP server that exposes Beads CLI commands as MCP tools. It lets MCP clients (for example VS Code Copilot Chat in agent mode) call Beads through structured tool invocations.
It maps MCP tool calls to Beads CLI operations:
beads_initbeads_readybeads_listbeads_showbeads_createbeads_closebeads_dep_addbeads_exec(advanced/raw command passthrough)
You need all of the following:
- Node.js installed (recommended Node 18+)
@beads/bdinstalled globally or locally (you needbd.exeon Windows)- Dolt installed and available in PATH (Beads uses Dolt for state/repository backend)
Global install:
npm install -g @beads/bdLocal install (inside this wrapper folder):
cd scripts/beads-mcp-server
npm install @beads/bdInstall Dolt from:
https://docs.dolthub.com/introduction/installation
After install, verify:
dolt --versioncd scripts/beads-mcp-server
npm installAdd this server under servers in your VS Code user MCP config.
You can omit BEADS_BIN, and the wrapper will use:
- Windows:
bd.exe - Linux/macOS:
bd
The wrapper supports these environment variables:
BEADS_CWD: default working directory for all Beads commandsBEADS_BIN: full path to Beads binary (bd.exeon Windows)
Notes:
- If a tool call passes
cwd, that value overridesBEADS_CWD. cwdcan be a normal path or afile:///URI.
- Save
mcp.jsonchanges. - Reload VS Code window.
- Start (or restart) the
beads-wrapperMCP server. - Call tools from your MCP client.
Initialize Beads in your project:
beads_initwithcwd
Check ready work:
beads_ready
Create an issue:
beads_createwithtitle, optionaltype, optionalpriority
Inspect and close:
beads_showbeads_close
Use this order when validating a new machine:
beads_execwith args['--version']beads_initbeads_readybeads_createbeads_list
This is normal for stdio MCP servers. They are mostly silent until a tool is called.
Usually means child-process execution/config mismatch on Windows.
Check:
commandisnode(or full path tonode.exe)argspoints to the realserver.mjsBEADS_BINpoints to a validbd.exe- Restart MCP server after config changes
Example symptoms:
- "failed to open Dolt store"
- "dolt is not installed"
Fix:
- Install Dolt
- Ensure
doltis in PATH - Restart VS Code and rerun
beads_init
If you see a warning about host defaulting to 127.0.0.1, this is informational for local use.
For remote Dolt, configure host explicitly through Beads/Dolt settings.
If you share/upload this wrapper, document these external requirements clearly:
- Node.js runtime
@beads/bdinstallation (global or local)- Dolt installation and runtime availability
Without Dolt, the MCP wrapper can start, but Beads initialization and state operations will fail.