Board
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@BoardClaim the next pending task"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Board — Kanban for Claude Code
A local-first kanban board that orchestrates Claude Code task execution. Create tasks in the UI, Claude Code picks them up via MCP tools or the built-in watcher, creates branches and PRs, and you review and merge — all from a single dashboard.
Features
Four-column board: Pending → In Progress → In Review → Done
Two execution paths: Manual (Claude uses MCP tools) or Watcher (auto-spawns
claude -p /next-task)Branch-per-task: Each task gets its own git branch and PR
Token exhaustion handling: Watcher detects quota errors, pauses with countdown, auto-resumes on reset
Single-user, local-only: Runs on
127.0.0.1, SQLite storage, zero external dependenciesSerial execution: One task at a time for predictable, reviewable results
Related MCP server: issue-tracker-mcp
Prerequisites
Node.js 20+
pnpm 10+
Claude Code CLI installed (
claudeon PATH)GitHub CLI (
gh) installed and authenticated (gh auth login)
Quick Start
# Install dependencies
pnpm install
# Start the dev server
pnpm dev
# Open the board
open http://localhost:3000On first launch, click + Project to register a git repository. Then create tasks and start the watcher.
MCP Installation
Register the Board MCP server with Claude Code so Claude can claim, submit, and query tasks:
claude mcp add board -- node /path/to/board/bin/mcp-server.tsOr use the Settings page (/settings) in the UI — it shows the exact command with a copy button.
After registering, Claude Code can use these MCP tools:
Tool | Purpose |
| Claim the highest-priority pending task |
| Submit work for review (creates PR metadata) |
| Mark a task as failed with error details |
| Query a task by ID |
| List tasks with optional project/status filters |
| List all registered projects |
| Slash command — quick task listing |
Development
pnpm dev # Start Next.js dev server
pnpm build # Production build
pnpm typecheck # TypeScript type checking (strict mode)
pnpm lint # ESLint
pnpm test # Unit + integration tests (Vitest)
pnpm test:watch # Tests in watch mode
pnpm test:e2e # End-to-end tests (Playwright)Database
The SQLite database lives at ~/.board/board.db by default. Override with:
BOARD_DB_PATH=/custom/path.db pnpm devLogs
Structured logs are written to ~/.board/logs/board.log via pino. Log level can be adjusted:
BOARD_LOG_LEVEL=debug pnpm devWatcher Interval
For testing or faster iteration, override the watcher tick interval:
BOARD_WATCHER_INTERVAL_MS=5000 pnpm dev # 5s instead of 60s defaultArchitecture
Browser → Next.js Server (HTTP API + UI) → SQLite (WAL mode)
↕ shared lib/core
bin/mcp-server.ts ← Claude Code (stdio MCP)Core design principles:
Protocol-agnostic core —
lib/core/contains all business logic (state machine, repos). MCP and HTTP API are thin adapters over the same core.Symmetric triggers — Manual slash commands and watcher spawns follow the same task lifecycle.
Local-first — Listens on
127.0.0.1, SQLite single-file DB, no cloud dependencies.
Project Structure
app/
(ui)/ Board UI (page, settings, projects/new)
api/ REST API routes
components/
board/ Board-specific components
ui/ UI primitives (Button, Input, etc.)
lib/
core/ Protocol-agnostic core (state machine, repos, git, db)
mcp/ MCP server implementation
watcher/ Watcher scheduler + token detection
api/ API client + response helpers
hooks/ React hooks (SWR-based)
bin/
mcp-server.ts MCP entry point (Claude Code subprocess)
db/
schema.ts Drizzle ORM schema
tests/
unit/ Unit tests
integration/ API integration tests
e2e/ Playwright E2E testsTesting
Unit tests (
tests/unit/): Core logic — state machine, repos, detection patternsIntegration tests (
tests/integration/): API routes with real SQLiteE2E tests (
tests/e2e/): Full Playwright scenarios including watcher + token pause
E2E tests use stub claude and gh binaries to simulate Claude Code and GitHub CLI without real API calls.
Tech Stack
Layer | Technology |
Framework | Next.js 15 (App Router) + React 19 |
Language | TypeScript 5.x (strict mode) |
UI | Tailwind CSS v4 |
Data Fetching | SWR |
ORM | Drizzle ORM |
Database | SQLite (better-sqlite3, WAL mode) |
Validation | Zod |
Logging | pino |
Testing | Vitest + Playwright |
Package Manager | pnpm |
License
Private project.
This server cannot be deployed
Maintenance
Related MCP Connectors
AI-native Kanban board — connect Claude to claim, work and move your tasks over MCP.
Kanban board for teams and coding agents: manage tasks, subtasks, sprints and wiki pages via MCP.
Task & board management for AI agents + humans. Kanban, comments, digests via MCP.
Remote MCP for Kanban AI boards—manage projects, tasks, and comments from AI tools.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA Kanban board MCP server and Claude Code plugin that allows AI agent teams to create, track, and manage tasks through a structured workflow. It features a web UI for real-time status monitoring and enables users to review, approve, or reject task submissions.-
- FlicenseNot gradedqualityDmaintenanceA minimal MCP server that enables AI assistants to manage a kanban issue board. It provides tools for listing, creating, updating, and deleting issues with support for both local development and team deployments.10-
- AlicenseNot gradedqualityDmaintenanceMCP server for a kanban task board that lets Claude Code manage tasks with priority, categories, and multi-agent safety, plus a web UI for visual drag-and-drop.4 npmMIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that uses Git as a backend for a collaborative todo system, enabling natural language interaction with Claude Desktop/Claude Code. It features a web-based Kanban board and Telegram bot for multi-interface todo management.MIT