MCP Backlog Server
Manages backlog items and todos with status tracking, priorities, and dependencies. Stores work items as human-readable markdown files with automatic versioning.
README
MCP Backlog Server
A Model Context Protocol (MCP) server for managing backlog items and todos. This server provides a structured way to track work items, their status, and associated tasks.
Features
- Backlog Management: Create, read, update, and archive backlog items
- Todo Tracking: Manage todos within backlog items with dependencies
- Status Workflow: Track items through states: new → ready → review → done
- Priority Levels: Organize items by high, medium, or low priority
- Versioning: Automatic versioning when amending backlog items
- Markdown Storage: Human-readable markdown files with frontmatter
Installation
Quick Start (Zero Install)
Using NPX (Node.js):
npx -y github:rwese/mcp-backlog
Using Bunx (Bun - Faster):
bunx --bun github:rwese/mcp-backlog
Global Installation
With Bun (Recommended):
# From GitHub (latest)
bun add -g github:rwese/mcp-backlog
# From NPM (when published)
bun add -g @rwese/mcp-backlog
With NPM:
# From GitHub
npm install -g github:rwese/mcp-backlog
# From NPM (when published)
npm install -g @rwese/mcp-backlog
From Source
git clone https://github.com/rwese/mcp-backlog.git
cd mcp-backlog
bun install # or npm install
bun run build # or npm run build
Usage
In your MCP client configuration
Add to your MCP client's configuration file:
Using NPX from GitHub (Recommended):
{
"mcpServers": {
"backlog": {
"command": "npx",
"args": ["-y", "github:rwese/mcp-backlog"]
}
}
}
Using Bunx (Faster):
{
"mcpServers": {
"backlog": {
"command": "bunx",
"args": ["--bun", "github:rwese/mcp-backlog"]
}
}
}
Using global install:
{
"mcpServers": {
"backlog": {
"command": "mcp-backlog"
}
}
}
Using NPX:
{
"mcpServers": {
"backlog": {
"command": "npx",
"args": ["@rwese/mcp-backlog"]
}
}
}
Using local build:
{
"mcpServers": {
"backlog": {
"command": "node",
"args": ["/path/to/mcp-backlog/dist/index.js"]
}
}
}
Tools
backlog-read
List and filter backlog items.
Arguments:
status(optional): Filter by status (new, ready, review, done, reopen, wontfix)priority(optional): Filter by priority (high, medium, low)
backlog-write
Create and manage backlog items.
Arguments:
action: Operation to perform (create, list, amend, approve, submit, reopen, wontfix)topic: Topic name for the backlog itemdescription: Description of the work itempriority(optional): Priority level (default: medium)status(optional): Status for amend operation
Examples:
// Create a new backlog item
{
"action": "create",
"topic": "Add user authentication",
"description": "Implement JWT-based authentication",
"priority": "high"
}
// Amend an existing item
{
"action": "amend",
"topic": "Add user authentication",
"status": "ready"
}
backlog-done
Mark backlog items as complete.
Arguments:
action: done or listtopic: Topic name to mark as donesummary(optional): Completion summary
backlog-todo-read
List todos for a backlog item.
Arguments:
topic: Backlog item topic (required)status(optional): Filter by statusbatch(optional): Filter by batch
backlog-todo-write
Create and update todos within backlog items.
Arguments:
action: create, update, or listtopic: Backlog item topic (required)todoId: Todo ID (for update)content: Todo contentstatus: Todo status (pending, in_progress, completed, cancelled)dependencies: Array of todo IDs that must complete firstbatch: Batch identifier
backlog-todo-done
Mark todos as complete with dependency validation.
Arguments:
action: done or listtopic: Backlog item topic (required)todoId: Todo ID to mark as done
Directory Structure
Default Location (XDG-compliant)
By default, the server stores backlog data in XDG-compliant directories with multi-project isolation:
~/.local/share/mcp-backlog/
└── projects/
└── <project-name>/
├── Backlog/
│ └── <topic-name>/
│ ├── item.md # Backlog item details
│ └── todos.json # Associated todos
└── COMPLETED_Backlog/
├── DONE_<topic>-v1.md
└── WONTFIX_<topic>.md
Multi-Project Support
Each project gets its own isolated directory:
- Git repositories: Uses the repository root directory name as project identifier
- Non-git projects: Uses directory name + hash for uniqueness
This allows you to use the same MCP server across multiple projects without conflicts.
Legacy Support
For backward compatibility, if you have an existing .agent/ directory in your current working directory, it will be used instead of the XDG directory.
Custom Locations
You can override the default location using environment variables:
Option 1: Set a custom backlog directory
export MCP_BACKLOG_DIR="/path/to/your/backlog"
Option 2: Set XDG_DATA_HOME (affects all XDG-compliant apps)
export XDG_DATA_HOME="/path/to/data"
# Backlog will be stored at: /path/to/data/mcp-backlog/
Add these to your MCP client configuration:
{
"mcpServers": {
"backlog": {
"command": "mcp-backlog",
"env": {
"MCP_BACKLOG_DIR": "/custom/path"
}
}
}
}
Configuration
See CONFIGURATION.md for detailed information about:
- XDG Base Directory support
- Multi-project isolation
- Environment variables
- Custom storage locations
- Platform-specific defaults
Development
Run tests
bun test
Build
bun run build
Workflow
- Create a backlog item with status "new"
- Submit to move it to "ready" (ready for work)
- Amend to update status to "review" when work is done
- Approve to move from "review" to "done"
- Done to archive the completed item
Or use reopen to send items back for more work, or wontfix to archive without completing.
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。