mcpField
S
sentry-automation

sentry-automation

github.com/sickn33クラウド・DevOps48.8k84 回インストール今日更新
リポジトリ

sentry-automation について

sentry-automationは、ComposioのSentryツールキットとRube MCPを介して、Sentryのエラー追跡と監視を自動化するスキルです。問題調査、アラート設定、リリース管理、組織情報の確認に利用できます。

主な機能

  1. 01組織・プロジェクトの問題調査
  2. 02イベント、スタックトレース、タグの確認
  3. 03アラートルールの作成と更新
  4. 04リリース作成とデプロイ記録
  5. 05チーム、メンバー、モニターの確認

活用シーン

  1. 01未解決のSentry問題のトリアージ
  2. 02プロジェクトまたは組織のアラート設定
  3. 03リリースとデプロイのメタデータ管理
  4. 04組織メンバーまたはCronモニターの確認

MCP 対応

Rube MCPを通じてComposioのSentryツールキットを利用します。実行前にRUBE_SEARCH_TOOLSでツールを確認し、Sentryへの接続を有効にする必要があります。

インストール

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

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

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

詳細

Rube MCP による Sentry の自動化

Rube MCP 経由で Composio の Sentry ツールキットを使用し、Sentry のエラー追跡と監視の操作を自動化します。

前提条件

  • Rube MCP に接続されていること(RUBE_SEARCH_TOOLS が利用可能)
  • ツールキット sentry を指定した RUBE_MANAGE_CONNECTIONS 経由で、有効な Sentry 接続が確立されていること
  • 現在のツールスキーマを取得するため、必ず最初に RUBE_SEARCH_TOOLS を呼び出してください

セットアップ

Rube MCP の入手:クライアントの設定で https://rube.app/mcp を MCP サーバーとして追加します。対象の Sentry 組織は、引き続き認証を行い、必要なスコープを許可する必要があります。

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

イベントのプライバシーとアラートの影響

読み取りまたは書き込みを行う前に、現在のスキーマと正確な組織/プロジェクトを確認してください。イベントのペイロード、スタックトレース、ソースマップ、ユーザータグには、秘密情報や個人情報が含まれている可能性があります。取得するデータは最小限にし、エクスポートやログでは機密情報をマスキングしてください。調査を行うだけでは、課題の解決、ソースマップのアップロード、保持期間の変更、アラートの作成、モニターの編集は許可されません。アラートの操作によって、同じ人に繰り返し通知が届く場合があります。Sentry にデプロイを記録することはメタデータであり、コードがデプロイされた証拠ではありません。書き込みの成否が不確かな場合は、再試行する前に状態を照合し、設定変更後は読み戻して確認してください。

主なワークフロー

1. 課題を調査する

使用する場合:ユーザーがエラー課題の検索、確認、またはトリアージを希望している場合

ツールの呼び出し順序:

  1. SENTRY_LIST_AN_ORGANIZATIONS_ISSUES - 組織全体の課題を一覧表示します[必須]
  2. SENTRY_GET_ORGANIZATION_ISSUE_DETAILS - 特定の課題の詳細情報を取得します[任意]
  3. SENTRY_LIST_AN_ISSUES_EVENTS - 課題の個々のエラーイベントを表示します[任意]
  4. SENTRY_RETRIEVE_AN_ISSUE_EVENT - スタックトレースを含むイベントの詳細情報を取得します[任意]
  5. SENTRY_RETRIEVE_ISSUE_TAG_DETAILS - 課題のタグ分布を調べます[任意]

