使用说明

项目简介

Linear Remote MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器端实现,旨在将 Linear 项目管理工具的功能以标准化的方式提供给 LLM 客户端。它允许用户通过 OAuth 2.0 授权,安全地在 MCP 客户端中直接访问和操作 Linear 中的 Issue、团队、用户和工作流等资源。

主要功能点

  • 资源访问: 提供对 Linear 平台 Issues、Teams、Users 和 Workflows 资源的访问能力。
  • 工具集成: 注册并提供一系列预定义的工具,允许 LLM 客户端调用以执行 Linear 平台上的操作,例如:
    • Issue 管理: 创建、查询、更新 Issue。
    • 团队信息: 获取团队列表和团队详情。
    • 用户信息: 获取当前用户信息和用户列表。
    • 工作流信息: 查询工作流状态。
  • OAuth 2.0 认证: 采用标准的 OAuth 2.0 流程进行用户身份验证和授权,确保访问 Linear 数据的安全性。
  • SSE 传输协议: 支持基于 Server-Sent Events (SSE) 的传输协议,用于与 MCP 客户端进行实时通信。
  • Cloudflare Workers 部署: 设计为在 Cloudflare Workers 平台上运行,利用 Cloudflare 的全球网络提供稳定和可扩展的服务。

安装步骤

  1. 克隆仓库

    git clone https://github.com/martinsione/linear-remote-mcp.git
    cd linear-remote-mcp
  2. 安装 Wrangler CLI

    确保已安装 Cloudflare Wrangler CLI,用于部署和管理 Cloudflare Workers。如果未安装,请参考 [Wrangler 文档](https://developers.cloudflare.com/workers/ টুলing/wrangler/) 进行安装。

  3. 配置 Cloudflare 环境变量

    在 Cloudflare 控制台中,为您的 Worker 项目配置以下环境变量:

    • 'LINEAR_CLIENT_ID': 您的 Linear OAuth 应用的 Client ID。
    • 'LINEAR_CLIENT_SECRET': 您的 Linear OAuth 应用的 Client Secret。
    • 'OAUTH_KV': Cloudflare KV 命名空间的绑定名称,用于存储 OAuth 相关数据。您需要在 Cloudflare 控制台中创建一个 KV 命名空间,并将其绑定到您的 Worker。
    • 'MCP_OBJECT': Durable Object 命名空间的绑定名称,用于运行 MCP 服务器逻辑。您需要在 Cloudflare 控制台中创建一个 Durable Object 命名空间,并将其绑定到您的 Worker。
  4. 部署到 Cloudflare Workers

    使用 Wrangler CLI 将代码部署到 Cloudflare Workers:

    wrangler deploy

    部署成功后,Wrangler CLI 将提供您的 Worker 的 URL。

服务器配置

要将 Linear Remote MCP Server 集成到 MCP 客户端,您需要配置客户端连接到该服务器。以下是一个典型的 MCP 服务器配置示例(JSON 格式):

{
  "serverName": "Linear-MCP",
  "command": "您的_Cloudflare_Worker_URL/sse",
  "args": [],
  "transport": "sse",
  "protocol": "json-rpc",
  "capabilities": [
    "tools",
    "prompts",
    "resources"
  ]
}

配置参数说明:

  • 'serverName': MCP 服务器的名称,可以自定义,例如 "Linear-MCP"。
  • 'command': 您的 Cloudflare Worker URL/sse。请将 '您的_Cloudflare_Worker_URL' 替换为您在部署步骤中获取的 Cloudflare Worker URL,并确保路径为 '/sse',这是 SSE 连接的端点。
  • 'args': 启动命令的参数,对于此服务器配置,通常为空数组 '[]'。
  • 'transport': 传输协议,设置为 'sse' (Server-Sent Events)。
  • 'protocol': 通信协议,设置为 'json-rpc' (JSON-RPC)。
  • 'capabilities': 声明服务器提供的功能,包括 'tools' (工具)、'prompts' (Prompt 模板) 和 'resources' (资源)。虽然此仓库目前主要关注工具功能,但为了兼容性,建议包含所有可能的功能声明。

基本使用方法

  1. 客户端连接: 在 MCP 客户端中,使用上述服务器配置信息建立与 Linear Remote MCP Server 的连接。

  2. OAuth 授权: 首次连接时,客户端可能会引导您进行 OAuth 授权流程。您需要访问 Linear 授权页面,并授权 MCP 客户端访问您的 Linear 账户。

  3. 调用工具: 连接成功后,您可以在 MCP 客户端中使用 'tools' 功能,调用 Linear Remote MCP Server 提供的各种工具,例如 'list_issues'、'create_issue'、'get_team_by_id' 等,以实现对 Linear 资源的访问和操作。

    例如,要列出所有 Issue,您可以调用 'list_issues' 工具。具体工具的使用方法和参数,请参考仓库中 'src/mcp/tools' 目录下的工具定义。

  4. 登出: 您可以调用 'logout' 工具来安全地退出 Linear 账户,并撤销已授予的 OAuth 授权。

注意:

  • 由于此 MCP 服务器是基于 OAuth 2.0 进行认证的,请确保您的 MCP 客户端支持 OAuth 流程,以便完成授权。
  • 请仔细阅读仓库中的代码和注释,以便更深入地理解每个工具的功能和使用方法。

信息

分类

生产力应用