mcpField
B
basecamp-automation

basecamp-automation

github.com/sickn33生産性48.8k76 回インストール今日更新
リポジトリ

basecamp-automation について

basecamp-automationは、Composioのツールキットを使ってTo-do、プロジェクトメッセージ、メンバー、プロジェクト構成を管理するBasecamp向けスキルです。読み取り、作成、更新、アクセス管理のワークフローを扱います。

主な機能

  1. 01プロジェクトと構成の閲覧
  2. 02To-doリストとタスクの作成
  3. 03プロジェクトメッセージの投稿と更新
  4. 04メンバーの確認とアクセス管理
  5. 05To-doリスト内のグループ作成

活用シーン

  1. 01プロジェクトのTo-doリスト作成とタスク割り当て
  2. 02メッセージボードへの投稿や内容修正
  3. 03プロジェクトメンバーの確認とアクセス調整
  4. 04To-doのグループ分け

MCP 対応

Rube MCP経由でComposioのBasecampツールキットを呼び出します。利用時は最新のツールスキーマと接続を確認し、対象プロジェクトと書き込み範囲を検証します。

インストール

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill basecamp-automation

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

詳細

Rube MCP による Basecamp の自動化

Composio の Basecamp ツールキットを通じて、プロジェクト管理、ToDo リストの作成、タスク管理、メッセージボードへの投稿、メンバー管理、ToDo グループの整理など、Basecamp の操作を自動化します。

前提条件

  • Rube MCP に接続済みであること(RUBE_SEARCH_TOOLS が利用可能)
  • ツールキット basecamp を指定した RUBE_MANAGE_CONNECTIONS を通じて、Basecamp への有効な接続があること
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください

セットアップ

既存の承認済み Rube 接続と、サポートされているホスト認証フローを使用してください。エンドポイントを追加するだけでは、アカウントへのアクセスは確立されません。

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

以下の過去のスラッグ、型、デフォルト値は、現在のスキーマで確認する必要があります。書き込みを行う前に、アカウント、プロジェクト/ドック ID、および承認済みの対象者を確認してください。メッセージと通知には明示的なアクション範囲が必要です。下書きのリクエストは下書きのままにしてください。アクセス権の付与、招待、取り消しには、対象範囲を正確に指定する必要があります。作成結果が不確かな場合は、代替ツールを試す前に既存の状態を確認し、投稿やタスクの重複を避けてください。

主なワークフロー

1. ToDo リストとタスクの管理

使用する場面:ユーザーが Basecamp プロジェクト内で ToDo リストを作成したり、タスクを追加したり、作業を整理したりしたい場合

ツールの順序:

  1. BASECAMP_GET_PROJECTS - プロジェクトを一覧表示し、対象の bucket_id を見つけます[前提条件]
  2. BASECAMP_GET_BUCKETS_TODOSETS - プロジェクト内の ToDo セットを取得します[前提条件]
  3. BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTS - 重複を避けるため、既存の ToDo リストを一覧表示します[任意]
  4. BASECAMP_POST_BUCKETS_TODOSETS_TODOLISTS - ToDo セットに新しい ToDo リストを作成します[リスト作成に必須]
  5. BASECAMP_GET_BUCKETS_TODOLISTS - 特定の ToDo リストの詳細を取得します[任意]
  6. BASECAMP_POST_BUCKETS_TODOLISTS_TODOS - ToDo リストに ToDo 項目を作成します[タスク作成に必須]
  7. BASECAMP_CREATE_TODO - 個別の ToDo を作成するための代替ツールです[代替]
  8. BASECAMP_GET_BUCKETS_TODOLISTS_TODOS - ToDo リスト内の ToDo を一覧表示します[任意]

ToDo リスト作成時の主なパラメーター:

  • bucket_id:整数のプロジェクト/バケット ID(GET_PROJECTS から取得)
  • todoset_id:整数の ToDo セット ID(GET_BUCKETS_TODOSETS から取得)
  • name:ToDo リストのタイトル(必須)
  • description:HTML 形式の説明(リッチテキストに対応)

ToDo 作成時の主なパラメーター:

  • bucket_id:整数のプロジェクト/バケット ID
  • todolist_id:整数の ToDo リスト ID
  • content:ToDo の内容(必須)
  • description:ToDo の詳細を記載した HTML
  • assignee_ids:整数のメンバー ID の配列
  • due_on:YYYY-MM-DD 形式の期限日
  • starts_on:YYYY-MM-DD 形式の開始日
  • notify:担当者に通知するかどうかを示すブール値(デフォルトは false)
  • completion_subscriber_ids:完了時に通知するメンバー ID

