Linear MCP Server

by ibraheem4
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides tools for interacting with Linear's API, enabling AI agents to manage issues, projects, and teams programmatically through the Linear platform.

线性 MCP 服务器

注意:这是一个自定义实现。有关官方 Cline Linear MCP 服务器,请参阅cline/linear-mcp

模型上下文协议 (MCP) 服务器提供与 Linear 的 API 交互的工具,使 AI 代理能够通过 Linear 平台以编程方式管理问题、项目和团队。

特征

  • 问题管理
    • 创建具有可自定义属性(标题、描述、团队、受让人、优先级、标签)的新问题
    • 使用灵活的过滤选项(团队、受让人、状态)列出问题
    • 更新现有问题(标题、描述、状态、受让人、优先级)
  • 团队管理
    • 列出工作区中的所有团队
    • 访问团队详细信息,包括 ID、名称、密钥和描述
  • 项目管理
    • 列出所有项目并可选择团队过滤
    • 查看项目详细信息,包括名称、描述、状态和相关团队

先决条件

  • Node.js(v16 或更高版本)
  • 具有 API 访问权限的 Linear 帐户
  • 具有适当权限的线性 API 密钥

快速入门

  1. Linear 的开发者设置中获取 Linear API 密钥
  2. 使用您的 API 密钥运行:
LINEAR_API_KEY=your-api-key npx @ibraheem4/linear-mcp

或者在您的环境中进行设置:

export LINEAR_API_KEY=your-api-key npx @ibraheem4/linear-mcp

开发设置

  1. 克隆存储库:
git clone [repository-url] cd linear-mcp
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

与 Inspector 一起运行

对于本地开发和调试,您可以使用 MCP Inspector:

  1. 安装超级网关:
npm install -g supergateway
  1. 使用包含的run.sh脚本:
chmod +x run.sh LINEAR_API_KEY=your-api-key ./run.sh
  1. 访问检查器:
    • 在浏览器中打开localhost:1337
    • 检查器通过服务器发送事件 (SSE) 进行连接
    • 通过 Inspector 界面测试和调试工具调用

配置

根据您的客户端在设置文件中配置 MCP 服务器:

对于克劳德桌面

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
{ "mcpServers": { "linear-mcp": { "command": "node", "args": ["/path/to/linear-mcp/build/index.js"], "env": { "LINEAR_API_KEY": "your-api-key-here" }, "disabled": false, "alwaysAllow": [] } } }

对于 VS Code 扩展 (Cline)

位置: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json

{ "mcpServers": { "linear-mcp": { "command": "node", "args": ["/path/to/linear-mcp/build/index.js"], "env": { "LINEAR_API_KEY": "your-api-key-here" }, "disabled": false, "alwaysAllow": [] } } }

对于光标( cursor.sh

对于 Cursor,服务器必须以完整路径运行:

node /Users/ibraheem/Projects/linear-mcp/build/index.js

可用工具

创建问题

在 Linear 中创建新问题。

{ title: string; // Required: Issue title description?: string; // Optional: Issue description (markdown supported) teamId: string; // Required: Team ID assigneeId?: string; // Optional: Assignee user ID priority?: number; // Optional: Priority (0-4) labels?: string[]; // Optional: Label IDs to apply }

列出问题

列出可选过滤器的问题。

{ teamId?: string; // Optional: Filter by team ID assigneeId?: string; // Optional: Filter by assignee ID status?: string; // Optional: Filter by status first?: number; // Optional: Number of issues to return (default: 50) }

更新问题

更新现有问题。

{ issueId: string; // Required: Issue ID title?: string; // Optional: New title description?: string; // Optional: New description status?: string; // Optional: New status assigneeId?: string; // Optional: New assignee ID priority?: number; // Optional: New priority (0-4) labels?: string[]; // Optional: Label IDs to apply to the issue }

列出团队

列出工作区中的所有团队。无需参数。

列出项目

列出所有项目并带有可选的过滤功能。

{ teamId?: string; // Optional: Filter by team ID first?: number; // Optional: Number of projects to return (default: 50) }

获取问题

获取有关特定问题的详细信息。

{ issueId: string; // Required: Issue ID }

发展

对于使用自动重建的开发:

npm run watch

错误处理

该服务器包括针对以下方面的全面错误处理:

  • 无效的 API 密钥
  • 缺少必需参数
  • 线性 API 错误
  • 无效的工具请求

所有错误均被正确格式化并返回描述性消息。

技术细节

内置:

  • TypeScript
  • 线性 SDK (@linear/sdk v37.0.0)
  • MCP SDK(@modelcontextprotocol/sdk v0.6.0)

服务器使用 stdio 进行通信,并实现模型上下文协议,以便与 AI 代理无缝集成。

执照

麻省理工学院

ID: 71fqw0uqmx