任务管理协议服务器

Strety MCP服务器是一个用于任务管理的协议服务器,支持读取、创建、更新和删除任务,自动处理OAuth令牌刷新和ETag管理。

  • by brentwpeterson
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 brentwpeterson/mcp-strety

使用说明

Strety MCP服务器

MCP(模型上下文协议)服务器,用于将Strety与Claude代码集成。

特征

  • 阅读工具: 列出待办事项(按受让人、完成状态过滤),获取待办事项详细信息,列出人员
  • 写入工具: 创建、更新、完成/不完成和删除待办事项
  • 自动刷新OAuth令牌
  • PATCH操作的自动ETag处理
  • 受让人姓名解析(部分匹配,例如“Brent”解析为完整ID)

安装

cd /Users/brent/scripts/CB-Workspace/mcp-servers/strety
npm install
npm run build

配置

1.创建Strety OAuth应用程序

  1. 首选https://2.strety.com
  2. 导航到:我的集成>我的应用
  3. 使用以下工具创建新应用:
    • 姓名: Strety-MCP
    • 重定向URI: https://localhost:8888/callback
    • 范围: read, write

2.获取OAuth令牌

看 todo/strety-oauth-flow.md 详细说明。

快速版本:

# Terminal 1: Start listener
nc -l 8888

# Terminal 2: Open this URL (replace CLIENT_ID)
# https://2.strety.com/oauth/authorize?client_id=YOUR_CLIENT_ID&redirect_uri=https://localhost:8888/callback&response_type=code&scope=read+write

# Exchange code for token
curl -X POST "https://2.strety.com/api/v1/oauth/token" \
  -d "grant_type=authorization_code" \
  -d "code=CODE_FROM_CALLBACK" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET" \
  -d "redirect_uri=https://localhost:8888/callback"

3.保存代币

mkdir -p ~/.mcp-strety
cat > ~/.mcp-strety/token.json << 'EOF'
{
  "access_token": "YOUR_ACCESS_TOKEN",
  "refresh_token": "YOUR_REFRESH_TOKEN",
  "saved_at": "2026-01-27T00:00:00.000Z"
}
EOF

4.添加到克劳德代码

添加 ~/.mcp.json 或项目 .mcp.json:

{
  "mcpServers": {
    "strety": {
      "command": "node",
      "args": ["/Users/brent/scripts/CB-Workspace/mcp-servers/strety/dist/index.js"],
      "env": {
        "STRETY_ACCESS_TOKEN": "YOUR_ACCESS_TOKEN",
        "STRETY_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
        "STRETY_CLIENT_ID": "YOUR_CLIENT_ID",
        "STRETY_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

5.重新启动克劳德代码

MCP服务器在Claude Code启动时加载。

可用工具

阅读工具

工具 说明
strety_list_todos 使用可选过滤器列出待办事项(受让人、完成状态)
strety_get_todo 获取特定待办事项的完整详细信息
strety_list_people 列出组织中的所有人员

写入工具

工具 说明
strety_create_todo 创建一个新的待办事项,包括标题、描述、受让人、截止日期、优先级
strety_update_todo 更新现有todo上的字段(自动ETag处理)
strety_complete_todo 标记待办事项完成或未完成(自动ETag处理)
strety_delete_todo 永久删除待办事项

注: 编写工具需要OAuth令牌 read 和 write 范围。PATCH操作(更新、完成)在发送请求之前自动获取所需的ETag。

许可证管理

服务器自动处理令牌刷新:

  1. 令牌从以下位置加载 ~/.mcp-strety/token.json (首选)或环境变量
  2. 当401发生时,服务器尝试使用刷新令牌进行刷新
  3. 新令牌将保存回 ~/.mcp-strety/token.json

重要提示: 代币在2小时后过期。自动刷新会处理此问题,但如果刷新令牌也过期,则需要重新授权。

API注释

  • 基本URL: https://2.strety.com/api/v1
  • 页面大小限制: 每次请求最多20个项目
  • 费率限制: 每10秒10个请求
  • 分页: 服务器最多可获取50个页面来查找所有匹配的待办事项

故障排除

“身份验证失败”错误

  1. 检查令牌是否过期
  2. 尝试手动刷新(请参阅oauth-flow.md)
  3. 如果刷新失败,请完全重新授权

使用写入工具时出现“无效作用域”或403

令牌仅具有 read 范围。重新授权 read+write 范围(请参阅OAuth流文档)。

Todos未显示

服务器最多可分页50页。如果布伦特的待办事项分散在许多页面上,它们仍然应该被找到。检查受让人筛选器是否正确。

文件

strety/
├── src/index.ts      # Main server code (7 tools)
├── dist/index.js     # Compiled output (gitignored)
├── package.json
├── tsconfig.json
├── .gitignore
├── README.md         # This file
└── docs/
    ├── README.md               # Docs index
    ├── strety-oauth-flow.md    # OAuth documentation
    ├── strety-api-mapping.md   # API endpoint reference
    └── strety-mcp-tools-spec.md # Tool specifications

发展

# Build
npm run build

# Watch mode (if configured)
npm run dev