Skip to main content
Glama

リニアMCPサーバー

これは Linear の Model Context Protocol (MCP) サーバーであり、Claude が Linear の API と対話してチーム、問題、プロジェクト、サイクルを管理できるようにします。

Cline MCPマーケットプレイス

特徴

  • linear_get_teams : すべてのチームとその状態およびラベルを取得します。

  • linear_search_issues : フィルタリングとページ区切りを使用して問題を検索する

  • linear_get_cycles : チームのすべてのサイクルを取得する

  • linear_get_projects : すべてのプロジェクトを取得する

  • linear_create_issue : 新しい問題を作成する

  • linear_update_issue : 既存の問題を更新する

Related MCP server: Backlog MCP Server

クイックスタート

Cline MCP マーケットプレイス ユーザーの場合:

  1. Cline MCP Marketplace を通じてサーバーをインストールする

  2. MCP 構成ファイルでLinear 資格情報を構成する

  3. linear_search_issuesで接続をテストしてインストールを確認します。

以下の詳細なインストール検証のセクションを参照してください。

インストール

  1. このリポジトリをクローンする

  2. 依存関係をインストールします:

    npm install
  3. サーバーを構築します。

    npm run build

インストール プロセスには主に 3 つのステップがあります。

  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 ステータスの確認: status.linear.appで Linear API が動作していることを確認します。

  4. サーバー ログの検査: サーバーを手動で実行している場合は、コンソール出力でエラー メッセージを確認します。

発達

サーバーはTypeScriptとLinear SDKを使用して構築されています。主な実装はsrc/index.tsにあります。

サーバーに変更を加えるには:

  1. src/のソースコードを編集する

  2. npm run buildでサーバーをビルドします。

  3. テストクライアントで変更をテストする

  4. 新しいビルドを使用するようにMCP構成を更新します

セキュリティに関する考慮事項

このMCPサーバーはLinearアカウントへのアクセスを必要とします。データの安全性を確保するため、以下の点にご注意ください。

  1. 機密トークンをコミットしない: .envファイルとトークンを含むファイルは.gitignoreで除外されます。

  2. 環境変数を使用する:MCP 構成では、トークンをハードコーディングするのではなく、常に環境変数を使用します。

  3. 権限を制限する: リニアOAuthアプリケーションを作成するときは、必要な権限のみを付与します。

  4. トークンを定期的にローテーションする: 定期的に新しいトークンを生成し、設定を更新します

サーバーは公式の Linear SDK を使用し、HTTPS 経由で Linear の API と通信して、データが安全に送信されるようにします。

ライセンス

マサチューセッツ工科大学

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cpropster/linear-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server