Harbor MCP
Click on "Install 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., "@Harbor MCPlist open issues in project KAN"
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.
What is Harbor?
Harbor is a single-operator Kanban that stays on localhost. Use the web UI to manage projects and issues, or drive the same board from any MCP client (Claude, Cursor, and others) through a stdio MCP server that talks to the Nest API.
MCP client ──stdio──► Harbor MCP ──HTTP Bearer──► Nest API ──► Postgres
Browser ─────────────────────────► Harbor UI ──/api──► Nest APIPackage | Path | Role |
|
| NestJS + Prisma + OpenAPI |
|
| Harbor UI (Vite + React) |
|
| Stdio MCP server |
Related MCP server: kanban-mcp
What you can do
Projects & boards — multiple projects, Columns and List layouts, column colors, reorder, done columns
Issues — create, edit, move, archive/restore, delete; priority, type, due date, effort (hours / LOC)
Dependencies — issue links (
blocks,relates_to,duplicates) with cycle checks; blocker summaries via MCPLabels, comments, activity — label attach/detach, threaded comments, activity history
Attachments — multipart file upload in the issue drawer (UI/API; max 20 MB)
Live updates — board refreshes over SSE when the API or an MCP agent changes data
Global search —
Ctrl/Cmd+Kacross projectsMCP tools — projects, columns, issues, links, blockers, epics, labels, comments, activity
Auth — first-run admin signup, cookie sessions for the UI, Bearer MCP tokens from Harbor
Quick start
Requirements: Bun 1.3+, Docker
git clone git@github.com:Eidantz/Harbor.git
cd Harbor
bun install
bun run setup:env # copies .env.example → .env and links apps/api/.env
bun run docker:up # builds & starts db + api + webService | URL (defaults) |
Harbor UI | |
API health | |
OpenAPI |
Ports come from .env (WEB_PORT, API_PORT, POSTGRES_PORT). Defaults are 3010 / 3001 / 5433 so Harbor can sit next to stacks that already use 3000 / 5432 (e.g. Langfuse).
On a fresh database, open the UI and create the admin account. After that, the same screen is sign-in. Seed data includes sample project KAN.
Stop the stack with bun run docker:down.
MCP
Harbor exposes a stdio MCP server any compatible client can launch (Claude Desktop / Claude Code, Cursor, and others).
Start Harbor (
bun run docker:up) and complete admin signup.In the UI: MCP tokens → Create token (copy it once).
Build the server:
bun run build:mcpPoint your client at the server with the same command + env:
{
"mcpServers": {
"harbor": {
"command": "node",
"args": ["/absolute/path/to/Harbor/apps/mcp/dist/index.js"],
"env": {
"KANBAN_API_URL": "http://localhost:3001",
"KANBAN_API_TOKEN": "<paste token from Harbor>"
}
}
}
}Client | Where to put the config |
Claude Desktop | Claude → Settings → Developer → Edit Config ( |
Claude Code | Project or user |
Cursor | Copy |
Use an absolute path to apps/mcp/dist/index.js when the client does not start in the repo root. Reload MCP after changing config.
Full tool catalog: apps/mcp/README.md.
Development
Keep Postgres in Docker; run API and web on the host:
bun run setup:env
docker compose up -d db
bun run db:migrate:deploy
bun run db:seed
bun run dev # API :3001 + web :3000Useful scripts: bun run dev:api, bun run dev:web, bun run db:studio, bun run smoke.
Auth & privacy
Client | Mechanism |
Harbor UI | First-run signup, then login → HTTP-only session cookie |
MCP / scripts |
|
Compose publishes ports on
127.0.0.1only.Real secrets live in
.envand local MCP config files (e.g..cursor/) — gitignored. Use.env.exampleanddocs/mcp.example.jsonas templates.Rotate
SESSION_SECRETand revoke MCP tokens for anything beyond casual local use.
License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceA 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
- AlicenseBqualityDmaintenanceAn MCP server that provides a database-backed kanban board with 40+ tools for AI agents to track issues, features, todos, epics, and diary entries across projects, including status workflows, relationships, and semantic search.4578MIT
- Alicense-qualityAmaintenanceMCP server for kanban-tui, a terminal-based task manager, that exposes task, board, and column management commands for AI agents to interact with.267MIT
- Alicense-qualityAmaintenanceMCP server that enables AI agents to manage tasks, boards, lists, and comments on a Kanban-style project management system through JSON-RPC methods.62AGPL 3.0
Related MCP Connectors
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Eidantz/Harbor'
If you have feedback or need assistance with the MCP directory API, please join our Discord server