mcpField
L
linear-automation

linear-automation

github.com/composiohq生産性78.3k72 回インストール14 週間前に更新
リポジトリ

linear-automation について

Rube MCP と Composio の Linear ツールキットを通じて、Linear の業務を自動化するスキルです。課題、プロジェクト、サイクル、ラベル、コメント、カスタム GraphQL 操作に対応します。

主な機能

  1. 01課題の作成、検索、更新
  2. 02プロジェクトとサイクルの管理
  3. 03ラベルの作成とコメントの編集
  4. 04カスタム GraphQL クエリの実行

活用シーン

  1. 01チームの課題を作成または更新
  2. 02プロジェクトとサイクルを確認
  3. 03課題にラベルやコメントを追加
  4. 04標準ツール以外の Linear データを検索

MCP 対応

Rube MCP と Composio の Linear ツールキットを使用します。有効な Linear 接続と最新のツールスキーマが必要です。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/composiohq/awesome-claude-skills --skill linear-automation

インストール後、Claude Code で/linear-automationを入力して読み込まれたか確認します。

詳細

Rube MCP による Linear の自動化

Rube MCP 経由で Composio の Linear ツールキットを使用し、Linear の操作を自動化します。

ツールキットのドキュメント:composio.dev/toolkits/linear

前提条件

  • Rube MCP が接続されていること(RUBE_SEARCH_TOOLS を利用可能)
  • RUBE_MANAGE_CONNECTIONS でツールキット linear を指定して、Linear へのアクティブな接続を確立していること
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出すこと

セットアップ

Rube MCP の取得:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで動作します。

  1. RUBE_SEARCH_TOOLS が応答することを確認し、Rube MCP が利用可能であることを確認します
  2. ツールキット linear を指定して RUBE_MANAGE_CONNECTIONS を呼び出します
  3. 接続が ACTIVE でない場合は、返された認証リンクに従って Linear OAuth を完了します
  4. ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します

主なワークフロー

1. イシューの管理

使用する場面:ユーザーが Linear のイシューの作成、検索、更新、一覧表示を希望する場合

ツールの呼び出し順序:

  1. LINEAR_GET_ALL_LINEAR_TEAMS - チーム ID を取得 [前提条件]
  2. LINEAR_LIST_LINEAR_STATES - チームのワークフロー状態を取得 [前提条件]
  3. LINEAR_CREATE_LINEAR_ISSUE - 新しいイシューを作成 [任意]
  4. LINEAR_SEARCH_ISSUES / LINEAR_LIST_LINEAR_ISSUES - イシューを検索 [任意]
  5. LINEAR_GET_LINEAR_ISSUE - イシューの詳細を取得 [任意]
  6. LINEAR_UPDATE_ISSUE - イシューのプロパティを更新 [任意]

主なパラメーター:

  • team_id:チーム ID(作成時に必須)
  • title:イシューのタイトル
  • description:イシューの説明(Markdown に対応)
  • state_id:ワークフロー状態 ID
  • assignee_id:担当者のユーザー ID
  • priority:0(なし)、1(緊急)、2(高)、3(中)、4(低)
  • label_ids:ラベル ID の配列

注意点:

  • イシューの作成時にはチーム ID が必須です。最初に GET_ALL_LINEAR_TEAMS を使用してください
  • 状態 ID はチームごとに異なります。正しいチームを指定して LIST_LINEAR_STATES を使用してください
  • 優先度には文字列名ではなく、0~4 の整数値を使用します
2. プロジェクトの管理

使用する場面:ユーザーが Linear プロジェクトの作成または更新を希望する場合

ツールの呼び出し順序:

  1. LINEAR_LIST_LINEAR_PROJECTS - 既存のプロジェクトを一覧表示 [任意]
  2. LINEAR_CREATE_LINEAR_PROJECT - 新しいプロジェクトを作成 [任意]
  3. LINEAR_UPDATE_LINEAR_PROJECT - プロジェクトの詳細を更新 [任意]

主なパラメーター:

  • name:プロジェクト名
  • description:プロジェクトの説明
  • team_ids:プロジェクトに関連付けられたチーム ID の配列
  • state:プロジェクトの状態(例:'planned'、'started'、'completed')

注意点:

  • プロジェクトは複数のチームにまたがるため、複数のチームに関連付けることができます
3. サイクルの管理

使用する場面:ユーザーが Linear のサイクル(スプリント)を操作したい場合

