Shortcut MCP服务器

一个提供对Shortcut REST API v3完全访问的Model Context Protocol (MCP)服务器,允许从任何MCP兼容客户端管理故事、史诗、迭代、工作流等。

  • by dnachavez
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 dnachavez/shortcut-mcp

使用说明

MCP服务器快捷方式

A. 模型上下文协议(MCP) 提供完全访问权限的服务器 快捷方式REST API v3.从任何兼容MCP的客户端直接管理故事、史诗、迭代、工作流等。

先决条件

设置

1.安装依赖项并构建

npm install
npm run build

2.生成快捷方式API令牌

首选 快捷方式>设置>API令牌 并生成新令牌。复制它以进行下一步。

3.配置您的MCP客户端

将服务器添加到MCP客户端配置中。确切的文件取决于您的客户:

客户端 配置文件
光标 .cursor/mcp.json (项目)或 ~/.cursor/mcp.json (全球)
克劳德桌面 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
VS代码(副本) .vscode/mcp.json (项目)

添加以下条目(将路径调整为 dist/index.js 以匹配您的设置):

{
  "mcpServers": {
    "shortcut": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/shortcut-mcp/dist/index.js"],
      "env": {
        "SHORTCUT_API_TOKEN": "your-shortcut-api-token"
      }
    }
  }
}

4.重新启动MCP客户端

重新启动或重新加载编辑器/客户端以获取新的服务器配置。

可用工具

此服务器公开 34工具 按资源类型组织。

故事

工具 说明
create-story 创建一个包含名称、类型、描述、估计、标签、所有者等的新故事
get-story 通过ID获取故事的完整细节
update-story 更新任何故事属性(名称、状态、史诗、迭代、估计、标签等)
delete-story 永久删除一个故事
search-stories 使用搜索故事 快捷查询语法
list-stories 列出按项目、迭代或史诗筛选的故事
bulk-update-stories 一次批量更新多个故事(状态、史诗、迭代、标签、所有者等)
get-story-history 获取故事的完整更改历史

故事评论

工具 说明
list-story-comments 列出对某个故事的所有评论
create-story-comment 为故事添加评论(支持Markdown)
update-story-comment 编辑现有评论

故事任务

工具 说明
list-story-tasks 列出故事中的所有清单项目
create-story-task 在故事中添加清单项
update-story-task 更新任务(标记完成/未完成、更改描述、重新分配)

故事链接

工具 说明
create-story-link 在两个故事之间建立关系(blocks, duplicates,或 relates to)
delete-story-link 删除故事关系

史诗

工具 说明
create-epic 创造新的史诗
get-epic 获取史诗的完整细节,包括统计数据
update-epic 更新史诗属性(名称、州、截止日期、所有者、标签、目标等)
list-epics 列出工作区中的所有史诗
list-epic-stories 列出属于特定史诗的所有故事

迭代

工具 说明
create-iteration 创建具有开始/结束日期的新迭代(sprint)
get-iteration 获取迭代详细信息,包括周期时间和交付周期统计数据
update-iteration 更新迭代属性
list-iterations 列出工作区中的所有迭代

工作流

工具 说明
list-workflows 列出所有工作流及其状态(使用此功能可发现 workflow_state_id 值)
get-workflow 获取特定的工作流及其状态

标签

工具 说明
list-labels 列出工作区中的所有标签
create-label 使用可选颜色创建新标签

成员

工具 说明
get-current-member 获取有关已验证用户的信息(您的UUID、工作区、角色)
list-members 列出所有工作区成员(活动和禁用)

团队/小组

工具 说明
list-groups 列出工作区中的所有团队(组)

目标

工具 说明
list-objectives 列出所有目标
create-objective 创建新目标

搜索

工具 说明
search 使用以下命令在故事、史诗和迭代中搜索 快捷搜索运算符

自定义字段

工具 说明
list-custom-fields 列出所有自定义字段及其可能值

项目(遗留)

工具 说明
list-projects 列出所有项目(有利于团队/小组)

使用示例

连接后,您可以在MCP客户端中通过自然语言与服务器交互。以下是一些示例:

创建一个故事:

“创建一个名为“修复登录重定向”的错误故事,并将其分配给当前的sprint。”

搜索故事:

“查找所有正在进行的未经评估的专题报道。”

Sprint计划:

“列出当前迭代中的所有故事,并告诉我哪些故事被阻止了。”

批量操作:

“将史诗#123中标记为‘后端’的所有故事移动到‘进行中’状态。”

探索工作流程:

“显示所有可用的工作流状态,以便我可以移动故事。”

搜索查询语法

这 search-stories 和 search 工具支持 快捷搜索运算符:

操作员 示例
type: type:feature, type:bug, type:chore
state: state:"In Progress", state:Done
label: label:backend
owner: owner:john
epic: epic:"Q1 Goals"
is: is:started, is:unestimated, is:blocked
自由文本 login redirect bug

操作员可以组合: type:feature state:"In Progress" label:backend

发展

npm run dev     # Watch mode — recompiles on file changes
npm run build   # One-time production build
npm start       # Run the compiled server

速率限制

该服务器包含一个内置的速率限制器(每分钟200个请求),可自动对请求进行排队和节流,使其保持在Shortcut的API限制范围内。

许可证

麻省理工学院