Linear API交互服务器

提供通过标准化MCP接口访问和操作Linear问题、项目等数据的工具和资源。

  • by mkusaka
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 mkusaka/mcp-server-linear

使用说明

mcp服务器线性

用于与线性API交互的模型上下文协议(MCP)服务器。此服务器提供工具和资源,用于通过标准化的MCP接口访问和操纵线性问题、项目和其他数据。

概述

这 mcp-server-linear 该项目是客户端应用程序(特别是人工智能助手和其他工具)和Linear之间的桥梁,为访问和操纵Linear资源提供了一个标准化的接口。

主要特点:

  • 对线性资源(问题、项目、倡议、团队)的标准化访问
  • 针对问题和评论的完整CRUD操作
  • 高级问题过滤和搜索功能
  • 一致的错误处理和响应格式
  • 通过MCP协议与AI助手集成

配置

线性API身份验证

此服务器支持两种身份验证方法:

选项1:API密钥验证

您可以设置 LINEAR_API_KEY 环境变量:

  1. 首选 线性设置>API
  2. 在“个人API密钥”下,单击“创建密钥”
  3. 为您的密钥命名(例如,“MCP服务器”)
  4. 复制生成的API密钥
  5. 运行服务器时设置环境变量

选项2:OAuth身份验证

或者,您可以通过设置以下环境变量来使用OAuth身份验证:

  1. 在以下位置创建OAuth应用程序 线性设置>API>应用程序
  2. 配置您的应用程序并获取客户端ID和客户端密钥
  3. 设置以下环境变量:
LINEAR_OAUTH_CLIENT_ID=your_oauth_client_id
LINEAR_OAUTH_CLIENT_SECRET=your_oauth_client_secret

如果配置了这两种身份验证方法,OAuth身份验证将被优先考虑。

或者,您可以在shell配置文件中设置环境变量,或者使用类似的工具 dotenv.

用法

启动服务器

您可以直接使用npx运行MCP服务器,而无需全局安装:

LINEAR_API_KEY=your_api_key_here npx -y @mkusaka/mcp-server-linear

与MCP客户端集成

此MCP服务器可以与各种AI助手和MCP兼容客户端集成:

人与克劳德的融合

您可以通过各种客户端将此MCP服务器与Anthropic Claude一起使用:

Cline(VS代码扩展)

克莱恩 是一个VS Code扩展,允许您将MCP服务器与Claude AI一起使用:

  1. 打开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
  2. 添加线性MCP服务器配置:

{
  "mcpServers": {
    "linear": {
      "command": "npx",
      "args": ["-y", "@mkusaka/mcp-server-linear"],
      "env": {
        "LINEAR_API_KEY": "your_linear_api_key"
        // or when using OAuth authentication
        // "LINEAR_OAUTH_CLIENT_ID": "your_oauth_client_id",
        // "LINEAR_OAUTH_CLIENT_SECRET": "your_oauth_client_secret"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
光标

将以下内容添加到Cursor配置文件中(~/.cursor/config.json):

{
  "mcpServers": {
    "linear": {
      "command": "npx",
      "args": ["-y", "@mkusaka/mcp-server-linear"],
      "env": {
        "LINEAR_API_KEY": "your_linear_api_key"
        // or when using OAuth authentication
        // "LINEAR_OAUTH_CLIENT_ID": "your_oauth_client_id",
        // "LINEAR_OAUTH_CLIENT_SECRET": "your_oauth_client_secret"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

可用工具

此MCP服务器提供以下工具:

问题管理

  • create_issue -在Linear中创建新问题
  • update_issue -更新现有问题
  • delete_issue -删除现有问题
  • update_issue_labels -更新问题标签
  • update_issue_priority -更新问题的优先级
  • update_issue_estimate -更新对问题的估计
  • update_issue_state -更新问题的状态
  • search_issues -使用高级筛选选项搜索问题

评论管理

  • create_comment -对某个问题创建新评论
  • update_comment -更新现有评论
  • delete_comment -删除现有评论
  • get_issue_comments -获取特定问题的评论

资源访问

  • projects -获取Linear中的所有项目
  • project -按ID获取单个项目
  • issue -按ID获取单个问题
  • project_statuses -获取所有项目状态
  • project_issues -获取项目中的所有问题
  • issue_labels -获取所有问题标签
  • issue_states -获取所有可用的问题状态
  • get_viewer -获取当前用户信息,包括团队
  • update_project_state -更新项目的状态

建筑

该服务器遵循模型上下文协议(MCP)架构,提供了一种访问线性资源的标准化方法。关键的架构决策包括:

  1. 资源组织:资源按域组织在单独的文件中
  2. 错误处理:跨所有资源的一致错误处理
  3. 响应格式:一致的JSON响应格式

有关体系结构的更多详细信息,请参见 adr.md.

发展

# Run tests
pnpm test

# Build the project
pnpm run build

# Watch for changes
pnpm run watch

# Run with inspector
pnpm run debug

对于开发和测试,您可以使用MCP检查器与服务器交互:

# Install the MCP Inspector globally
pnpm install -g @modelcontextprotocol/inspector

# Run the server with the inspector
LINEAR_API_KEY=your_api_key_here mcp-inspector /path/to/mcp-server-linear/dist/index.js

# Or using npx
LINEAR_API_KEY=your_api_key_here npx -y @modelcontextprotocol/inspector @mkusaka/mcp-server-linear

命令行选项

# Enable logging (logs to linear-mcp.log by default)
pnpm run start -- --debug

# Enable logging with custom log file path
pnpm run start -- --debug --log-file custom-path.log

贡献

欢迎投稿!看 adr.md 用于架构决策和项目结构。

许可证

麻省理工学院