注意点:

  • プロジェクト(バケット)には複数の ToDo セットを含められます。誤った todoset_id を選ぶと、リストが誤ったセクションに作成されます
  • 名前がよく似たリストの重複を避けるため、作成前に必ず既存の ToDo リストを確認してください
  • 成功時のペイロードには、ユーザー向け URL(app_url、app_todos_url)が含まれます。生の ID よりもこれらの URL を返すことを優先してください
  • すべての ID(bucket_id、todoset_id、todolist_id)は整数であり、文字列ではありません
  • 説明で使用できる書式は HTML のみで、Markdown には対応していません
2. メッセージの投稿と管理

使用する場面:ユーザーがプロジェクトのメッセージボードにメッセージを投稿したい場合、または既存のメッセージを更新したい場合

ツールの手順:

  1. BASECAMP_GET_PROJECTS - 対象プロジェクトと bucket_id を検索します[前提条件]
  2. BASECAMP_GET_MESSAGE_BOARD - プロジェクトのメッセージボード ID を取得します[前提条件]
  3. BASECAMP_CREATE_MESSAGE - ボードに新しいメッセージを作成します[必須]
  4. BASECAMP_POST_BUCKETS_MESSAGE_BOARDS_MESSAGES - 代替のメッセージ作成ツールです[フォールバック]
  5. BASECAMP_GET_MESSAGE - ID を指定して特定のメッセージを読み取ります[任意]
  6. BASECAMP_PUT_BUCKETS_MESSAGES - 既存のメッセージを更新します[任意]

主なパラメーター:

  • bucket_id:整数のプロジェクト/バケット ID
  • message_board_id:整数のメッセージボード ID(GET_MESSAGE_BOARD から取得)
  • subject:メッセージのタイトル(必須)
  • content:メッセージ本文の HTML
  • status:すぐに公開するには "active" に設定します
  • category_id:メッセージの種類の分類(任意)
  • subscriptions:通知する人の ID の配列。プロジェクトメンバー全員に通知する場合は省略します

注意点:

  • 下書きの作成に対応していない場合は、ローカルに下書きを保存して制限を報告します。エラーを回避するために公開状態へ切り替えてはいけません
  • bucket_id と message_board_id は同じプロジェクトに属している必要があります。一致しない場合、失敗するか、誤った場所に処理が送られます
  • メッセージ本文でサポートされるのは HTML タグのみで、Markdown は使用できません
  • PUT_BUCKETS_MESSAGES による更新では本文全体が置き換えられます。差分だけでなく、修正後の全文を含めてください
  • ユーザーに提示する確認リンクには、レスポンスの app_url を優先して使用してください
  • CREATE_MESSAGE と POST_BUCKETS_MESSAGE_BOARDS_MESSAGES は同じ処理を行います。サポートされていることが確認できたツールを選択し、タイムアウトした、または結果が不確かな作成処理をフォールバックで繰り返してはいけません
3. ユーザーとアクセス権の管理

使用する場面:ユーザーがメンバーの一覧表示、プロジェクトへのアクセス権の管理、新しいユーザーの追加を希望する場合

ツールの手順:

  1. BASECAMP_GET_PEOPLE - 現在のユーザーに表示される全メンバーを一覧表示します[必須]
  2. BASECAMP_GET_PROJECTS - 対象プロジェクトを検索します[前提条件]
  3. BASECAMP_LIST_PROJECT_PEOPLE - 特定のプロジェクトのメンバーを一覧表示します[必須]
  4. BASECAMP_GET_PROJECTS_PEOPLE - プロジェクトメンバーを一覧表示する代替ツールです[代替]
  5. BASECAMP_PUT_PROJECTS_PEOPLE_USERS - プロジェクトへのアクセス権を付与または取り消します[アクセス権の変更に必須]

PUT_PROJECTS_PEOPLE_USERS の主なパラメーター:

  • project_id:整数のプロジェクト ID
  • grant:プロジェクトに追加する人の整数 ID の配列
  • revoke:プロジェクトから削除する人の整数 ID の配列
  • create:新しいユーザー向けに、name、email_address、および任意の company_name、title を含むオブジェクトの配列
  • grant、revoke、create のいずれかを少なくとも 1 つ指定する必要があります

