sentry-automation について
Composio の Sentry ツールキットと Rube MCP を通じて、Sentry のエラー監視業務を自動化するスキルです。問題調査、アラート、リリース、組織データ、Cron モニターを扱います。
主な機能
- 01問題とイベントの調査
- 02アラートルールの作成と更新
- 03リリースの作成と追跡
- 04組織とチーム情報の確認
- 05Cron モニターの更新
活用シーン
- 01未解決エラーのトリアージとスタックトレース確認
- 02プロジェクトまたは組織のアラート設定
- 03リリースとデプロイの記録
- 04チーム、メンバー、プロジェクトの確認
MCP 対応
Rube MCP 経由で Composio の Sentry ツールキットを利用します。RUBE_MANAGE_CONNECTIONS で Sentry を接続し、RUBE_SEARCH_TOOLS で最新のツールスキーマを取得します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill sentry-automationインストール後、Claude Code で/sentry-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による Sentry の自動化
Rube MCP 経由で Composio の Sentry ツールキットを利用して、Sentry のエラー追跡と監視の操作を自動化します。
ツールキットのドキュメント:composio.dev/toolkits/sentry
前提条件
- Rube MCP が接続されていること(RUBE_SEARCH_TOOLS が利用可能であること)
- ツールキット
sentryを指定してRUBE_MANAGE_CONNECTIONS経由で有効な Sentry 接続があること - 最新のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください
セットアップ
Rube MCP の取得:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで動作します。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確かめます- ツールキット
sentryを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクに従って Sentry OAuth を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
1. イシューの調査
使用する場面:エラーイシューを検索、調査、またはトリアージしたい場合
ツールの順序:
SENTRY_LIST_AN_ORGANIZATIONS_ISSUES- 組織全体のイシューを一覧表示します[必須]SENTRY_GET_ORGANIZATION_ISSUE_DETAILS- 特定のイシューの詳細情報を取得します[任意]SENTRY_LIST_AN_ISSUES_EVENTS- イシューの個々のエラーイベントを表示します[任意]SENTRY_RETRIEVE_AN_ISSUE_EVENT- スタックトレースを含むイベントの詳細を取得します[任意]SENTRY_RETRIEVE_ISSUE_TAG_DETAILS- イシューのタグの分布を調べます[任意]
主なパラメーター:
organization_id_or_slug:組織の識別子issue_id:数値のイシュー IDquery:検索クエリ(例:is:unresolved、assigned:me、browser:Chrome)sort:並べ替え順(date、new、freq、priority)statsPeriod:統計の対象期間(24h、14dなど)
注意点:
organization_id_or_slugは組織のスラッグです(例:'my-org')。表示名ではありません- イシュー ID は数値です。UUID であるイベント ID と混同しないでください
- クエリ構文には Sentry の検索形式を使います:
is:unresolved、assigned:me、!has:release - イシュー内のイベントごとにスタックトレースが異なる場合があります。詳細を確認するには個々のイベントを調べてください
2. プロジェクトのイシューを管理する
使用する場面:特定のプロジェクトに絞ったイシューを表示したい場合
ツールの順序:
SENTRY_RETRIEVE_ORGANIZATION_PROJECTS- プロジェクトを一覧表示し、プロジェクトのスラッグを確認します[前提条件]SENTRY_RETRIEVE_PROJECT_ISSUES_LIST- 特定のプロジェクトのイシューを一覧表示します[必須]SENTRY_RETRIEVE_ISSUE_EVENTS_BY_ID- 特定のイシューのイベントを取得します[任意]
主なパラメーター:
organization_id_or_slug:組織の識別子project_id_or_slug:プロジェクトの識別子query:検索フィルター文字列statsPeriod:統計の対象期間
注意点:
- プロジェクトのスラッグはプロジェクトの表示名とは異なります
RETRIEVE_ORGANIZATION_PROJECTSを使って、必ず先にプロジェクト名をスラッグに解決してください- プロジェクト単位のイシュー一覧では、組織単位の一覧とページネーションが異なる場合があります
3. アラートルールを設定する
使用するタイミング:ユーザーがプロジェクトのアラートルールを作成または管理したい場合
ツールの手順:
SENTRY_RETRIEVE_ORGANIZATION_PROJECTS- アラート対象のプロジェクトを探します[前提条件]SENTRY_RETRIEVE_PROJECT_RULES_BY_ORG_AND_PROJECT_ID- 既存のルールを一覧表示します[任意]SENTRY_CREATE_PROJECT_RULE_FOR_ALERTS- 新しいアラートルールを作成します[必須]SENTRY_CREATE_ORGANIZATION_ALERT_RULE- 組織レベルのメトリクスアラートを作成します[代替手段]SENTRY_UPDATE_ORGANIZATION_ALERT_RULES- 既存のアラートルールを更新します[任意]SENTRY_RETRIEVE_ALERT_RULE_DETAILS- 特定のアラートルールを確認します[任意]SENTRY_GET_PROJECT_RULE_DETAILS- プロジェクトレベルのルールの詳細を取得します[任意]
主なパラメーター:
name:アラートルール名conditions:トリガー条件の配列actions:トリガー時に実行するアクションの配列filters:イベントフィルターの配列frequency:トリガーの頻度(分単位)actionMatch:条件の照合方法を指定する'all'、'any'、または'none'
注意点:
- プロジェクトレベルのルール(CREATE_PROJECT_RULE)と組織レベルのメトリクスアラート(CREATE_ORGANIZATION_ALERT_RULE)は別のものです
- 条件、アクション、フィルターでは特定の JSON スキーマを使用します。有効な型については Sentry のドキュメントを確認してください
frequencyは分単位です。値を低くしすぎるとアラート疲れの原因になりますactionMatchのデフォルト値は異なる場合があります。予期しない動作を避けるため、明示的に設定してください
4. リリースを管理する
使用するタイミング:ユーザーがリリースバージョンを作成、追跡、または管理したい場合
ツールの手順:
SENTRY_LIST_ORGANIZATION_RELEASES- 既存のリリースを一覧表示します[任意]SENTRY_CREATE_RELEASE_FOR_ORGANIZATION- 新しいリリースを作成します[必須]SENTRY_UPDATE_RELEASE_DETAILS_FOR_ORGANIZATION- リリースのメタデータを更新します[任意]SENTRY_CREATE_RELEASE_DEPLOY_FOR_ORG- リリースのデプロイを記録します[任意]SENTRY_UPLOAD_RELEASE_FILE_TO_ORGANIZATION- ソースマップまたはファイルをアップロードします[任意]
主なパラメーター:
version:リリースのバージョン文字列(例:'1.0.0'、コミット SHA)projects:このリリースに属するプロジェクトのスラッグの配列dateReleased:リリースのタイムスタンプ(ISO 8601)environment:デプロイ環境名(例:'production'、'staging')
注意点:
- リリースバージョンは組織内で一意である必要があります
- リリースは複数のプロジェクトにまたがる場合があります。
projects配列を使用してください - リリースのデプロイは作成とは別の操作です。CREATE_RELEASE_DEPLOY を使用してください
- ソースマップをアップロードするには、先にリリースが存在している必要があります
5. 組織とチームを監視する
使用するタイミング:ユーザーが組織の構成、チーム、またはメンバー一覧を確認したい場合
ツールの手順:
SENTRY_GET_ORGANIZATION_DETAILSまたはSENTRY_GET_ORGANIZATION_BY_ID_OR_SLUG- 組織の情報を取得します[必須]SENTRY_LIST_TEAMS_IN_ORGANIZATION- すべてのチームを一覧表示します[任意]SENTRY_LIST_ORGANIZATION_MEMBERS- 組織のメンバーを一覧表示します[任意]SENTRY_GET_PROJECT_LIST- アクセス可能なすべてのプロジェクトを一覧表示します[任意]
主なパラメーター:
organization_id_or_slug:組織の識別子cursor:大量の結果を取得する際のページネーションカーソル
注意点:
- 組織のスラッグは URL で安全に使用できる識別子であり、表示名ではありません
- メンバー一覧はページ分割される場合があります。カーソルによるページネーションに従ってください
- チームとメンバーの表示可否は、認証されたユーザーの権限によって異なります
6. モニターを管理する(Cron 監視)
使用するタイミング:ユーザーが cron ジョブの監視設定を更新したい場合
ツールの手順:
SENTRY_UPDATE_A_MONITOR- モニターの設定を更新します[必須]
主なパラメーター:
organization_id_or_slug:組織の識別子monitor_id_or_slug:モニターの識別子name:モニターの表示名schedule:Cron スケジュール式または間隔checkin_margin:チェックインが遅れた場合の猶予時間(分)max_runtime:想定される最大実行時間(分)
注意点:
- モニターのスラッグは名前から自動生成されます。API 呼び出しにはスラッグを使用してください
- スケジュールの変更は直ちに反映されます
- チェックインがない場合、猶予時間の経過後にアラートがトリガーされます
よくあるパターン
ID の解決
組織名 -> スラッグ:
1. Call SENTRY_GET_ORGANIZATION_DETAILS
2. Extract slug field from response
プロジェクト名 -> スラッグ:
1. Call SENTRY_RETRIEVE_ORGANIZATION_PROJECTS
2. Find project by name, extract slug
ページネーション
- Sentry は
Linkヘッダーを使用したカーソルベースのページネーションを採用しています - カーソル値をレスポンスで確認します
- 次のページがなくなるまで、次のリクエストにカーソルを渡します
検索クエリの構文
is:unresolved- 未解決の課題is:resolved- 解決済みの課題assigned:me- 現在のユーザーに割り当てられた課題assigned:team-slug- チームに割り当てられた課題!has:release- リリースがない課題first-release:1.0.0- リリースで初めて検出された課題times-seen:>100- 100 回を超えて検出された課題browser:Chrome- ブラウザータグで絞り込み
既知の注意点
ID の形式:
- 組織:表示名ではなく、スラッグ(例:'my-org')を使用します
- プロジェクト:表示名ではなく、スラッグ(例:'my-project')を使用します
- 課題 ID:数値の整数
- イベント ID:UUID(32 文字の 16 進数文字列)
権限:
- API トークンのスコープは、実行する操作に適合している必要があります
- 組織レベルの操作には、組織レベルの権限が必要です
- プロジェクトレベルの操作には、プロジェクトへのアクセス権が必要です
レート制限:
- Sentry は組織ごとのレート制限を適用します
- 429 レスポンスを受け取った場合は、バックオフを実装します
- 一括操作は時間をずらして実行してください
クイックリファレンス
| タスク | ツールのスラッグ | 主なパラメーター |
|---|---|---|
| 組織の課題を一覧表示 | SENTRY_LIST_AN_ORGANIZATIONS_ISSUES | organization_id_or_slug, query |
| 課題の詳細を取得 | SENTRY_GET_ORGANIZATION_ISSUE_DETAILS | organization_id_or_slug, issue_id |
| 課題のイベントを一覧表示 | SENTRY_LIST_AN_ISSUES_EVENTS | issue_id |
| イベントの詳細を取得 | SENTRY_RETRIEVE_AN_ISSUE_EVENT | organization_id_or_slug, event_id |
| プロジェクトの課題を一覧表示 | SENTRY_RETRIEVE_PROJECT_ISSUES_LIST | organization_id_or_slug, project_id_or_slug |
| プロジェクトを一覧表示 | SENTRY_RETRIEVE_ORGANIZATION_PROJECTS | organization_id_or_slug |
| 組織の詳細を取得 | SENTRY_GET_ORGANIZATION_DETAILS | organization_id_or_slug |
| チームを一覧表示 | SENTRY_LIST_TEAMS_IN_ORGANIZATION | organization_id_or_slug |
| メンバーを一覧表示 | SENTRY_LIST_ORGANIZATION_MEMBERS | organization_id_or_slug |
| アラートルールを作成 | SENTRY_CREATE_PROJECT_RULE_FOR_ALERTS | organization_id_or_slug, project_id_or_slug |
| メトリクスアラートを作成 | SENTRY_CREATE_ORGANIZATION_ALERT_RULE | organization_id_or_slug |
| リリースを作成 | SENTRY_CREATE_RELEASE_FOR_ORGANIZATION | organization_id_or_slug, version |
| リリースをデプロイ | SENTRY_CREATE_RELEASE_DEPLOY_FOR_ORG | organization_id_or_slug, version |
| リリースを一覧表示 | SENTRY_LIST_ORGANIZATION_RELEASES | organization_id_or_slug |
| モニターを更新 | SENTRY_UPDATE_A_MONITOR | organization_id_or_slug, monitor_id_or_slug |
Composio によって提供されています