Linear MCP Server

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 to manage teams, issues, projects, and cycles, including searching issues, creating and updating issues, and retrieving team-related data.

선형 MCP 서버

이는 Linear용 MCP(Model Context Protocol) 서버로, Claude가 Linear의 API와 상호 작용하여 팀, 이슈, 프로젝트 및 주기를 관리할 수 있도록 해줍니다.

특징

  • linear_get_teams : 모든 팀과 그 상태, 레이블을 가져옵니다.
  • linear_search_issues : 필터링 및 페이지 매김 관련 문제 검색
  • linear_get_cycles : 팀의 모든 사이클을 가져옵니다.
  • linear_get_projects : 모든 프로젝트 가져오기
  • linear_create_issue : 새로운 이슈를 생성합니다
  • linear_update_issue : 기존 이슈를 업데이트합니다

빠른 시작

Cline MCP Marketplace 사용자를 위한 안내:

  1. Cline MCP Marketplace를 통해 서버를 설치하세요
  2. MCP 구성 파일에서 선형 자격 증명을 구성하세요.
  3. linear_search_issues 로 연결을 테스트하여 설치를 확인하세요.

자세한 설치검증 섹션은 아래에서 확인하세요.

설치

  1. 이 저장소를 복제하세요
  2. 종속성 설치:지엑스피1
  3. 서버를 빌드하세요:
    npm run build

설치 과정은 세 가지 주요 단계로 구성됩니다.

  1. 설정 : 서버 복제 및 빌드(위 단계)
  2. 구성 : 선형 OAuth 토큰을 설정하고 MCP 서버를 구성합니다.
  3. 검증 : 연결이 제대로 작동하는지 테스트합니다.

⚠️ 연결이 작동하는지 확인하기 전까지는 설치가 완료되지 않습니다!

구성

서버는 Linear API 인증을 위해 Linear OAuth 토큰이 필요합니다. MCP 구성 파일에서 이 토큰을 설정할 수 있습니다.

선형 OAuth 토큰 얻기

  1. https://linear.app/settings/api/applications 에서 Linear OAuth 애플리케이션을 만듭니다.
  2. OAuth 애플리케이션 만들기
  3. 응용 프로그램 이름을 Cline MCP로 지정하세요.
  4. 리디렉트 URI를 http://localhost:3000/callback 으로 설정합니다.
  5. 클라이언트 ID와 클라이언트 비밀번호를 기록하세요.
  6. USER 기반 개발자 토큰 생성 및 복사

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 서버를 구성한 후에는 연결이 제대로 작동하는지 테스트해야 합니다.

  1. MCP 구성을 다시 로드합니다
  2. 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_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 연결이 작동하지 않는 경우 다음 디버깅 기술을 사용할 수 있습니다.

  1. MCP 구성 확인 : MCP 구성 파일에 올바른 서버 경로와 자격 증명이 있는지 확인하세요.
  2. 테스트 클라이언트 실행 : 포함된 테스트 클라이언트를 사용하여 서버가 Linear에 연결할 수 있는지 확인하세요.
    node test-client.js
    이렇게 하면 서버가 Linear에 연결하여 데이터를 검색할 수 있는지 확인하기 위한 일련의 테스트가 실행됩니다.
  3. Linear API 상태 확인 : Linear API가 status.linear.app 에서 작동하는지 확인합니다.
  4. 서버 로그 검사 : 서버를 수동으로 실행하는 경우 콘솔 출력에서 오류 메시지를 확인하세요.

개발

서버는 TypeScript와 Linear SDK를 사용하여 구축되었습니다. 주요 구현은 src/index.ts 에 있습니다.

서버를 변경하려면:

  1. src/ 의 소스 코드를 편집하세요
  2. npm run build 로 서버를 빌드하세요
  3. 테스트 클라이언트로 변경 사항을 테스트하세요
  4. 새 빌드를 사용하도록 MCP 구성을 업데이트하세요.

보안 고려 사항

이 MCP 서버는 Linear 계정에 대한 액세스 권한을 필요로 합니다. 데이터 보안을 유지하려면 다음 단계를 따르세요.

  1. 민감한 토큰을 커밋하지 마십시오 . .env 파일과 토큰을 포함하는 모든 파일은 .gitignore 에서 제외됩니다.
  2. 환경 변수 사용 : 토큰을 하드코딩하는 대신 항상 MCP 구성에서 환경 변수를 사용하세요.
  3. 권한 제한 : Linear OAuth 애플리케이션을 생성할 때 필요한 권한만 부여합니다.
  4. 정기적으로 토큰 회전 : 주기적으로 새 토큰을 생성하고 구성을 업데이트합니다.

서버는 공식 Linear SDK를 사용하고 HTTPS를 통해 Linear의 API와 통신하여 데이터가 안전하게 전송되도록 보장합니다.

특허

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Claude가 Linear API와 상호 작용하여 팀, 이슈, 프로젝트 및 사이클을 관리할 수 있게 해주는 모델 컨텍스트 프로토콜 서버입니다.

  1. Features
    1. Quick Start
      1. Installation
        1. Configuration
          1. Getting a Linear OAuth Token
          2. MCP Configuration
          3. Verifying Installation
        2. Usage
          1. Getting Teams
          2. Searching Issues
          3. Getting Cycles
          4. Getting Projects
          5. Creating Issues
          6. Updating Issues
        3. Debugging
          1. Development
            1. Security Considerations
              1. License
                ID: wcsdmumony