这是一个用于 Linear 的模型上下文协议(MCP)服务器,允许 Claude 通过 Linear 的 API 来管理团队、问题、项目和周期。
对于 Cline MCP 市场用户:
linear_search_issues 测试连接以验证安装npm install
npm run build
安装过程有三个主要步骤:
⚠️ 直到您验证连接正常工作之前,安装是不完整的!
服务器需要一个 Linear OAuth 令牌来与 Linear API 进行身份验证。您可以在 MCP 配置文件中设置此令牌。
http://localhost:3000/callback在您的 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 服务器后,必须测试连接以确保其正常工作:
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": "示例问题 1",
"identifier": "TEAM-123",
"description": "这是一个示例问题"
// ... 其他问题数据
},
// ... 更多问题
]
}
}
如果连接正常工作,您将看到来自您的 Linear 账户的问题列表。如果您看到错误,请检查您的配置和凭证。
常见问题:
args 字段中的服务器路径不正确使用 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": "可选搜索查询",
"teamIds": ["可选团队ID"],
"first": 10 // 返回的问题数量(默认:50)
}
)
使用 linear_get_cycles 工具检索团队的周期:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_get_cycles",
arguments={
"teamId": "所需团队ID"
}
)
使用 linear_get_projects 工具检索项目:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_get_projects",
arguments={
"teamId": "可选团队ID",
"first": 10 // 返回的项目数量(默认:50)
}
)
使用 linear_create_issue 工具创建新问题:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_create_issue",
arguments={
"teamId": "所需团队ID",
"title": "所需问题标题",
"description": "可选问题描述",
"assigneeId": "可选负责人ID",
"stateId": "可选状态ID",
"priority": 0, // 可选优先级(0-4)
"estimate": 1, // 可选估算
"cycleId": "可选周期ID",
"projectId": "可选项目ID",
"labelIds": ["可选标签ID"]
}
)
使用 linear_update_issue 工具更新现有问题:
use_mcp_tool(
server_name="github.com/cpropster/linear-mcp-server",
tool_name="linear_update_issue",
arguments={
"issueId": "所需问题ID",
"title": "可选新标题",
"description": "可选新描述",
"assigneeId": "可选负责人ID",
"stateId": "可选状态ID",
"priority": 0, // 可选优先级(0-4)
"estimate": 1, // 可选估算
"cycleId": "可选周期ID",
"projectId": "可选项目ID",
"labelIds": ["可选标签ID"]
}
)
如果您在 验证步骤 中遇到问题,或者 MCP 连接停止工作,您可以使用这些调试技巧:
node test-client.js
这将运行一系列测试以验证服务器可以连接到 Linear 并检索数据。该服务器使用 TypeScript 和 Linear SDK 构建。主要实现位于 src/index.ts。
要对服务器进行更改:
src/ 中的源代码npm run build 构建服务器此 MCP 服务器需要访问您的 Linear 账户。为了保护您的数据安全:
.env 文件和任何包含令牌的文件在 .gitignore 中被排除服务器使用官方的 Linear SDK,并通过 HTTPS 与 Linear 的 API 通信,确保您的数据安全传输。
MIT