🚀 fizzy-mcp
fizzy-mcp 是一個用於 Fizzy 任務管理的 MCP 服務器,它提供了 7 種工具,可用於管理看板、卡片、評論和清單。
🚀 快速開始
在使用 fizzy-mcp 之前,你需要獲取 Fizzy 的訪問令牌:
- 登錄 Fizzy。
- 進入設置 > API 訪問。
- 生成一個新的令牌。
📦 安裝指南
Claude Desktop
將以下配置添加到你的配置文件中:
- macOS:
~/Library/Application\ Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "your-token-here"
}
}
}
}
僅適用於 Windows: 在 env 塊中添加 "APPDATA": "C:\\Users\\YourUsername\\AppData\\Roaming"。
完全重啟 Claude Desktop,然後驗證:"List my Fizzy boards."
Claude Code
使用 CLI 命令:
claude mcp add --transport stdio Fizzy --env FIZZY_TOKEN=your-token-here -- npx -y @silky/fizzy-mcp
或者將以下配置添加到 ~/.claude.json:
{
"mcpServers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "your-token-here"
}
}
}
}
重啟 Claude Code,然後驗證:"List my Fizzy boards."
Cursor
將以下配置添加到 ~/.cursor/mcp.json(全局)或 .cursor/mcp.json(項目):
{
"mcpServers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "your-token-here"
}
}
}
}
完全重啟 Cursor,然後在代理模式(Ctrl+I)下驗證。
VS Code
將以下配置添加到工作區的 .vscode/mcp.json:
{
"inputs": [
{
"type": "promptString",
"id": "fizzy-token",
"description": "Fizzy API Token",
"password": true
}
],
"servers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "${input:fizzy-token}"
}
}
}
}
或者通過命令面板 → "MCP: Open User Configuration" 使用用戶設置。
Windsurf
將以下配置添加到 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "${env:FIZZY_TOKEN}"
}
}
}
}
在你的 shell 環境中設置 FIZZY_TOKEN,或者硬編碼該值。重啟 Windsurf。
Cline
將以下配置添加到 Cline MCP 設置文件:
- macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Windows:
%APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Linux:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
{
"mcpServers": {
"Fizzy": {
"command": "npx",
"args": ["-y", "@silky/fizzy-mcp"],
"env": {
"FIZZY_TOKEN": "your-token-here"
},
"disabled": false,
"alwaysAllow": []
}
}
}
Continue
將以下配置添加到 .continue/config.yaml:
mcpServers:
- name: Fizzy
command: npx
args:
- "-y"
- "@silky/fizzy-mcp"
env:
FIZZY_TOKEN: ${{ secrets.FIZZY_TOKEN }}
從源代碼安裝
需要 pnpm。
git clone https://github.com/davegomez/fizzy-mcp.git
cd fizzy-mcp
pnpm install
pnpm build
在上述任何配置中,將 npx -y @silky/fizzy-mcp 替換為 node /absolute/path/to/fizzy-mcp/dist/index.js。
📚 詳細文檔
配置參考
| 變量 |
是否必需 |
默認值 |
描述 |
FIZZY_TOKEN |
是 |
— |
從 Fizzy 設置中獲取的 API 令牌 |
FIZZY_ACCOUNT |
否 |
— |
默認賬戶 slug(例如,897362094) |
FIZZY_BASE_URL |
否 |
https://app.fizzy.do |
API 基礎 URL |
賬戶解析
工具按以下順序解析 account_slug:
- 工具調用時顯式指定的
account_slug 參數。
- 會話默認值(通過
fizzy_account 工具設置,action: "set")。
FIZZY_ACCOUNT 環境變量。
- 自動檢測(如果用戶只有一個賬戶)。
工具參考
fizzy_account
獲取、設置或列出後續工具調用的賬戶。
| 參數 |
類型 |
是否必需 |
描述 |
action |
"get" | "set" | "list" |
是 |
要執行的操作 |
account_slug |
string |
僅 set |
從 Fizzy URL 中獲取的賬戶 slug |
返回值:
get: { "action": "get", "account_slug": "897362094" | null }
set: { "action": "set", "account_slug": "897362094" }
list: { "action": "list", "accounts": [{ "slug": "...", "name": "...", "id": "..." }] }
fizzy_boards
列出賬戶中的看板,並提供列摘要。
| 參數 |
類型 |
是否必需 |
默認值 |
描述 |
account_slug |
string |
否 |
會話默認值 |
賬戶 slug |
limit |
number |
否 |
25 |
每頁項目數 (1 - 100) |
cursor |
string |
否 |
— |
分頁遊標 |
返回值: { "items": Board[], "pagination": { "returned": number, "has_more": boolean, "next_cursor"?: string } }
fizzy_search
使用過濾器搜索卡片。
| 參數 |
類型 |
是否必需 |
描述 |
account_slug |
string |
否 |
賬戶 slug |
board_id |
string |
否 |
按看板過濾 |
tag_ids |
string[] |
否 |
按所有標籤過濾 |
assignee_ids |
string[] |
否 |
按任何分配人過濾 |
creator_ids |
string[] |
否 |
按卡片創建者過濾 |
closer_ids |
string[] |
否 |
按關閉者過濾 |
card_ids |
string[] |
否 |
過濾到特定卡片 ID |
indexed_by |
"closed" | "not_now" | "all" | "stalled" | "postponing_soon" | "golden" |
否 |
按索引過濾 |
assignment_status |
"unassigned" |
否 |
按分配狀態過濾 |
sorted_by |
"newest" | "oldest" | "recently_active" |
否 |
排序順序 |
terms |
string[] |
否 |
自由文本搜索詞 |
creation |
日期範圍* |
否 |
按創建日期過濾 |
closure |
日期範圍* |
否 |
按關閉日期過濾 |
limit |
number |
否 |
每頁項目數 (1 - 100, 默認 25) |
cursor |
string |
否 |
分頁遊標 |
*日期範圍值:today, yesterday, thisweek, thismonth, last7, last14, last30。
返回值: { "items": Card[], "pagination": {...} }
fizzy_get_card
通過編號或 ID 獲取卡片的完整詳細信息。
| 參數 |
類型 |
是否必需 |
描述 |
account_slug |
string |
否 |
賬戶 slug |
card_number |
number |
否* |
從 URL 中獲取的卡片編號(例如,#42 中的 42) |
card_id |
string |
否* |
從 API 響應中獲取的卡片 UUID |
*提供 card_number 或 card_id。當你有 UI 中可讀的 # 時,優先使用 card_number。
返回值: 包含 id, number, title, description(markdown 格式), status, board_id, column_id, tags, assignees, steps_count, completed_steps_count, comments_count, url, 時間戳的卡片對象。
fizzy_task
創建或更新卡片。
模式: 省略 card_number 以創建;包含它以更新。
| 參數 |
類型 |
是否必需 |
描述 |
account_slug |
string |
否 |
賬戶 slug |
card_number |
number |
否 |
要更新的卡片(省略以創建) |
board_id |
string |
創建模式 |
新卡片所在的看板 |
title |
string |
創建模式 |
卡片標題 |
description |
string |
否 |
Markdown 內容 |
status |
"open" | "closed" | "not_now" |
否 |
更改卡片狀態 |
column_id |
string |
否 |
分類到列 |
position |
"top" | "bottom" |
否 |
列中的位置(默認:"bottom") |
add_tags |
string[] |
否 |
要添加的標籤標題 |
remove_tags |
string[] |
否 |
要移除的標籤標題 |
steps |
string[] |
否 |
清單項目(僅創建模式) |
返回值: { "mode": "create" | "update", "card": {...}, "operations": {...}, "failures": [...] }
fizzy_comment
在卡片上創建、列出、更新或刪除評論。
| 參數 |
類型 |
是否必需 |
描述 |
action |
string |
否 |
"create"(默認), "list", "update", "delete" |
account_slug |
string |
否 |
賬戶 slug |
card_number |
number |
是 |
卡片編號 |
comment_id |
string |
否 |
評論 ID。更新/刪除時必需 |
body |
string |
否 |
Markdown 格式的評論(1 - 10000 個字符)。創建/更新時必需 |
返回值: 包含 id, body(markdown 格式), creator, 時間戳, url 的評論對象。列表返回 { comments, pagination }。刪除返回 { comment_id, deleted }。
fizzy_step
在卡片上創建、完成、更新、取消完成或刪除步驟。
| 參數 |
類型 |
是否必需 |
描述 |
account_slug |
string |
否 |
賬戶 slug |
card_number |
number |
是 |
包含步驟的卡片 |
step |
string | number |
否 |
內容子字符串或基於 1 的索引。省略以創建。 |
content |
string |
否 |
創建或更新步驟的文本 |
completed |
boolean |
否 |
設置完成狀態 |
delete |
boolean |
否 |
刪除步驟 |
模式檢測:
step 缺失 → 創建(需要 content)
step 存在,無其他參數 → 完成
step + content → 更新
step + completed: false → 取消完成
step + delete: true → 刪除
返回值: { "id": "...", "content": "...", "completed": true }
分頁參考
列表操作返回:
{
"items": [...],
"pagination": {
"returned": 25,
"has_more": true,
"next_cursor": "opaque-cursor-string"
}
}
| 字段 |
類型 |
描述 |
returned |
number |
此響應中的項目數 |
has_more |
boolean |
是否有更多項目 |
next_cursor |
string |
作為 cursor 傳遞以獲取下一頁 |
錯誤參考
| 錯誤 |
原因 |
| "No account specified. Set FIZZY_ACCOUNT env var, use fizzy_account tool, or pass account_slug." |
無法通過任何方法解析賬戶 |
| "Account "..." not found" |
傳遞給 fizzy_account set 的 slug 無效 |
| "Card #N not found" |
卡片編號不存在 |
| "Board not found" |
board_id 無效 |
📄 許可證
本項目採用 AGPL-3.0-or-later 許可證。