Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Self-hosted kanban for humans and agents. One 4 MB binary, starts in 2 ms, zero setup.
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.
The maker has not listed install details in the registry. See the maker’s README below.
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 emanuele-em, 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 (0.1.3) reached the registry 11 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Rust on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, ProAgentStore
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.
MCP-first control plane for ProAgentStore agents and private instances.
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 | 简体中文
Kanzo is a kanban board in your browser and an MCP server in one 4.7 MB program, so you and your coding agents work on the same tasks: on one computer, or on one board shared by all of them. No account, no server, no setup: run kanzo and it works.
You never edit a file. Everything is done in one of three places:
[!TIP]
Just ask your agent: *"install Kanzo from github.com/emanuele-em/kanzo."*
curl -LsSf https://github.com/emanuele-em/kanzo/releases/latest/download/kanzo-installer.sh | sh
For macOS and Linux, including every Raspberry Pi. On Windows, in PowerShell:
powershell -ExecutionPolicy Bypass -c "irm https://github.com/emanuele-em/kanzo/releases/latest/download/kanzo-installer.ps1 | iex"
Both add Kanzo to your PATH, for terminals you open from then on. To use it in the one you installed from, run source $HOME/.cargo/env (env.fish in fish), or open a new one.
Or download the Windows zip from the latest release and put kanzo.exe in a folder named bin on your PATH, like %USERPROFILE%\.cargo\bin: the board updates itself only there.
Every release is signed by GitHub: check a download with gh attestation verify --repo emanuele-em/kanzo. Or with Cargo:
cargo install kanzo
[!TIP]
Just ask your agent: *"start Kanzo and keep it running at login."*
kanzo
The board opens at http://localhost:4242. That's all the setup there is: the first run creates ~/kanzo, and the whole board lives in it.
| Key | Does |
|---|---|
n | New task |
/ or ⌘K | Search every project |
f | Filter the board; ↵ keeps the filter |
Tab | Move to the description |
⌘↵ | Save and close |
Esc | Keep what you typed in a description or tags; cancel other fields |
[!TIP]
Just ask your agent: *"mark kanzo#12 as human, and set its URL to github.com/acme/api/pull/482."*
⌘-click them, or drag on empty board space, then move, tag or delete them together. Drag one and the rest follow.url.[name](file:///path) in a description or comment opens in your editor.⌘1–⌘8 pick a project, ⌘9 the last one, ⌘0 all of them. On macOS, kanzo then opens it instead of a tab, on the default port.[!TIP]
Just ask your agent: *"add Kanzo as your MCP server,"* then restart it.
claude mcp add kanzo --scope user -- kanzo mcp # Claude Code
codex mcp add kanzo -- kanzo mcp # Codex
Other MCP clients: run kanzo mcp (apps like Raycast need the full path, from which kanzo), or use the running board at http://localhost:4242/mcp.
Then ask: *"take the next task from kanzo and do it."* The agent:
doing and comments as it works;review, comments how to resume its session.Turn on Backlog in Settings for a column agents leave alone, until you move its tasks to todo.
[!TIP]
Just ask your agent: *"make kanzo#12 wait on #10 and #11."*
waits_on.next_task skips it, and its card is dimmed and says what it waits on. You can still move it yourself.done. A task in review still blocks.is:waiting.[!TIP]
Just ask your agent: *"take the next kanzo task tagged billing,"* or *"list what's left in kanzo with tag:billing."*
The board's filter (f), search (/) and the filter of list_tasks and next_task all understand the same words, like on GitHub:
- negates a qualifier: tag:billing -status:done.| Qualifier | Finds | Example |
|---|---|---|
tag: | that exact tag | tag:bug, tag:"needs review" |
status: | a column | status:doing |
project: | a project | project:api |
title:, description:, url:, comment: | text in that field | title:login, comment:"on hold" |
id:, comments:, images: | a number, or a range | id:12, comments:>2, images:1..3 |
created:, updated: | a date, or a range | created:2026-11-05, updated:<2026-01-31 |
is:human | tasks for you, not agents | -is:human |
is:waiting | tasks waiting on unfinished ones | -is:waiting |
has:, no: | description, tags, url, comments or images | has:url, no:tags |
Anything else is plain text. Use quotes for a phrase, "on hold", or to look for text that reads like a qualifier, "tag:bug". Agents can't filter through a property you've hidden in Settings.
Two ways, neither with any setup: share one board live, or sync it between machines.
[!TIP]
Just ask your agent: *"share my Kanzo board"* on one computer, and *"join the Kanzo board at 192.168.1.20"* on the others.
Several computers, one board, at the same time: everyone sees the same tasks, and every agent works on them.
Nothing restarts and nothing needs configuring. Their board shows the shared one, and their agents use it through the same kanzo mcp, still finding the project from the repo they work in. Turn sharing off, or click Leave, at any time.
From a terminal, or for an agent, it's kanzo share on and kanzo join , then kanzo share off and kanzo leave.
The same two commands work wherever the board lives; only the address changes:
Your computer shares its board. Others join it from theirs, on the same network.
flowchart LR
B["💻 Laptop B kanzo#nbsp;join#nbsp;192.168.1.20 "] -- home network --> A["💻 Laptop A 192.168.1.20 kanzo#nbsp;share#nbsp;on "]
A Raspberry Pi keeps the board. Every computer joins it, and none has to stay on.
flowchart LR
A["💻 Laptop A kanzo#nbsp;join#nbsp;192.168.1.50 "] -- home network --> pi["🍓 Raspberry Pi 192.168.1.50 kanzo#nbsp;share#nbsp;on "] B["💻 Laptop B kanzo#nbsp;join#nbsp;192.168.1.50 "] -- home network --> pi
The Raspberry Pi is somewhere else, over the internet. Put a VPN on the Pi and on each computer, like Tailscale, NetBird or WireGuard: kanzo share on then shows the Pi's VPN address too.
flowchart LR
A["💻 Laptop A kanzo#nbsp;join#nbsp;100.101.32.7 "] -- VPN --> net(("🌐 Internet")) B["💻 Laptop B kanzo#nbsp;join#nbsp;100.101.32.7 "] -- VPN --> net net -- VPN --> pi["🍓 Raspberry Pi 100.101.32.7 kanzo#nbsp;share#nbsp;on "]
On a Pi, kanzo service install keeps the board running after a restart. There are no logins: share only on a network you trust.
[!TIP]
Just ask your agent: *"sync my Kanzo board,"* or the first time, *"set up Kanzo sync with github.com/you/kanzo-data."*
To carry the board between machines you use one at a time, a private git repo you own keeps it in step.
~/kanzo a git repo and pushes the board.From then on, choose Sync, or run kanzo sync, when you switch machines. It commits the board and pulls or pushes it, and it's safe while the board and your agents are running. If both machines changed the board, Kanzo asks which one to keep. To move to another repo, change it in Settings, under Sync.
| Command | Does |
|---|
| kanzo | Starts the board at http://
Only the beginning is shown; read the rest in the repo