Skip to main content
Glama
0Thomas1

Kanban MCP Server

by 0Thomas1
README.md
# Kanban-MCP

A Model Context Protocol (MCP) server for managing Kanban-style tasks with analytics, built using Node.js, TypeScript, and MongoDB (via Mongoose).

## Features

- Create, update, and manage tasks with priorities, tags, and statuses (todo, inProgress, done)
- Task analytics: lead time, cycle time, and status distribution
- MCP-compliant server with stdio transport
- MongoDB integration with user-based task filtering
- Task caching for performance

## Project Structure

```
Kanban-MCP/
├── src/
│   ├── index.ts            # Main MCP server logic
│   └── utils/
│       ├── mongoose.ts     # Mongoose DB utilities
│       ├── Task.d.ts       # Task type definitions
│       └── User.d.ts       # User type definitions
├── build/                  # Compiled JS output
├── .vscode/mcp.json        # MCP server config
├── package.json            # NPM dependencies and scripts
├── tsconfig.json           # TypeScript config
```

## Getting Started

### Prerequisites

- Node.js (v18+ recommended)
- MongoDB instance

### Setup

1. Clone the repository:
   ```sh
   git clone <repo-url>
   cd Kanban-MCP
   ```
2. Install dependencies:
   ```sh
   npm install
   ```
3. Configure environment variables:
   - Create a `.env` file in the root directory with:
     ```env
     MONGODB_URI=your_mongodb_uri
     KANBAN_USERNAME=your_username
     DBNAME=your_db_name
     ```
4. Build the project:
   ```sh
   npm run build
   ```
5. Start the MCP server:
    When starting the repo, VS Code will prompt you to start the MCP server.

## Usage

- The server exposes MCP tools for creating, moving, and prioritizing tasks.
- Analytics can be retrieved via the `tasks-analytics` prompt.
- See `src/index.ts` for tool and prompt definitions.

## Development

- Source code is in `src/`, compiled output in `build/`.
- TypeScript is used for type safety and modern JS features.
- Use the provided VS Code MCP config for local development.

## License

MIT
## Tech Stack

- **Node.js**: JavaScript runtime for server-side logic
- **TypeScript**: Strongly-typed language for safer code
- **MongoDB**: NoSQL database for task storage
- **Mongoose**: ODM for MongoDB integration
- **VS Code MCP**: Integration for Model Context Protocol tools

TDQS

B3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: add-tag modifies metadata, create-task creates new items, move-task changes workflow status, and set-prioity adjusts priority levels. There is no overlap in functionality, making tool selection straightforward for an agent.

Naming Consistency3/5

The naming is mixed: add-tag and move-task use verb-noun patterns, while create-task and set-prioity use verb-noun but with inconsistent spelling (e.g., 'prioity' vs. 'priority'). This reduces predictability, though the tools remain readable.

Tool Count4/5

With 4 tools, the count is appropriate for a kanban server, covering core operations like task creation, status movement, tagging, and priority setting. It is slightly lean but reasonable for the domain, lacking only minor features like task deletion or listing.

Completeness3/5

The toolset covers basic CRUD-like operations but has notable gaps: there is no tool to delete tasks, list tasks, or retrieve task details. This could lead to agent failures when full lifecycle management is needed, though core workflows are supported.

Maintenance

ActivityInactive
ResponsivenessNo issues