🚀 tpm-mcp
tpm-mcp 是一款集成式的人工智能技術項目管理工具,它能讓Claude具備跟蹤項目、功能和任務的能力。藉助它,你可以與Claude進行項目進度溝通、分解任務,從而更高效地推進項目。
🚀 快速開始
tpm-mcp 是一個本地MCP(模型上下文協議)服務器,它賦予了Claude跟蹤你的項目、功能和任務的能力。你可以將其視為一位專職的技術項目經理(TPM),它能夠:
- 跨會話記住你正在處理的工作。
- 將複雜的功能分解為可管理的任務。
- 跟蹤進度和阻礙因素。
- 為你提供即時的狀態更新。
所有數據都存儲在快速的SQLite數據庫中,無需雲端服務,也無需訂閱,只有你和你的人工智能TPM。
示例演示
你: :TPM: 目前有哪些工作正在進行中?
Claude: 以下是你當前的路線圖:
# 路線圖摘要
**統計信息**:3/8 個工單,12/25 個任務(完成度 48%)
## ExampleOrg
### backend-api
工單:3/5 已完成
- [~] **FEAT-003**:支付集成(高優先級)
任務:2/4
- [~] TASK-003-1:Stripe 網絡鉤子處理程序
- [ ] TASK-003-2:發票生成
- [ ] **FEAT-004**:電子郵件通知
任務:0/3
✨ 主要特性
| 屬性 |
詳情 |
| 快速 |
使用 SQLite + WAL 模式實現亞毫秒級查詢 |
| 本地 |
所有數據存儲在 ~/.local/share/tpm-mcp/tpm.db |
| 自然 |
只需自然對話,例如 “我完成了身份驗證功能” |
| 分層 |
支持組織 → 項目 → 工單 → 任務的層級結構 |
| 豐富的元數據 |
包含優先級、標籤、負責人、複雜度、備註等信息 |
| 導出/導入 |
支持完整的 JSON 導出/導入,方便備份和遷移 |
📦 安裝指南
1. 克隆並安裝
git clone https://github.com/yourusername/tpm-mcp.git
cd tpm-mcp
uv venv && uv pip install -e .
2. 添加到 Claude 代碼
claude mcp add tpm --scope user -- uv run --directory /path/to/tpm-mcp tpm-mcp
或者手動編輯 settings.json
在 ~/.claude/settings.json 中添加以下內容:
{
"mcpServers": {
"tpm": {
"command": "uv",
"args": ["run", "--directory", "/path/to/tpm-mcp", "tpm-mcp"]
}
}
}
3. (可選)啟用 TPM 代理行為
若要獲得完整體驗,請添加 TPM 代理說明:
mkdir -p .claude
ln -s /path/to/tpm-mcp/agents/tpm.md .claude/tpm.md
然後在你的 CLAUDE.md 中添加:
請參考 .claude/tpm.md 瞭解項目跟蹤工作流程。
💻 使用示例
快速命令
| 這樣說... |
Claude 會... |
:TPM: status |
顯示完整的路線圖 |
:TPM: add auth feature |
創建一個新工單 |
I finished the payment integration |
將工單標記為已完成 |
Break down the API refactor |
創建子任務 |
What's blocking us? |
顯示受阻的項目 |
工作流程示例
你: :TPM: 為後端項目添加用戶身份驗證功能
Claude: 已在 backend-api 中創建工單 FEAT-005:“用戶身份驗證”
狀態:待辦,優先級:中
你: 將其設為高優先級並分解任務
Claude: 已將 FEAT-005 的優先級更新為高。已創建任務:
- TASK-005-1:設計身份驗證架構
- TASK-005-2:實現 JWT 中間件
- TASK-005-3:添加登錄/註銷端點
- TASK-005-4:編寫身份驗證測試
你: 開始處理 JWT 中間件
Claude: 已將 TASK-005-2 標記為進行中。
FEAT-005 現在處於進行中狀態。
你: 中間件已完成,測試通過
Claude: 已將 TASK-005-2 標記為已完成(4 個任務中的第 1 個已完成)
📚 詳細文檔
工具參考
查看工具
| 工具 |
描述 |
roadmap_view |
顯示包含所有組織、項目、工單和任務的完整路線圖 |
ticket_get |
顯示單個工單及其任務的詳細信息 |
info |
顯示服務器統計信息和數據庫信息 |
工單工具
| 工具 |
描述 |
ticket_create |
使用標題、描述、優先級和標籤創建工單 |
ticket_update |
更新工單的狀態、優先級、負責人等信息 |
ticket_list |
列出工單,可按項目或狀態進行過濾 |
任務工具
| 工具 |
描述 |
task_create |
在工單下創建任務 |
task_update |
更新任務的狀態、詳細信息和複雜度 |
task_list |
列出任務,可按工單或狀態進行過濾 |
組織工具
| 工具 |
描述 |
org_create |
創建組織 |
org_list |
列出所有組織 |
project_create |
在組織下創建項目 |
project_list |
列出項目 |
note_add |
為任何實體添加備註 |
數據模型
組織
└── 項目
└── 工單(功能/史詩/缺陷)
├── 任務
└── 備註
工單狀態:待辦 → 計劃中 → 進行中 → 已完成 | 受阻
任務狀態:待處理 → 進行中 → 已完成 | 受阻
優先級:關鍵 > 高 > 中 > 低
導出與導入
你可以將項目數據導出和導入為 JSON 格式,以便進行備份、恢復或與其他工具進行互操作。
導出數據
將所有項目數據導出為 JSON:
uv run tpm-json-export
uv run tpm-json-export -o backup.json
uv run tpm-json-export --db-path /path/to/custom.db -o backup.json
導入數據
從 JSON 導出文件導入數據,以重新創建數據庫或從備份中恢復:
uv run tpm-json-import --dry-run backup.json
uv run tpm-json-import backup.json
uv run tpm-json-import --db-path /path/to/db.db backup.json
uv run tpm-json-import --clear backup.json
JSON 格式包含所有數據:組織、項目、工單、任務、備註和任務依賴關係。使用場景包括:
- 備份與恢復:定期導出數據,在數據庫損壞時進行恢復。
- 重新創建數據庫:通過導入之前的導出文件重新開始。
- 導出到其他工具:使用 JSON 格式遷移到其他項目管理工具。
- 在機器之間同步:在一臺機器上導出,在另一臺機器上導入。
PDF 狀態報告
你可以根據項目數據生成美觀、可共享的 PDF 報告。
設置與使用
使用報告技能
tpm-report 技能可以教會 Claude 如何生成專業的狀態報告。要啟用它,請執行以下操作:
cp -r /path/to/tpm-mcp/skills/tpm-report .claude/skills/
然後向 Claude 提出請求:
你: 生成一份項目狀態報告
Claude: [獲取路線圖數據,生成樣式化的 HTML,轉換為 PDF]
PDF 報告已保存到:Project-Status-2025-12-02.pdf
先決條件
- tpm-mcp:此 MCP 服務器(用於獲取
roadmap_view 數據)
- Playwright MCP:用於自動將 HTML 轉換為 PDF
安裝 Playwright MCP
claude mcp add playwright-headless --scope user -- npx @playwright/mcp@latest --headless
claude mcp add playwright-headless --scope user -- npx @playwright/mcp@latest --isolated --headless
或者手動編輯 settings.json
在 ~/.claude/settings.json 中添加以下內容:
{
"mcpServers": {
"playwright-headless": {
"command": "npx",
"args": ["@playwright/mcp@latest", "--headless"]
}
}
}
如果沒有安裝 Playwright,Claude 將生成一個 HTML 文件,你可以手動將其打印為 PDF。
報告內容
| 部分 |
內容 |
| 進度概述 |
工單和任務的可視化進度條 |
| 項目細分 |
每個項目的已完成、進行中和待辦事項 |
| 關鍵里程碑 |
主要成就和當前重點 |
| 阻礙因素與風險 |
需要關注的事項 |
手動生成報告
如果你更喜歡手動控制,可以使用 roadmap_view 並選擇 JSON 格式:
你: :TPM: 以 JSON 格式顯示路線圖
Claude: [返回結構化的 JSON 數據]
然後使用你喜歡的工具對輸出進行格式化。
從舊版跟蹤器遷移
如果你使用的是具有不同格式的舊版基於 JSON 的跟蹤器,可以使用以下命令進行遷移:
uv run tpm-migrate /path/to/old-tracker
此工具可以將舊版 JSON 跟蹤器格式進行轉換。對於標準的導出/導入操作,請使用上述的 tpm-json-export 和 tpm-json-import 命令。
開發
uv pip install -e ".[dev]"
uv run pytest tests/ -v
為何選擇本地部署
- 隱私:你的項目數據永遠不會離開你的機器。
- 速度:SQLite 在此用例中速度極快。
- 可靠性:沒有 API 速率限制,不會出現停機情況,可離線工作。
- 簡單性:只有一個數據庫文件,易於備份或同步。
📄 許可證
本項目採用 MIT 許可證,你可以自由使用。
引用
@software{Bhatia_TPM-MCP_A_Local_2025,
author = {Bhatia, Urjit Singh},
license = {MIT},
title = {{TPM-MCP: A Local Technical Product Manager MCP Server}},
url = {https://github.com/urjitbhatia/tpm-mcp},
year = {2025}
}