Linear MCP服务器
一种模型上下文协议服务器,允许克劳德与线性公司的API进行交互,以管理团队、问题、项目和周期。
服务介绍
Linear MCP 服务器
这是一个用于 Linear 的模型上下文协议 (MCP) 服务器,允许 Claude 通过 Linear 的 API 来管理团队、问题、项目和周期。
功能
- linear_get_teams: 获取所有带有状态和标签的团队
- linear_search_issues: 通过过滤和分页搜索问题
- linear_get_cycles: 获取某个团队的所有周期
- linear_get_projects: 获取所有项目
- linear_create_issue: 创建一个新的问题
- linear_update_issue: 更新一个现有的问题
快速开始
对于 Cline MCP 市场用户:
- 通过 Cline MCP 市场安装服务器
- 在 MCP 配置文件中配置您的 Linear 凭证
- 通过测试
linear_search_issues连接来验证安装
安装
- 克隆此仓库
- 安装依赖项:
npm install - 构建服务器:
npm run build
安装过程主要有三个步骤:
- 设置:克隆并构建服务器(以上步骤)
- 配置:设置您的 Linear OAuth 令牌并配置 MCP 服务器
- 验证:测试连接以确保其正常工作
⚠️ 直到您验证连接有效之前,安装才算完成!
配置
服务器需要一个 Linear OAuth 令牌来与 Linear API 进行身份验证。您可以在 MCP 配置文件中设置此令牌。
获取 Linear OAuth 令牌
- 在 https://linear.app/settings/api/applications 创建一个 Linear OAuth 应用程序
- 创建一个 OAuth 应用程序
- 将应用程序命名为 Cline MCP
- 将重定向 URI 设置为
http://localhost:3000/callback - 记下客户端 ID 和客户端密钥
- 创建并复制基于用户的开发者令牌
MCP 配置
将以下内容添加到您的 MCP 配置文件中:
{
"mcpServers": {
"github.com/cpropster/linear-mcp-server": {
"command": "node",
"args": [
"/path/to/linear-mcp-server/build/index.js"
],
"env": {
"LINEAR_CLIENT_ID": "your-client-id",
"LINEAR_CLIENT_SECRET": "your-client-secret",
"LINEAR_REDIRECT_URI": "http://localhost:3000/callback",
"LINEAR_REFRESH_TOKEN": "your-refresh-token"
},
"disabled": false,
"autoApprove": []
}
}
}
将占位符凭据替换为您的实际凭据。
验证安装
⚠️ 重要:直到您验证 MCP 连接正常工作之前,安装才算完成。
配置好 MCP 服务器后,必须测试连接以确保其正常工作:
- 重新加载 MCP 配置
- 使用
linear_search_issues工具测试连接:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_search_issues",
arguments={
"first": 5
}
)
如果成功,您将看到类似以下的响应:
{
"issues": {
"nodes": [
{
"id": "123abc",
"title": "Example issue 1",
"identifier": "TEAM-123",
"description": "This is an example issue"
// ... other issue data
},
// ... more issues
]
}
}
如果连接正常工作,您将看到来自您的 Linear 账户的问题列表。如果出现错误,请检查您的配置和凭据。
常见问题:
args字段中的服务器路径不正确- 无效或过期的 Linear 令牌
- 缺少必需的环境变量
- 服务器在配置中被禁用
使用
获取团队
使用 linear_get_teams 工具检索所有团队:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_get_teams",
arguments={}
)
搜索问题
使用 linear_search_issues 工具来搜索问题:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_search_issues",
arguments={
"query": "Optional search query",
"teamIds": ["Optional team IDs"],
"first": 10 // Number of issues to return (default: 50)
}
)
获取周期
使用 linear_get_cycles 工具为团队检索周期:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_get_cycles",
arguments={
"teamId": "required-team-id"
}
)
获取项目
使用 linear_get_projects 工具检索项目:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_get_projects",
arguments={
"teamId": "optional-team-id",
"first": 10 // Number of projects to return (default: 50)
}
)
创建问题
使用 linear_create_issue 工具创建新问题:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_create_issue",
arguments={
"teamId": "required-team-id",
"title": "Required issue title",
"description": "Optional issue description",
"assigneeId": "optional-assignee-id",
"stateId": "optional-state-id",
"priority": 0, // Optional priority (0-4)
"estimate": 1, // Optional estimate
"cycleId": "optional-cycle-id",
"projectId": "optional-project-id",
"labelIds": ["optional-label-ids"]
}
)
更新问题
使用 linear_update_issue 工具更新现有问题:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_update_issue",
arguments={
"issueId": "required-issue-id",
"title": "Optional new title",
"description": "Optional new description",
"assigneeId": "optional-assignee-id",
"stateId": "optional-state-id",
"priority": 0, // Optional priority (0-4)
"estimate": 1, // Optional estimate
"cycleId": "optional-cycle-id",
"projectId": "optional-project-id",
"labelIds": ["optional-label-ids"]
}
)
调试
如果您在验证步骤中遇到问题,或者 MCP 连接停止工作,可以使用以下调试技术:
-
检查 MCP 配置:确保您的 MCP 配置文件具有正确的服务器路径和凭据。
-
运行测试客户端:使用随附的测试客户端来验证服务器是否可以连接到 Linear:
node test-client.js这将运行一系列测试以验证服务器是否可以连接到 Linear 并检索数据。
-
检查 Linear API 状态:验证 Linear API 是否在 status.linear.app 上正常运行。
-
检查服务器日志:如果您手动运行服务器,请检查控制台输出中的错误消息。
开发
该服务器是使用 TypeScript 和 Linear SDK 构建的。主要实现位于 src/index.ts 中。
要对服务器进行更改:
- 编辑
src/中的源代码 - 使用
npm run build构建服务器 - 使用测试客户端测试您的更改
- 更新 MCP 配置以使用新的构建
安全注意事项
此 MCP 服务器需要访问您的 Linear 帐户。为了保护您的数据安全:
- 切勿提交敏感令牌:
.env文件和任何包含令牌的文件都已在.gitignore中排除 - 使用环境变量:始终在 MCP 配置中使用环境变量而不是硬编码令牌
- 限制权限:在创建 Linear OAuth 应用程序时,仅授予所需的权限
- 定期轮换令牌:定期生成新令牌并更新您的配置
服务器使用官方的 Linear SDK,并通过 HTTPS 与 Linear 的 API 通信,确保您的数据传输安全。
许可证
MIT