observer-launch-mcp
observer-launch-mcp
Observe のデータについてClaudeに質問できます。最近のエラー、よくある障害、ポッドごとのログ量など、OPALを手書きせずに確認できます。これは、ClaudeにObserveテナントへの直接のライブアクセスを提供するMCPサーバーです。
セットアップ(2ステップ)
1. セットアップウィザードを実行します。 Observeの認証情報とデータセットエイリアスを尋ねられ、自動的にClaude Codeに登録されます。
npx @aryanbansal-launch/observer-launch-mcp init次の項目を尋ねられます。
ObserveカスタマーID -- 数字で、ObserveのURLに含まれています。
Observe APIキー -- アカウント管理 → マイAPIトークン で作成します。(インジェスト/データストリームトークンではありません。似ていますが、ここでは機能しません。)
クラスター -- 例:
eu-1。デフォルトのUSテナントの場合は空白のままにします。データセットエイリアス(任意) -- よく質問するデータセットの分かりやすい名前。例:
launch-management→41249178。IDはObserve UIで確認できます。データセットを開くと、URLに含まれています。これをスキップして生のデータセットIDを使用するか、後でエイリアスを追加することもできます。
2. Claude Codeを再起動(または新しいセッションを開始)して、新しいサーバーを認識させます。動作を確認します。
Is the Observe connection working?これで完了です。以下の他のツールがチャットで利用可能になります。
claude mcp add observe -s user \
-e OBSERVE_CUSTOMER_ID=<your id> \
-e OBSERVE_API_KEY=<your token> \
-e OBSERVE_CLUSTER=eu-1 \
-e OBSERVE_DATASETS='{"launch-management":"41249178"}' \
-- node <path to installed server.js>絶対パスだけが必要な場合は、最初に npx @aryanbansal-launch/observer-launch-mcp init を一度実行してください。実行する直前に、実行する正確なコマンドを表示します。最終エントリとしては npx <package> ではなく、直接 node <path> コマンドを使用してください。Claude Codeは登録されたサーバーを素の環境(PATHなし)で起動するため、npx のshebangはnodeを見つけるためにPATHが必要です。そのため、npxをコマンドとして使用すると、静かに「Failed to connect」と表示されます。ウィザードはこれを回避します。
Related MCP server: Fathom AI MCP Server
質問できること
セットアップが完了したら、自然にClaudeに話しかけるだけです。
「Observe接続は機能していますか?」
「設定されているサービス/データセットエイリアスは何ですか?」
「過去1時間のlaunch-managementの最近のエラーを表示して」
「今週のlaunch-nginxで最も一般的なエラーは何ですか?」
「現在、launch-management-bgで最もログを出力しているポッドはどれですか?」
「launch-nginxは過去6時間でどれだけのstderr出力を生成していますか?」
「過去1時間のlaunch-telemetryのポッドごとのログ行数を数えて」
「launch-logs-bg-exporterから最後の20行の生ログを取得して」
特定の質問形式でカバーされていないものについては、やりたいことを説明するだけで、Claudeが一般的なクエリツールを使用してOPALパイプラインを書いてくれます。
ツールリファレンス
ツール | 用途 |
| 「接続は機能していますか?」 |
| 「設定されているデータセット/エイリアスは何ですか?」 |
| 1つのサービスの最近の生エラー(新しい順) |
| 件数でランク付けされた上位の繰り返しエラー -- 数日/数週間にわたっても高速 |
| ポッド/ノード/コンテナ/ストリーム/名前空間でグループ化されたログ数 |
| その他すべて -- 任意のデータセットに対する任意のOPALパイプライン |
get_error_summary と get_log_stats はサーバー側で集約するため、時間枠に関係なく高速です。get_service_errors と run_opal_query は、集約なしで6時間以上のウィンドウをクエリすると警告を追加します。広いウィンドウでの生の行ダンプは、Observeの10万行の上限のリスクがあるためです。
ログ形式
1つのテナント内のデータセットが同じログスキーマを共有することはほとんどないため、get_service_errors と get_error_summary はデータセットごとに形式を検出し(プロセスごとに1回)、一致するクエリを構築します。
形式 | 見た目 | エラーは |
|
|
|
|
|
|
| 非構造化のもの | 生の行に対するキーワード一致 |
すべての結果で、検出された形式が示されます。プローブをスキップするには、データセット設定で宣言します。
{ "launch-nginx": { "id": "41250854", "shape": "http" } }プレーンな "alias": "id" エントリも機能し、自動検出されます。
カバレッジは報告され、隠されません。 level データセットでは、一部の行に解析可能な level フィールドがありません(スタックトレース、裸の文字列、非JSON出力)。重大度フィルタはそれらを認識できません。その割合が1%を超えると、ツールはそれを示します。
Note: 529 of 2136 rows (24.8%) have no parseable "level" field and were not
scanned. Pass includeUnparsed=true to keyword-match those too.includeUnparsed=true はそれらの行をキーワードスキャンします。これはオプトインです。キーワードマッチングは「error」という単語を含む info 行もフラグするためです。
設定リファレンス
変数 | 必須 | 説明 |
| はい | ObserveカスタマーID(数値)。 |
| はい | アカウント管理 → マイAPIトークン からのベアラートークン(長期使用にはサービスアカウントトークンも可)。 |
| いいえ | 例: |
| いいえ | テナントが |
| いいえ | クエリのタイムアウト(秒)(デフォルト300)。 |
| いいえ | エイリアス → データセットIDのインラインJSONマッピング。例: |
| いいえ | 同じ形状のJSONファイルへのパス。大規模な設定用。 |
| いいえ | 単一のツール応答の上限(デフォルト200000)。それを超えると、行は破棄され、応答にその旨が示されます。 |
| いいえ | デフォルトで削除される |
データセットIDはテナント固有であり、このパッケージには意図的に含まれていません。設定がない場合、エイリアスルックアップはフォールスルーし、生の数値データセットIDを任意のツールに直接渡すことができます。
トラブルシューティング
ヘルスチェックが失敗する → APIキーがインジェスト/データストリームトークンである可能性があります。アカウント管理 → マイAPIトークン からのものではありません。再生成してください。
手動登録したエントリで
claude mcp listが「Failed to connect」と表示される → コマンドがnode <path>であり、npx <package>ではないことを確認してください(上記の注記を参照)。ツールが「Unknown service/dataset」を返す →
list_known_servicesを実行して設定を確認するか、代わりに生の数値データセットIDを渡してください。get_service_errors/get_error_summaryが有用なものを返さない → 結果の「検出されたログ形式」の注記を確認してください。誤って推測された場合は、{"alias": {"id": "...", "shape": "http"}}で形式を明示的に固定してください(ログ形式 を参照)。textと表示された場合、ログに重大度フィールドがなく、マッチングはキーワードベースです。Observe UIで確認できるエラーが結果に含まれていない → カバレッジの注記を探してください。解析可能な
levelのない行はデフォルトでスキップされます。includeUnparsed=trueを渡してください。
貢献
npm install
npm run build # tsc, then chmod +x on the bin entry
npm publish # only if you intend to ship a new versionsrc/run-server.ts の get_error_summary/get_log_stats パターンをコピーして、他の繰り返し発生するOPALクエリ(例: サービス別コスト、レイテンシ百分位数)に使用してください。ツールに説明的な名前/説明を付けて、適切な場合にClaudeが run_opal_query よりもそれを選択するようにしてください。
This server cannot be deployed
Maintenance
Related MCP Connectors
- platform7nOAuthtech.p7n
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Query 40 databases from Claude, ChatGPT, or Cursor — on any device. Read-only, encrypted, audited.
Give Claude only the Google Drive files you choose. Every action logged.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables natural language Kubernetes cluster operations, SLO monitoring, and PromQL queries via Claude using the Model Context Protocol.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables Claude to access your Fathom meetings, transcripts, and AI summaries.6 npm16MIT
- FlicenseAqualityCmaintenanceEnables Claude Desktop to access and query RBPaaS Operation Hub data, including business KPIs, project details, resource utilization, and agent schedules.16-
- AlicenseNot gradedqualityDmaintenanceConnects Claude to OCI Logging Analytics for natural language querying and analysis of security logs, including detection catalog, MITRE ATT&CK integration, and cross-log correlation.2MIT