注意点:

  • メンバー ID は整数です。必ず先に GET_PEOPLE で名前を ID に解決してください
  • メンバー管理に使用する project_id は、他の操作で使用する bucket_id と同じです
  • LIST_PROJECT_PEOPLE と GET_PROJECTS_PEOPLE の機能はほぼ同じです。どちらを使用してもかまいません
  • create を使用してユーザーを作成すると、同時にプロジェクトへのアクセス権も付与されます
4. グループで To-Do を整理する

使用する場面:ユーザーがリスト内の To-Do を色分けされたグループに整理したい場合

ツールの順序:

  1. BASECAMP_GET_PROJECTS - 対象のプロジェクトを検索します [前提条件]
  2. BASECAMP_GET_BUCKETS_TODOLISTS - To-Do リストの詳細を取得します [前提条件]
  3. BASECAMP_GET_TODOLIST_GROUPS - To-Do リスト内の既存のグループを一覧表示します [任意]
  4. BASECAMP_GET_BUCKETS_TODOLISTS_GROUPS - グループを一覧表示する別の方法です [代替]
  5. BASECAMP_POST_BUCKETS_TODOLISTS_GROUPS - To-Do リストに新しいグループを作成します [必須]
  6. BASECAMP_CREATE_TODOLIST_GROUP - グループを作成する別のツールです [代替]

主なパラメーター:

  • bucket_id:整数のプロジェクト/バケット ID
  • todolist_id:整数の To-Do リスト ID
  • name:グループのタイトル(必須)
  • color:表示色の識別子。次のいずれかを指定します:white、red、orange、yellow、green、blue、aqua、purple、gray、pink、brown
  • status:一覧表示のフィルター。"archived" または "trashed"(アクティブなグループの場合は省略)

注意点:

  • POST_BUCKETS_TODOLISTS_GROUPS と CREATE_TODOLIST_GROUP はほぼ同じです。どちらかを使用してください
  • 色の値は固定パレットから選ぶ必要があります。任意の hex/rgb 値には対応していません
  • グループは To-Do リスト内のサブセクションであり、独立したエンティティではありません
5. プロジェクトを閲覧・確認する

使用する場面:ユーザーがプロジェクトを一覧表示したり、詳細を取得したり、プロジェクトの構造を確認したりしたい場合

ツールの順序:

  1. BASECAMP_GET_PROJECTS - アクティブなプロジェクトをすべて一覧表示します [必須]
  2. BASECAMP_GET_PROJECT - 特定のプロジェクトの詳細を取得します [任意]
  3. BASECAMP_GET_PROJECTS_BY_PROJECT_ID - プロジェクトの詳細を取得する別の方法です [代替]

主なパラメーター:

  • status:"archived" または "trashed" でフィルタリングします。アクティブなプロジェクトの場合は省略します
  • project_id:詳細を取得するための整数のプロジェクト ID

注意点:

  • プロジェクトは作成日時の新しい順に並べられます
  • レスポンスには、ツール(todoset、message_board など)とその ID を含む dock 配列があります
  • 後続の操作で使用する todoset_id、message_board_id などを見つけるには、dock のツール ID を使用してください

共通パターン

ID の解決

Basecamp では階層型の ID 構造が使用されています。必ず上位から順に解決してください:

  • プロジェクト(bucket_id):BASECAMP_GET_PROJECTS — 名前で検索し、id を取得します
  • To-Do セット(todoset_id):プロジェクトの dock、または BASECAMP_GET_BUCKETS_TODOSETS から取得します
  • メッセージボード(message_board_id):プロジェクトの dock、または BASECAMP_GET_MESSAGE_BOARD から取得します
  • To-Do リスト(todolist_id):BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTS
  • 人物(person_id):BASECAMP_GET_PEOPLE または BASECAMP_LIST_PROJECT_PEOPLE
  • 注:bucket_id と project_id は、異なるコンテキストで同じエンティティを指します
ページネーション

Basecamp のリストエンドポイントでは、ページ単位のページネーションが使用されています:

  • レスポンスヘッダーまたは本文に、続きのページがあることが示される場合があります
  • GET_PROJECTS、GET_BUCKETS_TODOSETS_TODOLISTS および一覧表示エンドポイントは、ページネーションされた結果を返します
  • 結果が返されなくなるまで取得を続けてください
