使用说明
线性MCP服务器
用于与Linear的API交互的MCP服务器。此服务器提供了一组工具,用于通过Cline管理线性问题、项目和团队。
安装指南
1.环境设置
- 克隆存储库
- 安装依赖项:
npm install - 复制
.env.example向.env:cp .env.example .env
2.身份验证
服务器支持两种身份验证方法:
API密钥(推荐)
- 转到线性设置
- 导航到“安全和访问”部分
- 查找“个人API密钥”部分
- 点击“新建API键”
- 给钥匙贴上描述性标签(例如“临床MCP”)
- 立即复制生成的令牌
- 将令牌添加到您的
.env文件:LINEAR_API_KEY=your_api_key
OAuth流(替代方案) 未实现
- 在以下位置创建OAuth应用程序https://linear.app/settings/api/applications
- 在中配置OAuth环境变量
.env:LINEAR_CLIENT_ID=your_oauth_client_id LINEAR_CLIENT_SECRET=your_oauth_client_secret LINEAR_REDIRECT_URI=http://localhost:3000/callback
3.运行服务器
- 构建服务器:
npm run build - 启动服务器:
npm start
4.临床整合
-
打开Cline MCP设置文件:
- macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - 窗户:
%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
- macOS:
-
添加线性MCP服务器配置:
{ "mcpServers": { "linear": { "command": "node", "args": ["/path/to/linear-mcp/build/index.js"], "env": { "LINEAR_API_KEY": "your_personal_access_token" }, "disabled": false, "autoApprove": [] } } }
可用操作
服务器当前支持以下操作:
问题管理
- ✅ 在全面的现场支持下创建问题(标题、描述、团队、项目等)
- ✅ 更新现有问题(优先级、描述等)
- ✅ 删除问题(单次或批量删除)
- ✅ 过滤搜索问题
- ✅ 将问题与项目联系起来
- ✅ 创建父/子问题关系
- ✅ 阅读并创建评论和线程评论
项目管理
- ✅ 创建具有相关问题的项目
- ✅ 获取项目信息 具有丰富的文本描述
- ✅ 搜索项目 具有丰富的文本描述
- ✅ 将问题与项目联系起来
- ✅ 使用Linear的正确描述处理
documentContent领域
团队管理
- ✅ 获取团队信息(包括状态和工作流详细信息)
- ✅ 访问团队状态和标签
认证
- ✅ API密钥验证
- ✅ 安全令牌存储
批量操作
- ✅ 批量问题创建
- ✅ 批量问题删除
批量更新(测试中)
- 🚧 批量问题更新(已实现并行处理,需要测试)
富文本描述支持
服务器现在可以正确处理Linear的项目富文本描述:
- 传统支持:保持与旧版本的兼容性
description领域 - 丰富的内容:使用线性
documentContent实际描述内容字段 - 自动回退:如果丰富内容不可用,则返回到遗留字段
- 类型安全:包括适用于两种描述格式的正确TypeScript类型
运作原理
Linear使用双场系统进行描述:
description-传统字段(为了向后兼容,通常为空)documentContent.content-包含实际的富格文本描述内容
MCP服务器自动:
- 从Linear的API查询两个字段
- 优先处理
documentContent.content关于遗产description领域 - 提供实用功能
getProjectDescription()用于一致访问 - 返回一个
actualDescription响应中的字段便于访问
发展中的特点
目前正在开发以下功能:
问题管理
- 🚧 复杂的搜索过滤器
- 🚧 对大型结果集的分页支持
元数据操作
- 🚧 标签管理(创建/更新/分配)
- 🚧 周期/里程碑管理
项目管理
- 🚧 项目模板支持
- 🚧 高级项目操作
认证
- 🚧 带有自动令牌刷新的OAuth流
性能与安全
- 🚧 速率限制
- 🚧 详细日志记录
- 🚧 负载测试和优化
发展
# Install dependencies
npm install
# Run tests
npm test
# Run integration tests (requires LINEAR_API_KEY)
npm run test:integration
# Build the server
npm run build
# Start the server
npm start
集成测试
集成测试验证身份验证和API调用是否正常工作:
- 设置身份验证(建议测试API密钥)
- 运行集成测试:
npm run test:integration
对于OAuth测试:
- 在中配置OAuth凭据
.env - 移除
.skip来自OAuth测试src/__tests__/auth.integration.test.ts - 运行集成测试
最近的改进
项目描述支持(最新)
- ✅ 通过实现Linear来修复空项目描述
documentContent现场支持 - ✅ 为富文本内容添加了适当的TypeScript类型
- ✅ 实现了从丰富内容到传统描述的自动回退
- ✅ 更新了所有与项目相关的查询和处理程序
- ✅ 为新的描述处理添加了全面的测试
- ✅ 与现有API使用者保持向后兼容性
以前的改进
- ✅ 增强所有操作的类型安全性
- ✅ 实现了真正的批处理操作,以获得更好的性能
- ✅ 改进了错误处理和验证
- ✅ 增加了全面的测试覆盖率
- ✅ 重构架构以提高可维护性