主なパラメーター:

  • organization_id_or_slug:組織識別子
  • issue_id:数値の課題 ID
  • query:検索クエリ(例: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
  • 1 つの課題に含まれるイベントでも、スタックトレースが異なる場合があります。詳細を確認するには個々のイベントを調べてください
2. プロジェクトの課題を管理する

使用する場合:ユーザーが特定のプロジェクトに絞った課題の表示を希望している場合

ツールの呼び出し順序:

  1. SENTRY_RETRIEVE_ORGANIZATION_PROJECTS - プロジェクトを一覧表示し、プロジェクトのスラッグを確認します[前提条件]
  2. SENTRY_RETRIEVE_PROJECT_ISSUES_LIST - 特定のプロジェクトの課題を一覧表示します[必須]
  3. SENTRY_RETRIEVE_ISSUE_EVENTS_BY_ID - 特定の課題のイベントを取得します[任意]

主なパラメーター:

  • organization_id_or_slug:組織識別子
  • project_id_or_slug:プロジェクト識別子
  • query:検索フィルター文字列
  • statsPeriod:統計の期間

注意点:

  • プロジェクトのスラッグは、プロジェクトの表示名とは異なります
  • プロジェクト名は、必ず最初に RETRIEVE_ORGANIZATION_PROJECTS を使ってスラッグに解決してください
  • プロジェクト単位の課題一覧は、組織単位の一覧とはページネーションが異なる場合があります
3. アラートルールを設定する

使用するタイミング:ユーザーがプロジェクトのアラートルールを作成または管理したい場合

ツールの手順:

  1. SENTRY_RETRIEVE_ORGANIZATION_PROJECTS - アラート対象のプロジェクトを探します[前提条件]
  2. SENTRY_RETRIEVE_PROJECT_RULES_BY_ORG_AND_PROJECT_ID - 既存のルールを一覧表示します[任意]
  3. SENTRY_CREATE_PROJECT_RULE_FOR_ALERTS - 新しいアラートルールを作成します[必須]
  4. SENTRY_CREATE_ORGANIZATION_ALERT_RULE - 組織レベルのメトリクスアラートを作成します[代替手段]
  5. SENTRY_UPDATE_ORGANIZATION_ALERT_RULES - 既存のアラートルールを更新します[任意]
  6. SENTRY_RETRIEVE_ALERT_RULE_DETAILS - 特定のアラートルールを確認します[任意]
  7. 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. リリースを管理する

使用するタイミング:ユーザーがリリースバージョンを作成、追跡、または管理したい場合

ツールの手順:

  1. SENTRY_LIST_ORGANIZATION_RELEASES - 既存のリリースを一覧表示します[任意]
  2. SENTRY_CREATE_RELEASE_FOR_ORGANIZATION - 新しいリリースを作成します[必須]
  3. SENTRY_UPDATE_RELEASE_DETAILS_FOR_ORGANIZATION - リリースのメタデータを更新します[任意]
  4. SENTRY_CREATE_RELEASE_DEPLOY_FOR_ORG - リリースのデプロイを記録します[任意]
  5. SENTRY_UPLOAD_RELEASE_FILE_TO_ORGANIZATION - ソースマップまたはファイルをアップロードします[任意]

主なパラメーター:

  • version:リリースのバージョン文字列(例:'1.0.0'、コミット SHA)
  • projects:このリリースに属するプロジェクトのスラッグの配列
  • dateReleased:リリースのタイムスタンプ(ISO 8601)
  • environment:デプロイ環境名(例:'production'、'staging')

注意点:

  • リリースバージョンは組織内で一意である必要があります
  • リリースは複数のプロジェクトにまたがる場合があります。projects 配列を使用してください
  • リリースのデプロイは作成とは別の操作です。CREATE_RELEASE_DEPLOY を使用してください
  • ソースマップをアップロードするには、先にリリースが存在している必要があります
5. 組織とチームを監視する

使用するタイミング:ユーザーが組織の構成、チーム、またはメンバー一覧を確認したい場合

ツールの手順:

  1. SENTRY_GET_ORGANIZATION_DETAILS または SENTRY_GET_ORGANIZATION_BY_ID_OR_SLUG - 組織の情報を取得します[必須]
  2. SENTRY_LIST_TEAMS_IN_ORGANIZATION - すべてのチームを一覧表示します[任意]
  3. SENTRY_LIST_ORGANIZATION_MEMBERS - 組織のメンバーを一覧表示します[任意]
  4. SENTRY_GET_PROJECT_LIST - アクセス可能なすべてのプロジェクトを一覧表示します[任意]

主なパラメーター:

  • organization_id_or_slug:組織の識別子
  • cursor:大量の結果を取得する際のページネーションカーソル

注意点:

  • 組織のスラッグは URL で安全に使用できる識別子であり、表示名ではありません
  • メンバー一覧はページ分割される場合があります。カーソルによるページネーションに従ってください
  • チームとメンバーの表示可否は、認証されたユーザーの権限によって異なります
6. モニターを管理する(Cron 監視)

使用するタイミング:ユーザーが cron ジョブの監視設定を更新したい場合

ツールの手順:

  1. 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_ISSUESorganization_id_or_slug, query
イシューの詳細を取得SENTRY_GET_ORGANIZATION_ISSUE_DETAILSorganization_id_or_slug, issue_id
イシューのイベントを一覧表示SENTRY_LIST_AN_ISSUES_EVENTSissue_id
イベントの詳細を取得SENTRY_RETRIEVE_AN_ISSUE_EVENTorganization_id_or_slug, event_id
プロジェクトのイシューを一覧表示SENTRY_RETRIEVE_PROJECT_ISSUES_LISTorganization_id_or_slug, project_id_or_slug
プロジェクトを一覧表示SENTRY_RETRIEVE_ORGANIZATION_PROJECTSorganization_id_or_slug
組織の詳細を取得SENTRY_GET_ORGANIZATION_DETAILSorganization_id_or_slug
チームを一覧表示SENTRY_LIST_TEAMS_IN_ORGANIZATIONorganization_id_or_slug
メンバーを一覧表示SENTRY_LIST_ORGANIZATION_MEMBERSorganization_id_or_slug
アラートルールを作成SENTRY_CREATE_PROJECT_RULE_FOR_ALERTSorganization_id_or_slug, project_id_or_slug
メトリックアラートを作成SENTRY_CREATE_ORGANIZATION_ALERT_RULEorganization_id_or_slug
リリースを作成SENTRY_CREATE_RELEASE_FOR_ORGANIZATIONorganization_id_or_slug, version
リリースをデプロイSENTRY_CREATE_RELEASE_DEPLOY_FOR_ORGorganization_id_or_slug, version
リリースを一覧表示SENTRY_LIST_ORGANIZATION_RELEASESorganization_id_or_slug
モニターを更新SENTRY_UPDATE_A_MONITORorganization_id_or_slug, monitor_id_or_slug

使用する場面

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

制限事項

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

コメント