コンテンツの書式設定
  • リッチテキストフィールドでは Markdown ではなく HTML を使用します
  • コンテンツを <div> タグで囲み、<strong>、<em>、<ul>、<ol>、<li>、<a> などを使用します
  • 例:<div><strong>Important:</strong> Complete by Friday</div>

既知の注意点

ID の形式
  • Basecamp の ID はすべて整数であり、文字列や UUID ではありません
  • bucket_id = project_id(同じエンティティですが、ツールによってパラメーター名が異なります)
  • To-Do セット ID、To-Do リスト ID、メッセージボード ID は、プロジェクトの dock 配列にあります
  • 人物 ID は整数です。操作の前に GET_PEOPLE で名前を解決してください
ステータスフィールド
  • 下書きが指定されている場合、アクティブな公開状態に置き換えないでください。現在のスキーマを確認してください
  • プロジェクト/To-Do リストのステータスフィルターには "archived"、"trashed" を指定できます。アクティブな場合は省略します
コンテンツ形式
  • HTML のみを使用し、Markdown は使用しないでください
  • 更新では本文全体が置き換えられ、部分的な差分更新にはなりません
  • 無効な HTML タグは、通知なしに削除される場合があります
レート制限
  • Basecamp API にはレート制限があります。連続した高速リクエストは間隔を空けてください
  • 多くの To-Do を含む大規模プロジェクトは、慎重にページネーションする必要があります
URL の扱い
  • ユーザー向けリンクには、API レスポンスの app_url を優先してください
  • ID から Basecamp の URL を手動で再構築しないでください

クイックリファレンス

タスクツールスラッグ主なパラメータ
プロジェクト一覧BASECAMP_GET_PROJECTSstatus
プロジェクト取得BASECAMP_GET_PROJECTproject_id
プロジェクト詳細取得BASECAMP_GET_PROJECTS_BY_PROJECT_IDproject_id
To-Do セット取得BASECAMP_GET_BUCKETS_TODOSETSbucket_id, todoset_id
To-Do リスト一覧BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTSbucket_id, todoset_id
To-Do リスト取得BASECAMP_GET_BUCKETS_TODOLISTSbucket_id, todolist_id
To-Do リスト作成BASECAMP_POST_BUCKETS_TODOSETS_TODOLISTSbucket_id, todoset_id, name
To-Do 作成BASECAMP_POST_BUCKETS_TODOLISTS_TODOSbucket_id, todolist_id, content
To-Do 作成 (代替)BASECAMP_CREATE_TODObucket_id, todolist_id, content
To-Do 一覧BASECAMP_GET_BUCKETS_TODOLISTS_TODOSbucket_id, todolist_id
To-Do グループ一覧BASECAMP_GET_TODOLIST_GROUPSbucket_id, todolist_id
To-Do グループ作成BASECAMP_POST_BUCKETS_TODOLISTS_GROUPSbucket_id, todolist_id, name, color
To-Do グループ作成 (代替)BASECAMP_CREATE_TODOLIST_GROUPbucket_id, todolist_id, name
メッセージボード取得BASECAMP_GET_MESSAGE_BOARDbucket_id, message_board_id
メッセージ作成BASECAMP_CREATE_MESSAGEbucket_id, message_board_id, subject, status
メッセージ作成 (代替)BASECAMP_POST_BUCKETS_MESSAGE_BOARDS_MESSAGESbucket_id, message_board_id, subject
メッセージ取得BASECAMP_GET_MESSAGEbucket_id, message_id
メッセージ更新BASECAMP_PUT_BUCKETS_MESSAGESbucket_id, message_id
全ユーザー一覧BASECAMP_GET_PEOPLE(なし)
プロジェクトユーザー一覧BASECAMP_LIST_PROJECT_PEOPLEproject_id
アクセス管理BASECAMP_PUT_PROJECTS_PEOPLE_USERSproject_id, grant, revoke, create

使用する場合

このスキルは、概要に記載されたワークフローまたはアクションを実行する場合に適用できます。

例

ユーザーリクエスト:

Rube MCP (Composio) 経由で Basecamp のプロジェクト管理、To-Do、メッセージ、ユーザー、To-Do リストの整理を自動化する。

制限事項

  • このスキルは、タスクが上記の範囲に明確に一致する場合にのみ使用してください。
  • 出力を、環境固有の検証、テスト、または専門家によるレビューの代替として扱わないでください。
  • 必要な入力、権限、安全境界、または成功基準が欠けている場合は、停止して確認を求めてください。

コメント