monday-automation について
Rube MCP と Composio の Monday ツールキットで Monday.com の業務管理を自動化するスキルです。ボード、タスク、共同作業情報を整理するチーム向けで、列の更新、サブアイテム、コメント、GraphQL 操作にも対応します。
主な機能
- 01ボード、グループ、列の作成
- 02アイテムの作成・取得・移動
- 03アイテムの列値の更新
- 04サブアイテムの表示と作成
- 05コメントや更新の追加
活用シーン
- 01グループと列を備えたボードの構築
- 02タスクの状態、日付、担当者の更新
- 03サブアイテムの確認とコメント追加
MCP 対応
Rube MCP 経由で Composio の Monday ツールキットを呼び出します。Rube MCP の接続と Monday.com の OAuth 認証が必要です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill monday-automationインストール後、Claude Code で/monday-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による Monday.com の自動化
Composio の Monday ツールキットを通じて、ボードの作成、アイテムの管理、列の値の更新、グループの整理、サブアイテム、更新/コメントのスレッドなど、Monday.com のワークマネジメントワークフローを自動化します。
ツールキットのドキュメント:composio.dev/toolkits/monday
前提条件
- Rube MCP に接続済みであること(RUBE_SEARCH_TOOLS が利用可能)
RUBE_MANAGE_CONNECTIONSを通じてmondayツールキットの Monday.com 接続が有効であること- 現在のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください
セットアップ
Rube MCP を入手する:クライアントの設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで利用できます。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを検証します- ツールキットに
mondayを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクに従って Monday.com OAuth を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
1. ボードの作成と管理
使用する場面:ユーザーが新しいボードを作成したい場合、既存のボードを一覧表示したい場合、またはワークスペースの構成を設定したい場合。
ツールの順序:
MONDAY_GET_WORKSPACES- 利用可能なワークスペースを一覧表示し、ワークスペース ID を特定します[前提条件]MONDAY_LIST_BOARDS- 重複を確認するため、既存のボードを一覧表示します[任意]MONDAY_CREATE_BOARD- 名前、種類、ワークスペースを指定して新しいボードを作成します[必須]MONDAY_CREATE_COLUMN- 新しいボードに列を追加します[任意]MONDAY_CREATE_GROUP- アイテムを整理するためのグループを追加します[任意]MONDAY_BOARDS- 詳細なボードメタデータを取得します[任意]
主なパラメーター:
board_name:新しいボードの名前(必須)board_kind:"public"、"private"、または "share"(必須)workspace_id:数値のワークスペース ID。デフォルトのワークスペースを使用する場合は省略しますfolder_id:フォルダー ID。両方を指定する場合、workspace_id内に存在する必要がありますtemplate_id:複製する、アクセス可能なテンプレートの ID
注意点:
board_kindは必須で、"public"、"private"、"share" のいずれかを指定する必要がありますworkspace_idとfolder_idの両方を指定する場合、フォルダーはそのワークスペース内に存在する必要がありますtemplate_idは、認証済みユーザーがアクセスできるテンプレートを参照する必要があります- ボード ID は大きな整数です。API の応答に含まれる値を必ずそのまま使用してください
2. アイテムの作成と管理
使用する場面:ユーザーがボードにタスク/アイテムを追加したい場合、既存のアイテムを一覧表示したい場合、またはアイテムをグループ間で移動したい場合。
ツールの順序:
MONDAY_LIST_BOARDS- ボード名からボード ID を特定します[前提条件]MONDAY_LIST_GROUPS- ボード上のグループを一覧表示し、group_id を取得します[前提条件]MONDAY_LIST_COLUMNS- 値を設定するための列 ID と種類を取得します[前提条件]MONDAY_CREATE_ITEM- 名前と列の値を指定して新しいアイテムを作成します[必須]MONDAY_LIST_BOARD_ITEMS- ボード上のすべてのアイテムを一覧表示します[任意]MONDAY_MOVE_ITEM_TO_GROUP- アイテムを別のグループに移動します[任意]MONDAY_ITEMS_PAGE- フィルタリングを使ってアイテムをページネーション付きで取得します[任意]
主なパラメーター:
board_id:ボード ID(必須、整数)item_name:アイテム名、最大 256 文字(必須)group_id:アイテムを配置するグループ ID の文字列(任意)column_values:列 ID と値の対応を示す JSON オブジェクトまたは文字列
注意点:
column_valuesでは列のタイトルではなく列 ID を使用する必要があります。MONDAY_LIST_COLUMNSから取得してください- 列の値の形式は種類によって異なります。ステータスには
{"index": 0}または{"label": "Done"}、日付には{"date": "YYYY-MM-DD"}、ユーザーには{"personsAndTeams": [{"id": 123, "kind": "person"}]}を使用します item_nameは最大 256 文字です- サブアイテムのボードは
MONDAY_CREATE_ITEMではサポートされていません。MONDAY_CREATE_OBJECTを通じて GraphQL を使用してください
3. アイテムの列の値を更新する
使用する場面:既存のアイテムのステータス、日付、テキスト、その他の列の値を変更したい場合です。
ツールの実行順序:
MONDAY_LIST_COLUMNSまたはMONDAY_COLUMNS- 列の ID と種類を取得します[前提条件]MONDAY_LIST_BOARD_ITEMSまたはMONDAY_ITEMS_PAGE- 対象アイテムの ID を確認します[前提条件]MONDAY_CHANGE_SIMPLE_COLUMN_VALUE- 文字列の値でテキスト、ステータス、ドロップダウンを更新します[必須]MONDAY_UPDATE_ITEM- JSON を使って、タイムライン、ユーザー、日付などの複雑な列の種類を更新します[必須]
MONDAY_CHANGE_SIMPLE_COLUMN_VALUE の主なパラメーター:
board_id:ボード ID(整数、必須)item_id:アイテム ID(整数、必須)column_id:列 ID の文字列(必須)value:単純な文字列の値(例:「Done」、「Working on it」)create_labels_if_missing:ステータス/ドロップダウンのラベルを自動作成する場合は true(デフォルトは true)
MONDAY_UPDATE_ITEM の主なパラメーター:
board_id:ボード ID(整数、必須)item_id:アイテム ID(整数、必須)column_id:列 ID の文字列(必須)value:列の種類のスキーマに一致する JSON オブジェクトcreate_labels_if_missing:デフォルトは false。ステータス/ドロップダウンの場合は true に設定します
注意点:
- 単純なテキスト/ステータス/ドロップダウンの更新には、
MONDAY_CHANGE_SIMPLE_COLUMN_VALUE(文字列の値)を使用します - タイムライン、ユーザー、日付などの複雑な種類には、
MONDAY_UPDATE_ITEM(JSON の値)を使用します - 列 ID は小文字とアンダースコアで構成される文字列です(例:「status_1」、「date_2」、「text」)。
MONDAY_LIST_COLUMNSで取得します - ステータスの値は、ラベル名(「Done」)またはインデックス番号(「1」)で設定できます
create_labels_if_missingのデフォルト値は異なります。CHANGE_SIMPLE では true、UPDATE_ITEM では false です
4. グループとボード構造を操作する
使用する場面:アイテムをグループに整理したり、列を追加したり、ボード構造を確認したりしたい場合です。
ツールの実行順序:
MONDAY_LIST_BOARDS- ボード ID を特定します[前提条件]MONDAY_LIST_GROUPS- ボード上のすべてのグループを一覧表示します[必須]MONDAY_CREATE_GROUP- 新しいグループを作成します[任意]MONDAY_LIST_COLUMNSまたはMONDAY_COLUMNS- 列構造を確認します[必須]MONDAY_CREATE_COLUMN- ボードに新しい列を追加します[任意]MONDAY_MOVE_ITEM_TO_GROUP- グループ間でアイテムを再編成します[任意]
主なパラメーター:
board_id:ボード ID(グループ/列に関するすべての操作で必須)group_name:新しいグループの名前(CREATE_GROUP)column_type:有効な GraphQL enum トークンを snake_case で指定する必要があります(例:「status」、「text」、「long_text」、「numbers」、「date」、「dropdown」、「people」)title:列に表示するタイトルdefaults:ステータス/ドロップダウンのラベルを指定する JSON 文字列(例:'{"labels": ["To Do", "In Progress", "Done"]}')
注意点:
column_typeには正確な snake_case の値を指定する必要があります。「person」は無効です。「people」を使用してください- グループ ID は文字列です(例:「topics」、「new_group_12345」)。整数ではありません
MONDAY_COLUMNSはboard_idsの配列を受け取り、設定を含む列のメタデータを返しますMONDAY_LIST_COLUMNSはよりシンプルで、単一のboard_idを受け取ります
5. サブアイテムと更新を管理する
使用するタイミング:タスクのサブアイテムを表示したい場合や、アイテムにコメント/更新を追加したい場合です。
ツールの実行順序:
MONDAY_LIST_BOARD_ITEMS- 親アイテムの ID を検索します[前提条件]MONDAY_LIST_SUBITEMS_BY_PARENT- 列の値を含むサブアイテムを取得します[必須]MONDAY_CREATE_UPDATE- アイテムにコメント/更新を追加します[任意]MONDAY_CREATE_OBJECT- GraphQL ミューテーションでサブアイテムを作成します[任意]
MONDAY_LIST_SUBITEMS_BY_PARENT の主なパラメーター:
parent_item_ids:親アイテムの ID の配列(整数配列、必須)include_column_values:列のデータを含める場合は true(デフォルトは true)include_parent_fields:親アイテムの情報を含める場合は true(デフォルトは true)
MONDAY_CREATE_OBJECT の主なパラメーター(GraphQL):
query:GraphQL ミューテーション文字列全体variables:任意の変数オブジェクト
注意事項:
- サブアイテムを取得できるのは、親アイテムを通じてのみです
- サブアイテムを作成するには、
create_subitemGraphQL ミューテーションを指定してMONDAY_CREATE_OBJECTを使用します MONDAY_CREATE_UPDATEはアイテムへのコメント/更新の追加(Monday の「更新」機能)に使用するものであり、アイテムの値の変更には使用しませんMONDAY_CREATE_OBJECTは GraphQL の生のエンドポイントです。正しいミューテーション構文を使用してください
よくあるパターン
ID の解決
操作の前に、表示名を必ず ID に解決してください:
- ボード名 -> board_id:
MONDAY_LIST_BOARDSを使用し、名前で照合します - グループ名 -> group_id:
board_idを指定してMONDAY_LIST_GROUPSを使用します - 列タイトル -> column_id:
board_idを指定してMONDAY_LIST_COLUMNSを使用します - ワークスペース名 -> workspace_id:
MONDAY_GET_WORKSPACESを使用し、名前で照合します - アイテム名 -> item_id:
MONDAY_LIST_BOARD_ITEMSまたはMONDAY_ITEMS_PAGEを使用します
ページネーション
Monday.com では、アイテムにカーソルベースのページネーションを使用します:
MONDAY_ITEMS_PAGEは、次のページ用のcursorをレスポンスで返します- 次の呼び出しに
cursorを渡してください。カーソルを指定すると、board_idとquery_paramsは無視されます - カーソルは 60 分間キャッシュされます
- 1 ページあたりの
limitの最大値は 500 です MONDAY_LIST_BOARDSとMONDAY_GET_WORKSPACESは、pageとlimitを使用するページベースのページネーションを使用します
列の値の形式
列のタイプごとに異なる値の形式が必要です:
- ステータス:
{"index": 0}、{"label": "Done"}、または単純な文字列 "Done" - 日付:
{"date": "YYYY-MM-DD"} - ユーザー:
{"personsAndTeams": [{"id": 123, "kind": "person"}]} - テキスト/数値:プレーンな文字列または数値
- タイムライン:
{"from": "YYYY-MM-DD", "to": "YYYY-MM-DD"}
既知の注意事項
ID の形式
- ボード ID とアイテム ID は大きな整数です(例:1234567890)
- グループ ID は文字列です(例:"topics"、"new_group_12345")
- 列 ID は短い文字列です(例:"status_1"、"date4"、"text")
- ワークスペース ID は整数です
レート制限
- Monday.com GraphQL API には、複雑さに基づくレート制限があります
- 列が多い大規模なボードでは、クエリの複雑さが増します
- レート制限に達した場合は、
limitパラメーターを使ってリクエストごとのアイテム数を減らしてください
パラメーターに関する注意点
- CREATE_COLUMN の
column_typeには、正確な snake_case の列挙値を指定する必要があります。"person" ではなく "people" を使用してください - CREATE_ITEM の
column_valuesは、JSON 文字列とオブジェクトのどちらの形式も受け付けます MONDAY_CHANGE_SIMPLE_COLUMN_VALUEは、デフォルトで存在しないラベルを自動作成しますが、MONDAY_UPDATE_ITEMは作成しませんMONDAY_CREATE_OBJECTは GraphQL の生のインターフェイスです。専用のツールがない操作(例:create_subitem、delete_item、archive_board)に使用してください
レスポンスの構造
- ボードアイテムは、
id、name、stateフィールドを含む配列として返されます - 列の値には、生の
value(JSON)と描画済みのtext(表示文字列)の両方が含まれます - サブアイテムは親アイテムの下にネストされており、単独では取得できません
クイックリファレンス
| タスク | ツールスラッグ | 主なパラメーター |
|---|---|---|
| ワークスペースを一覧表示 | MONDAY_GET_WORKSPACES | kind、state、limit |
| ワークスペースを作成 | MONDAY_CREATE_WORKSPACE | name、kind |
| ボードを一覧表示 | MONDAY_LIST_BOARDS | limit、page、state |
| ボードを作成 | MONDAY_CREATE_BOARD | board_name、board_kind、workspace_id |
| ボードのメタデータを取得 | MONDAY_BOARDS | board_ids、board_kind |
| グループを一覧表示 | MONDAY_LIST_GROUPS | board_id |
| グループを作成 | MONDAY_CREATE_GROUP | board_id、group_name |
| 列を一覧表示 | MONDAY_LIST_COLUMNS | board_id |
| 列のメタデータを取得 | MONDAY_COLUMNS | board_ids、column_types |
| 列を作成 | MONDAY_CREATE_COLUMN | board_id、column_type、title |
| アイテムを作成 | MONDAY_CREATE_ITEM | board_id、item_name、column_values |
| ボードのアイテムを一覧表示 | MONDAY_LIST_BOARD_ITEMS | board_id |
| ページネーション付きアイテム | MONDAY_ITEMS_PAGE | board_id、limit、query_params |
| 列を更新(シンプル) | MONDAY_CHANGE_SIMPLE_COLUMN_VALUE | board_id、item_id、column_id、value |
| 列を更新(複雑) | MONDAY_UPDATE_ITEM | board_id、item_id、column_id、value |
| アイテムをグループに移動 | MONDAY_MOVE_ITEM_TO_GROUP | item_id、group_id |
| サブアイテムを一覧表示 | MONDAY_LIST_SUBITEMS_BY_PARENT | parent_item_ids |
| コメント/更新を追加 | MONDAY_CREATE_UPDATE | item_id、body |
| GraphQL ミューテーションを直接実行 | MONDAY_CREATE_OBJECT | query、variables |
Composio 提供