basecamp-automation について
basecamp-automationは、Composioのツールキットを使ってTo-do、プロジェクトメッセージ、メンバー、プロジェクト構成を管理するBasecamp向けスキルです。読み取り、作成、更新、アクセス管理のワークフローを扱います。
主な機能
- 01プロジェクトと構成の閲覧
- 02To-doリストとタスクの作成
- 03プロジェクトメッセージの投稿と更新
- 04メンバーの確認とアクセス管理
- 05To-doリスト内のグループ作成
活用シーン
- 01プロジェクトのTo-doリスト作成とタスク割り当て
- 02メッセージボードへの投稿や内容修正
- 03プロジェクトメンバーの確認とアクセス調整
- 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 接続と、サポートされているホスト認証フローを使用してください。エンドポイントを追加するだけでは、アカウントへのアクセスは確立されません。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確かめます- ツールキット
basecampを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクから Basecamp OAuth を完了します
- ワークフローを実行する前に、接続状態が ACTIVE であることを確認します
以下の過去のスラッグ、型、デフォルト値は、現在のスキーマで確認する必要があります。書き込みを行う前に、アカウント、プロジェクト/ドック ID、および承認済みの対象者を確認してください。メッセージと通知には明示的なアクション範囲が必要です。下書きのリクエストは下書きのままにしてください。アクセス権の付与、招待、取り消しには、対象範囲を正確に指定する必要があります。作成結果が不確かな場合は、代替ツールを試す前に既存の状態を確認し、投稿やタスクの重複を避けてください。
主なワークフロー
1. ToDo リストとタスクの管理
使用する場面:ユーザーが Basecamp プロジェクト内で ToDo リストを作成したり、タスクを追加したり、作業を整理したりしたい場合
ツールの順序:
BASECAMP_GET_PROJECTS- プロジェクトを一覧表示し、対象の bucket_id を見つけます[前提条件]BASECAMP_GET_BUCKETS_TODOSETS- プロジェクト内の ToDo セットを取得します[前提条件]BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTS- 重複を避けるため、既存の ToDo リストを一覧表示します[任意]BASECAMP_POST_BUCKETS_TODOSETS_TODOLISTS- ToDo セットに新しい ToDo リストを作成します[リスト作成に必須]BASECAMP_GET_BUCKETS_TODOLISTS- 特定の ToDo リストの詳細を取得します[任意]BASECAMP_POST_BUCKETS_TODOLISTS_TODOS- ToDo リストに ToDo 項目を作成します[タスク作成に必須]BASECAMP_CREATE_TODO- 個別の ToDo を作成するための代替ツールです[代替]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:整数のプロジェクト/バケット IDtodolist_id:整数の ToDo リスト IDcontent:ToDo の内容(必須)description:ToDo の詳細を記載した HTMLassignee_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. メッセージの投稿と管理
使用する場面:ユーザーがプロジェクトのメッセージボードにメッセージを投稿したい場合、または既存のメッセージを更新したい場合
ツールの手順:
BASECAMP_GET_PROJECTS- 対象プロジェクトと bucket_id を検索します[前提条件]BASECAMP_GET_MESSAGE_BOARD- プロジェクトのメッセージボード ID を取得します[前提条件]BASECAMP_CREATE_MESSAGE- ボードに新しいメッセージを作成します[必須]BASECAMP_POST_BUCKETS_MESSAGE_BOARDS_MESSAGES- 代替のメッセージ作成ツールです[フォールバック]BASECAMP_GET_MESSAGE- ID を指定して特定のメッセージを読み取ります[任意]BASECAMP_PUT_BUCKETS_MESSAGES- 既存のメッセージを更新します[任意]
主なパラメーター:
bucket_id:整数のプロジェクト/バケット IDmessage_board_id:整数のメッセージボード ID(GET_MESSAGE_BOARD から取得)subject:メッセージのタイトル(必須)content:メッセージ本文の HTMLstatus:すぐに公開するには"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. ユーザーとアクセス権の管理
使用する場面:ユーザーがメンバーの一覧表示、プロジェクトへのアクセス権の管理、新しいユーザーの追加を希望する場合
ツールの手順:
BASECAMP_GET_PEOPLE- 現在のユーザーに表示される全メンバーを一覧表示します[必須]BASECAMP_GET_PROJECTS- 対象プロジェクトを検索します[前提条件]BASECAMP_LIST_PROJECT_PEOPLE- 特定のプロジェクトのメンバーを一覧表示します[必須]BASECAMP_GET_PROJECTS_PEOPLE- プロジェクトメンバーを一覧表示する代替ツールです[代替]BASECAMP_PUT_PROJECTS_PEOPLE_USERS- プロジェクトへのアクセス権を付与または取り消します[アクセス権の変更に必須]
PUT_PROJECTS_PEOPLE_USERS の主なパラメーター:
project_id:整数のプロジェクト IDgrant:プロジェクトに追加する人の整数 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 を色分けされたグループに整理したい場合
ツールの順序:
BASECAMP_GET_PROJECTS- 対象のプロジェクトを検索します [前提条件]BASECAMP_GET_BUCKETS_TODOLISTS- To-Do リストの詳細を取得します [前提条件]BASECAMP_GET_TODOLIST_GROUPS- To-Do リスト内の既存のグループを一覧表示します [任意]BASECAMP_GET_BUCKETS_TODOLISTS_GROUPS- グループを一覧表示する別の方法です [代替]BASECAMP_POST_BUCKETS_TODOLISTS_GROUPS- To-Do リストに新しいグループを作成します [必須]BASECAMP_CREATE_TODOLIST_GROUP- グループを作成する別のツールです [代替]
主なパラメーター:
bucket_id:整数のプロジェクト/バケット IDtodolist_id:整数の To-Do リスト IDname:グループのタイトル(必須)color:表示色の識別子。次のいずれかを指定します:white、red、orange、yellow、green、blue、aqua、purple、gray、pink、brownstatus:一覧表示のフィルター。"archived"または"trashed"(アクティブなグループの場合は省略)
注意点:
POST_BUCKETS_TODOLISTS_GROUPSとCREATE_TODOLIST_GROUPはほぼ同じです。どちらかを使用してください- 色の値は固定パレットから選ぶ必要があります。任意の hex/rgb 値には対応していません
- グループは To-Do リスト内のサブセクションであり、独立したエンティティではありません
5. プロジェクトを閲覧・確認する
使用する場面:ユーザーがプロジェクトを一覧表示したり、詳細を取得したり、プロジェクトの構造を確認したりしたい場合
ツールの順序:
BASECAMP_GET_PROJECTS- アクティブなプロジェクトをすべて一覧表示します [必須]BASECAMP_GET_PROJECT- 特定のプロジェクトの詳細を取得します [任意]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_PROJECTS | status |
| プロジェクト取得 | BASECAMP_GET_PROJECT | project_id |
| プロジェクト詳細取得 | BASECAMP_GET_PROJECTS_BY_PROJECT_ID | project_id |
| To-Do セット取得 | BASECAMP_GET_BUCKETS_TODOSETS | bucket_id, todoset_id |
| To-Do リスト一覧 | BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTS | bucket_id, todoset_id |
| To-Do リスト取得 | BASECAMP_GET_BUCKETS_TODOLISTS | bucket_id, todolist_id |
| To-Do リスト作成 | BASECAMP_POST_BUCKETS_TODOSETS_TODOLISTS | bucket_id, todoset_id, name |
| To-Do 作成 | BASECAMP_POST_BUCKETS_TODOLISTS_TODOS | bucket_id, todolist_id, content |
| To-Do 作成 (代替) | BASECAMP_CREATE_TODO | bucket_id, todolist_id, content |
| To-Do 一覧 | BASECAMP_GET_BUCKETS_TODOLISTS_TODOS | bucket_id, todolist_id |
| To-Do グループ一覧 | BASECAMP_GET_TODOLIST_GROUPS | bucket_id, todolist_id |
| To-Do グループ作成 | BASECAMP_POST_BUCKETS_TODOLISTS_GROUPS | bucket_id, todolist_id, name, color |
| To-Do グループ作成 (代替) | BASECAMP_CREATE_TODOLIST_GROUP | bucket_id, todolist_id, name |
| メッセージボード取得 | BASECAMP_GET_MESSAGE_BOARD | bucket_id, message_board_id |
| メッセージ作成 | BASECAMP_CREATE_MESSAGE | bucket_id, message_board_id, subject, status |
| メッセージ作成 (代替) | BASECAMP_POST_BUCKETS_MESSAGE_BOARDS_MESSAGES | bucket_id, message_board_id, subject |
| メッセージ取得 | BASECAMP_GET_MESSAGE | bucket_id, message_id |
| メッセージ更新 | BASECAMP_PUT_BUCKETS_MESSAGES | bucket_id, message_id |
| 全ユーザー一覧 | BASECAMP_GET_PEOPLE | (なし) |
| プロジェクトユーザー一覧 | BASECAMP_LIST_PROJECT_PEOPLE | project_id |
| アクセス管理 | BASECAMP_PUT_PROJECTS_PEOPLE_USERS | project_id, grant, revoke, create |
使用する場合
このスキルは、概要に記載されたワークフローまたはアクションを実行する場合に適用できます。
例
ユーザーリクエスト:
Rube MCP (Composio) 経由で Basecamp のプロジェクト管理、To-Do、メッセージ、ユーザー、To-Do リストの整理を自動化する。
制限事項
- このスキルは、タスクが上記の範囲に明確に一致する場合にのみ使用してください。
- 出力を、環境固有の検証、テスト、または専門家によるレビューの代替として扱わないでください。
- 必要な入力、権限、安全境界、または成功基準が欠けている場合は、停止して確認を求めてください。