ツールの呼び出し順序:

  1. LINEAR_GET_ALL_LINEAR_TEAMS - チーム ID を取得 [前提条件]
  2. LINEAR_GET_CYCLES_BY_TEAM_ID / LINEAR_LIST_LINEAR_CYCLES - サイクルを一覧表示 [必須]

主なパラメーター:

  • team_id:サイクル操作の対象となるチーム ID
  • number:サイクル番号

注意点:

  • サイクルはチームごとに異なります。必ず team_id で対象を絞り込んでください
4. ラベルとコメントの管理

使用する場面:ユーザーがラベルの作成やイシューへのコメントを希望する場合

ツールの呼び出し順序:

  1. LINEAR_CREATE_LINEAR_LABEL - 新しいラベルを作成 [任意]
  2. LINEAR_CREATE_LINEAR_COMMENT - イシューにコメント [任意]
  3. LINEAR_UPDATE_LINEAR_COMMENT - コメントを編集 [任意]

主なパラメーター:

  • name:ラベル名
  • color:ラベルの色(16 進数)
  • issue_id:コメント対象のイシュー ID
  • body:コメント本文(Markdown)

注意点:

  • ラベルはチーム単位またはワークスペース単位で設定できます
  • コメント本文は Markdown 形式に対応しています
5. カスタム GraphQL クエリ

使用する場面:標準ツールでは対応できない高度なクエリが必要な場合

ツールの呼び出し順序:

  1. LINEAR_RUN_QUERY_OR_MUTATION - カスタム GraphQL を実行 [必須]

主なパラメーター:

  • query:GraphQL のクエリまたはミューテーション文字列
  • variables:クエリの変数

注意点:

  • Linear の GraphQL スキーマに関する知識が必要です
  • GraphQL クエリにはレート制限が適用されます

よくあるパターン

ID の解決

チーム名 -> チーム ID:

1. Call LINEAR_GET_ALL_LINEAR_TEAMS
2. Find team by name in response
3. Extract id field

状態名 -> 状態 ID:

1. Call LINEAR_LIST_LINEAR_STATES with team_id
2. Find state by name
3. Extract id field
ページネーション
  • Linear ツールはページネーションされた結果を返します
  • レスポンスにページネーションカーソルがあるか確認します
  • 追加のページを取得するには、次のリクエストにカーソルを渡します

既知の注意点

チームのスコープ:

  • イシュー、状態、サイクルはチームごとに異なります
  • イシューを作成する前に、必ず team_id を解決してください

優先度の値:

  • 0 = 優先度なし、1 = 緊急、2 = 高、3 = 中、4 = 低
  • 文字列名ではなく、整数値を使用してください

クイックリファレンス

タスクツールのスラッグ主なパラメーター
チームを一覧表示LINEAR_GET_ALL_LINEAR_TEAMS(none)
イシューを作成LINEAR_CREATE_LINEAR_ISSUEteam_id, title, description
イシューを検索LINEAR_SEARCH_ISSUESquery
イシューを一覧表示LINEAR_LIST_LINEAR_ISSUESteam_id, filters
イシューを取得LINEAR_GET_LINEAR_ISSUEissue_id
イシューを更新LINEAR_UPDATE_ISSUEissue_id, fields
状態を一覧表示LINEAR_LIST_LINEAR_STATESteam_id
プロジェクトを一覧表示LINEAR_LIST_LINEAR_PROJECTS(none)
プロジェクトを作成LINEAR_CREATE_LINEAR_PROJECTname, team_ids
プロジェクトを更新LINEAR_UPDATE_LINEAR_PROJECTproject_id, fields
サイクルを一覧表示LINEAR_LIST_LINEAR_CYCLESteam_id
サイクルを取得LINEAR_GET_CYCLES_BY_TEAM_IDteam_id
ラベルを作成LINEAR_CREATE_LINEAR_LABELname, color
コメントを作成LINEAR_CREATE_LINEAR_COMMENTissue_id, body
コメントを更新LINEAR_UPDATE_LINEAR_COMMENTcomment_id, body
ユーザーを一覧表示LINEAR_LIST_LINEAR_USERS(none)
現在のユーザーLINEAR_GET_CURRENT_USER(none)
GraphQL を実行LINEAR_RUN_QUERY_OR_MUTATIONquery, variables

Composio によって提供されています

コメント