Last9

公式

リアルタイムの本番コンテキスト(ログ、メトリクス、トレース)をシームレスにローカル環境に取り込み、コードの自動修正をより迅速に行えるようにします。

Last9 MCPで何ができますか?

アシスタントに、Last9のライブログ、トレース、メトリクスを使って本番インシデントを調査させましょう。

  • サービス健全性のランク付けget_service_summary を使用して、フリート全体のリクエスト数、スループット、4xx/5xxエラーを確認します。
  • 低速なデータベースクエリの特定get_database_slow_queries を使用して、トレースID付きの実際の低速実行を取得し、詳細を調査します。
  • サービスログの取得get_service_logs を使用して、重大度と本文内容でフィルタリングした生のログ行を取得します。
  • 単一リクエストのトレースget_trace_waterfall を使用して、正確なトレースIDに対する親子ウォーターフォールを表示します。
  • アラート状態の確認get_alert_rule_state を使用して、時間範囲内のアラートルールごとの発火履歴を確認します。
  • ダッシュボードの管理create_dashboard を使用して、パネルとクエリを備えたカスタムダッシュボードを構築します。

ドキュメント

Last9 MCP サーバー

last9 mcp demo

あなたのAIエージェントは本番環境で何が壊れているかを知りません。これを修正します。

Last9 MCP サーバーは、Claude、Cursor、Windsurf、およびその他のMCP対応AIアシスタントを本番のオブザーバビリティデータ(ログ、メトリクス、トレース、例外、データベースクエリ、アラート、デプロイメント)に直接接続します。エージェントは推測をやめ、実際のシグナルを読み始めます。


30秒で開始(ホステッド)

バイナリのインストールは不要。トークンの管理も不要。1つのURL、ブラウザでのOAuth、完了。

Last9のURLで組織スラッグを見つけてください: app.last9.io/<org_slug>/...

Claude Code

claude mcp add --transport http last9 https://app.last9.io/api/v4/organizations/<org_slug>/mcp

/mcp と入力し、last9を選択して認証します。それだけです。

Cursor

Settings > MCP > Add New MCP Server:

{
  "mcpServers": {
    "last9": {
      "type": "http",
      "url": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
    }
  }
}

Connect をクリックし、OAuthを完了します。

VS Code

v1.99+が必要です。コマンドパレットを開き、MCP: Add Server を選択し、URLを貼り付けて認証します。

または settings.json で直接:

{
  "mcp": {
    "servers": {
      "last9": {
        "type": "http",
        "url": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
      }
    }
  }
}

Windsurf

Settings > Cascade > Open MCP Marketplace > 歯車アイコン (mcp_config.json):

{
  "mcpServers": {
    "last9": {
      "serverUrl": "https://app.last9.io/api/v4/organizations/<org_slug>/mcp"
    }
  }
}

Claude Web/Desktop

Settings > Connectors > Add custom connector. last9 と名前を付け、URLを貼り付けて認証します。

管理者アクセスがClaude組織に必要です。


セルフホステッド(STDIO)

MCPクライアントがHTTPトランスポートをサポートしない場合、またはサーバーをローカルで実行する必要がある場合に使用します。

インストール

Homebrew:

brew install last9/tap/last9-mcp

NPM:

npm install -g @last9/mcp-server@latest
# or directly:
npx -y @last9/mcp-server@latest

バイナリリリース(Windows / 手動):

GitHub Releases からダウンロード:

プラットフォームアーカイブ
Windows (x64)last9-mcp-server_Windows_x86_64.zip
Windows (ARM64)last9-mcp-server_Windows_arm64.zip
Linux (x64)last9-mcp-server_Linux_x86_64.tar.gz
Linux (ARM64)last9-mcp-server_Linux_arm64.tar.gz
macOS (x64)last9-mcp-server_Darwin_x86_64.tar.gz
macOS (ARM64)last9-mcp-server_Darwin_arm64.tar.gz

リフレッシュトークンを取得

管理者のみがトークンを作成できます。

  1. API Access に移動
  2. Write 権限で Generate Token をクリック
  3. コピー

クライアント構成

Homebrew:

{
  "mcpServers": {
    "last9": {
      "command": "/opt/homebrew/bin/last9-mcp",
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

NPM:

{
  "mcpServers": {
    "last9": {
      "command": "npx",
      "args": ["-y", "@last9/mcp-server@latest"],
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

貼り付け先:

クライアント場所
Claude Web/DesktopSettings > Developer > Edit Config (claude_desktop_config.json)
CursorSettings > Cursor Settings > MCP > Add New Global MCP Server
WindsurfSettings > Cascade > MCP Marketplace > 歯車アイコン (mcp_config.json)
VS Code{ "mcp": { "servers": { ... } } }settings.json にラップ— 詳細
VS Code STDIO 構成
{
  "mcp": {
    "servers": {
      "last9": {
        "type": "stdio",
        "command": "/opt/homebrew/bin/last9-mcp",
        "env": {
          "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
        }
      }
    }
  }
}

NPMの場合: "command": "npx" を使用し、"args": ["-y", "@last9/mcp-server@latest"] を追加します。

Windows

GitHub Releases からダウンロード後、解凍してフルパスを指定します:

{
  "mcpServers": {
    "last9": {
      "command": "C:\\Users\\<user>\\AppData\\Local\\Programs\\last9-mcp-server.exe",
      "env": {
        "LAST9_REFRESH_TOKEN": "<your_refresh_token>"
      }
    }
  }
}

WindowsではNPMルートの方が簡単です — パス管理が不要です。

環境変数

変数デフォルト説明
LAST9_REFRESH_TOKEN(必須)API Access からのリフレッシュトークン
LAST9_DATASOURCE組織のデフォルトデータソース/クラスター名 — 複数のLevitateクラスターがある場合に便利
LAST9_API_HOSTapp.last9.ioAPIホストを上書き
LAST9_TOOLSETSすべてのツール公開するツールセットをカンマ区切りで指定 (logs, traces, metrics, alerts, dashboards, investigate, all)。エイリアス: LAST9_MCP_TOOLSETS
LAST9_MAX_GET_LOGS_ENTRIES5000チャンク分割された get_logs リクエストの最大エントリ数
LAST9_DEBUG_CHUNKINGfalsetrue を設定して、get_logsget_service_logsget_traces のチャンク計画の詳細をログ出力
LAST9_DISABLE_TELEMETRYtruefalse を設定して内部OTelトレースを有効化
OTEL_SDK_DISABLED標準OTel環境変数。LAST9_DISABLE_TELEMETRY を上書き
OTEL_EXPORTER_OTLP_ENDPOINTOTLPコレクターエンドポイント(テレメトリが有効な場合のみ)
OTEL_EXPORTER_OTLP_HEADERSOTLP認証ヘッダー(テレメトリが有効な場合のみ)

できること

サービスヘルス

  • get_service_summary — ランク付けされたフリートの (service, env) 行: インターバルリクエスト数、スループットrpm、HTTP 4xx/5xx数、gRPCエラー数
  • get_service_environments — サービスに利用可能な環境。最初に実行してください — 他のAPMツールはここから env が必要です
  • get_service_performance_details — 完全な内訳: スループット、エラーレート、p50/p90/p95/平均/最大、apdex、可用性
  • get_service_operations_summary — HTTPエンドポイント、DBコール、メッセージング、HTTPクライアントでグループ化されたオペレーション
  • get_service_dependency_graph — アップストリーム/ダウンストリーム/インフラの依存関係マップ(スループット、レイテンシ、エラーレート付き)
  • get_apm_service_deviations — 現在のウィンドウを同時間のベースラインと比較: リグレッション/改善、Apdex調整、ターミナル結果(フリートまたは単一サービス)
  • get_exceptions — サーバーサイドの例外(サービスとスパンフィルター付き)

データベースオブザーバビリティ

データベースパフォーマンスに直接アプローチする4つのツール。OpenTelemetryトレーススパンから導出されます。すでにOTelを使用している場合は追加の計装は不要です。

  • get_databases — インフラ全体のデータベースを発見: DBタイプ、ホスト、スループット(クエリ/分)、p95レイテンシ、エラーレート、依存サービスの数
  • get_database_slow_queries — 実際に最も遅いクエリ実行。期間順に並べられ、完全なトレースへのトレースID付き
  • get_database_queries — クエリパターンと集計: クエリの実行頻度、平均/p95期間、エラーレート
  • get_database_server_metrics — DBホスト自体からのサーバーサイドメトリクス(CPU、接続、バッファヒット率 — DBシステムに依存)

PostgreSQL、MySQL、MongoDB、Redis、Aerospike、および db_system 属性を持つOTelトレースの他のすべてをサポートします。

Prometheus / PromQL

  • prometheus_range_query — 任意のメトリクスに対するPromQL範囲クエリ
  • prometheus_instant_query — 即時クエリ。avg_over_timesum_over_time などのロールアップ関数を使用
  • prometheus_label_values — 指定された系列のラベル値
  • prometheus_labels — 系列に利用可能なすべてのラベル

これらをデフォルトとは異なるデータソース/クラスターにポイントするには、LAST9_DATASOURCE を設定します。

ログ

  • get_logs — 完全なJSONパイプラインログクエリ(集計、フィルター、フィールド抽出)
  • get_service_logs — サービスの生ログ行。重大度と本文コンテンツでフィルタリング可能
  • get_log_attributes — 時間ウィンドウのログスキーマ内の属性のグローバルカタログ
  • get_log_attributes_for_pipeline — 実行中のパイプラインに実際に存在するログフィールド(スコープ指定されたディスカバリー)。それぞれ正確な filter_field 付き
  • get_drop_rulesLast9 Control Plane からのログドロップルール
  • add_drop_rule — 新しいドロップルールを作成してソースでログ量を削減

トレース

  • get_traces — 広範な検索と集計のためのJSONパイプライントレースクエリ
  • get_service_traces — 正確なトレースIDまたはサービス名でトレースを取得。トレースIDがある場合はこれを使用 — より高速です
  • get_trace_attributes — トレーススキーマ内の属性のグローバルカタログ
  • get_trace_attributes_for_pipeline — 実行中のパイプラインに実際に存在する属性(スコープ指定されたディスカバリー)。それぞれ正確な filter_field 付き
  • get_trace_attribute_values — トレース属性の異なる値。オプションでパイプラインにスコープ可能
  • get_trace_attribute_deviations — 2つの境界スパンコホート間で異なる属性値をランク付け(遅い vs 速い、エラー vs 非エラー、または2つの時間ウィンドウ)。相関であり原因ではありません
  • get_trace_waterfall — 正確な1トレースを親子ウォーターフォールとして表示。インターバル結合自己時間、最も遅いスパン、グラフ警告付き

変更イベントとアラート

  • get_change_events — デプロイメント、構成変更、ロールバック。インシデントを変更内容と相関させます
  • get_alert_config — アラートルール構成 — 名前、重大度、タイプ、タグで検索可能
  • get_alerts — 時間ウィンドウ内で現在発火中のアラート
  • get_alert_rule_state — 時間範囲にわたるアラートルールごとの発火状態(1/0)の履歴。rule_id でグループ化。アラートグループ、ルール名、ラベルフィルター、状態でフィルタリング可能
  • get_notification_channels — 構成された通知チャネル(Slack、PagerDuty、メールなど)

カスタムダッシュボード

  • list_dashboards — 組織内のすべてのカスタムダッシュボード: ID、名前、メタデータ
  • get_dashboard — IDによる完全なダッシュボード定義(パネルとクエリを含む)
  • create_dashboard — パネル、クエリ、メタデータを含む新しいカスタムダッシュボードを作成
  • update_dashboard — IDによる既存ダッシュボードの更新(読み取り専用のシステムダッシュボードはエラーを返します)
  • delete_dashboard — IDによるカスタムダッシュボードの削除
  • list_dashboard_snapshots — ダッシュボードのフリーズされたポイントインタイムスナップショット(メタデータのみ)
  • get_dashboard_snapshot — RCA/共有ビューのためのパネルデータを含む完全なフリーズスナップショット
  • delete_dashboard_snapshot — IDによるフリーズスナップショットの削除

ファジー名前解決

  • did_you_mean — エージェントがエンティティ名について確信がない場合、カタログから最も近い一致を返します(サービス、環境、ホスト、データベース、K8sデプロイメント/名前空間、ジョブ)。類似度スコア付きで最大3つの提案。名前ルックアップが空を返す場合、サーバーはほとんどのツールの前に自動的にこれを呼び出します。

仕組み

すべての応答にディープリンク。 すべてのツールは deep_link フィールドを返します — その正確なクエリと時間範囲に対するLast9ダッシュボードへの直接URL。エージェントがリンクを渡し、クリックしてそこに移動できます。

ツールセット。 デフォルトではサーバーはすべてのツールを公開します。調査(ログ/トレース/メトリクス)のみが必要な自動化ホストは、クライアント側の一括無効化なしで tools/list を小さく保つために LAST9_TOOLSETS=investigate を設定(または --toolsets=investigate を渡す)できます。名前付きパック: logstracesmetricsalertsdashboardsinvestigateall。不明な名前は即時エラーになります。metrics パックだけでは list_datasourcesdid_you_mean含まれません — これらのディスカバリーヘルパーが必要な場合は investigate(またはツールセットの組み合わせ)を使用してください。

ツールリファレンスリソース。 長いlogjson/tracejson/service-logs/metricsマニュアルはMCPリソース (last9://reference/logjsonlast9://reference/tracejsonlast9://reference/service_logslast9://reference/metrics) であり、常時オンのツール説明テキストではありません。重要なクエリルールはツール説明に残るため、resources/read を呼び出さないエージェントも正しい構築ガイダンスを得られます。get_log_attributes / get_log_attributes_for_pipeline(およびトレース相当)で組織固有のフィールドを発見してください — これらは説明に注入されません。

大きな結果のチャンク分割。 get_logsget_traces は大きな結果セットを切り捨てではなくチャンク分割で処理します。デフォルトの制限はログで5000エントリです。LAST9_MAX_GET_LOGS_ENTRIES で設定可能です。


開発

HTTPモード、curlテスト、ソースからのビルド

HTTPモードで実行

export LAST9_REFRESH_TOKEN="your_refresh_token"
export LAST9_HTTP=true
export LAST9_PORT=8080
./last9-mcp-server

サーバーは http://localhost:8080/mcp で起動します。

curlでテスト

Streamable HTTP ハンドラーは ステートレス モードで動作するため、各リクエストは独立して処理されます。initialize ハンドシェイクと Mcp-Session-Id ヘッダーはオプションです — これらを送信するクライアントも引き続き動作し(ヘッダーは受け入れられて無視されます)、クライアントは tools/list / tools/call に直接進むこともできます。すべてのツールは独立したリクエスト/レスポンスクエリであり、サーバーはサーバー→クライアント通知を発行しないため、GET /mcp(SSE ストリーム)は 405 を返します。

# List tools — a session handshake is optional in stateless mode
curl -s -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -H "Accept: application/json, text/event-stream" \
    -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}'

# Call a tool
curl -s -X POST http://localhost:8080/mcp \
    -H "Content-Type: application/json" \
    -H "Accept: application/json, text/event-stream" \
    -d '{
      "jsonrpc": "2.0",
      "id": 2,
      "method": "tools/call",
      "params": {
        "name": "get_service_logs",
        "arguments": {
          "service_name": "your-service-name",
          "lookback_minutes": 30,
          "limit": 10
        }
      }
    }'

ソースからのビルド

git clone https://github.com/last9/last9-mcp-server.git
cd last9-mcp-server
go build -o last9-mcp-server
LAST9_HTTP=true ./last9-mcp-server

LAST9_HTTP=true はローカル開発用です。実際の使用には、ホスト型 HTTP エンドポイント の方が簡単です。


ツールリファレンス

すべてのパラメータ、時間入力の基準、および詳細

時間入力

  • 絶対時間(start_time_iso/end_time_iso、または time_iso)は lookback_minutes よりも優先されます。
  • 相対ウィンドウの場合: lookback_minutes を使用します。
  • 絶対ウィンドウの場合: RFC3339/ISO8601 を使用します — 2026-02-09T15:04:05Z
  • レガシーの YYYY-MM-DD HH:MM:SS は互換性のためだけに受け入れられます。

get_exceptions

  • limit(整数、オプション): 最大例外数。デフォルト: 20。
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション): 絶対時間範囲。
  • service_name(文字列、オプション): サービスでフィルタリング。
  • span_name(文字列、オプション): スパン名でフィルタリング。
  • env(文字列、オプション): 環境でフィルタリング。

get_service_summary

  • start_time_iso / end_time_iso(文字列、オプション)
  • env(文字列、オプション): PromQL 正規表現。デフォルトは .*。完全一致にはアンカーが必要です(例: ^prod$)。
  • sort_by(文字列、オプション): request_count(デフォルト)、throughput_rpmhttp_4xx_counthttp_5xx_count、または grpc_error_count
  • limit(整数、オプション): 最大ランキング行数。省略または 0 は 10 を意味し、100 を超える値は 100 にクランプされます。

get_service_environments

  • start_time_iso / end_time_iso(文字列、オプション)

他のすべての APM ツールは env 値が必要です。これが空を返す場合は "" を使用してください。

get_service_performance_details

  • service_name(文字列、必須)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)
  • env(文字列、オプション): デフォルトは prod

get_service_operations_summary

  • service_name(文字列、必須)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)
  • env(文字列、オプション): デフォルトは prod

get_service_dependency_graph

  • service_name(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)
  • env(文字列、オプション): デフォルトは prod

get_apm_service_deviations

  • service_name(文字列、オプション): フリート全体のスコープでは省略。1 つのサービスとそのオペレーション相関を指定する場合は指定します。
  • lookback_minutes(整数、オプション): 現在のウィンドウ。デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション): 明示的な現在のウィンドウ。
  • baseline_start_time_iso / baseline_end_time_iso(文字列、オプション): 明示的なベースライン。デフォルトは直前の同一時間幅のウィンドウ。
  • datasource(文字列、オプション): 比較を 1 つのデータソースに制限します。
  • env(文字列、オプション): デフォルトは prod
  • max_services / max_operations(整数、オプション): デフォルト 10、各最大 10。

get_databases

  • env(文字列、オプション): 環境でフィルタリング。デフォルト: すべて。
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)

get_database_slow_queries

  • db_system(文字列、オプション): 例: postgresqlmysqlmongodbredis
  • host(文字列、オプション): データベースホスト(net_peer_name)。
  • service_name(文字列、オプション): 呼び出し元サービス名。
  • env(文字列、オプション)
  • min_duration_ms(浮動小数点数、オプション): 最小クエリ時間(ms)。
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)
  • limit(整数、オプション): デフォルト: 20。

get_database_queries

  • db_system(文字列、オプション)
  • host(文字列、オプション)
  • service_name(文字列、オプション)
  • env(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)
  • limit(整数、オプション): デフォルト: 20。

get_database_server_metrics

  • db_system(文字列、必須): 例: postgresqlmysqlmongodbredisaerospike
  • host(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • start_time_iso / end_time_iso(文字列、オプション)

prometheus_range_query

  • query(文字列、必須): PromQL クエリ。
  • start_time_iso / end_time_iso(文字列、オプション): デフォルトは過去 60 分。
  • lookback_minutes(浮動小数点数、オプション): デフォルト: 60。

prometheus_instant_query

  • query(文字列、必須)
  • time_iso(文字列、オプション): デフォルトは現在時刻。
  • lookback_minutes(浮動小数点数、オプション)

prometheus_label_values

  • match_query(文字列、オプション): PromQL フィルター。
  • label(文字列、必須): ラベル名。
  • start_time_iso / end_time_iso(文字列、オプション)

prometheus_labels

  • match_query(文字列、オプション): PromQL フィルター。
  • start_time_iso / end_time_iso(文字列、オプション)

get_logs

  • logjson_query(配列、必須): JSON パイプラインクエリ。
  • lookback_minutes(整数、オプション): デフォルト: 5。
  • start_time_iso / end_time_iso(文字列、オプション)
  • limit(整数、オプション): サーバーデフォルト: 5000。
  • index(文字列、オプション): physical_index:<name> または rehydration_index:<block_name>

ログベースのサービスインベントリの場合、最初に physical_index_service_count をクエリします:

sum by (name, service_name, env) (physical_index_service_count{destination="logs"})

service_nameServiceName として、存在する場合は env を環境として、name を物理インデックス名として使用します。name="default" の場合は index を省略します。ユーザーが選択した非デフォルトの物理インデックスの場合は、index: "physical_index:<name>" を渡します。バックエンドが明示的な物理インデックスフィルタリングを拒否した場合は、index なしで再試行し、そのバックエンドでは明示的な物理インデックスフィルタリングが利用できないことを報告します。

get_service_logs

  • service_name(文字列、必須)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • limit(整数、オプション): デフォルト: 20。
  • env(文字列、オプション)
  • severity_filters(配列、オプション): 例: ["error", "warn"]。OR ロジック。
  • body_filters(配列、オプション): 例: ["timeout", "failed"]。OR ロジック。
  • start_time_iso / end_time_iso(文字列、オプション)
  • index(文字列、オプション)

複数のフィルタータイプは AND で結合されます。各配列は内部で OR を使用します。 まず get_logs を広範な集計カウントに使用し、get_service_logs はサービス/環境/インデックスと小さなサンプルセットに絞り込んだ後にのみ使用します。

get_log_attributes

  • lookback_minutes(整数、オプション): デフォルト: 15。
  • start_time_iso / end_time_iso(文字列、オプション)
  • region(文字列、オプション)
  • index(文字列、オプション)

get_log_attributes_for_pipeline

  • pipeline(配列、必須): ディスカバリをスコープするための先行フィルターステージ。例: [{"type":"filter","query":{"$eq":["ServiceName","<service>"]}}]
  • lookback_minutes(整数、オプション): デフォルト: 15。
  • start_time_iso / end_time_iso(文字列、オプション)
  • region(文字列、オプション)
  • index(文字列、オプション)

get_drop_rules

パラメータなし。GET /otel_settings/drop?region=... を介してドロップルールを一覧表示します。

add_drop_rule

  • name(文字列、必須)
  • filters(配列、必須): 各フィルター: keyvalueoperatorequals/not_equals)、conjunctionand)。
  • フィルターキーは attributes["key_name"] または resource.attributes["key_name"] を使用する必要があります(Last9 API で必須)。
  • POST /otel_settings/drop?region=...&cluster_id=... を介してルールを作成します。

get_traces

広範な検索と集計に使用します。正確なトレース ID の検索には get_service_traces を使用します。

  • tracejson_query(配列、必須)
  • start_time_iso / end_time_iso(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • limit(整数、オプション): デフォルト: 5000。

get_service_traces

trace_id または service_name のいずれか 1 つが必須です。

  • trace_id(文字列、オプション): デフォルトのルックバック: 72 時間。
  • service_name(文字列、オプション): デフォルトのルックバック: 60 分。
  • lookback_minutes(整数、オプション)
  • start_time_iso / end_time_iso(文字列、オプション)
  • limit(整数、オプション): デフォルト: 10。
  • env(文字列、オプション)

get_trace_attributes

  • lookback_minutes(整数、オプション): デフォルト: 15。
  • start_time_iso / end_time_iso(文字列、オプション)
  • region(文字列、オプション)

get_trace_attributes_for_pipeline

  • pipeline(配列、必須): ディスカバリをスコープするための先行フィルターステージ。例: [{"type":"filter","query":{"$eq":["ServiceName","<service>"]}}]
  • lookback_minutes(整数、オプション): デフォルト: 15。
  • start_time_iso / end_time_iso(文字列、オプション)
  • region(文字列、オプション)

get_trace_attribute_values

  • tag_name(文字列、必須): get_trace_attributes からの属性名(例: resource_department または attributes['http.method'])。
  • pipeline(配列、オプション): 値をスコープするための先行フィルターステージ。グローバル値の場合は省略します。
  • region(文字列、オプション)

get_trace_attribute_deviations

  • comparison_mode(文字列、必須): latencyerrors、または time
  • service_name(文字列、必須)
  • environment(文字列、必須): 正確な deployment.environment 値。
  • operation(文字列、オプション)
  • filters(配列、オプション): トレース JSON フィルター条件。
  • candidate_attributes(配列、オプション): 最大 8。制限付きディスカバリの場合は省略します。
  • latency_threshold_ms(数値、オプション): latency モードで必須。他のモードでは拒否されます。
  • start_time_iso / end_time_iso(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 15。最大: 15。
  • baseline_start_time_iso / baseline_end_time_iso(文字列、オプション): time モードで必須。ターゲットウィンドウと重複せず、同じ時間幅である必要があります。
  • minimum_cohort_size(整数、オプション): デフォルト: 100。最小: 20。
  • minimum_value_support(整数、オプション): デフォルト: 20。最小: 10。
  • limit(整数、オプション): デフォルト: 10。最大: 10。

対応するバックエンド機能が有効になっている必要があります。

get_trace_waterfall

  • trace_id(文字列、必須)
  • environment(文字列、オプション)
  • start_time_iso / end_time_iso(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 4320(72 時間)。
  • selected_span_id(文字列、オプション): そのスパンのみの属性、イベント、リンクを返します。
  • max_spans(整数、オプション): デフォルト: 500。最大: 1000。

investigation-evidence/v1 エンベロープを返します。ウォーターフォールは data の下にあります。

get_change_events

  • start_time_iso / end_time_iso(文字列、オプション)
  • lookback_minutes(整数、オプション): デフォルト: 60。
  • service_name(文字列、オプション)
  • env(文字列、オプション)
  • event_name(文字列、オプション): これを指定せずに呼び出して available_event_names を取得します。

get_alert_config

  • search_term (string, optional): 名前、グループ、データソース、タグを横断するフリーテキスト検索。
  • rule_name (string, optional)
  • severity (string, optional)
  • rule_type (string, optional): static または anomaly
  • alert_group_name / alert_group_type / data_source_name (string, optional)
  • tags (array, optional): すべて一致する必要があります(AND ロジック)。

get_alerts

  • time_iso (string, optional): RFC3339 形式の評価時刻。
  • window (integer, optional): ルックバック秒数。デフォルト: 900。範囲: 60–86400。
  • lookback_minutes (integer, optional): 範囲: 1–1440。

get_alert_rule_state

  • start_time (integer, required): 範囲の開始時刻の Unix エポック(含む)。
  • end_time (integer, required): 範囲の終了時刻の Unix エポック(含む)。
  • step (integer, required): サンプル間の解像度(秒)。サンプル数 ((end_time - start_time) / step + 1) は最大 100 件に制限されています。
  • alert_group_id (string, optional): アラートグループ ID でフィルタリングします。
  • rule_name (string, optional): ルール名に対する正規表現フィルタ。
  • alert_group_name (string, optional): アラートグループ名に対する正規表現フィルタ。
  • label_filters (string, optional): カンマ区切りの key=value ラベルフィルタ。
  • state (string, optional): 状態でフィルタリング(例: firing)。

rule_id -> [{timestamp, is_firing}] の JSON マップを返します。ルールがアップストリームのレスポンスに存在しないタイムスタンプは is_firing=0 として報告されます。これは「発火中として観測されていない」という意味であり、正常状態が確認されたわけではありません。

get_notification_channels

パラメータはありません。設定済みのすべての通知チャネル(Slack、PagerDuty、メール、Webhook など)を返します。

did_you_mean

  • query (string, required): 検索する名前 — 部分一致、スペルミス、省略形に対応。
  • type (string, optional): エンティティタイプに制限: serviceenvironmenthostdatabasek8s_deploymentk8s_namespacejob

類似度スコア付きで最も近い一致を最大 3 件返します。エンティティ名が不明確な場合は、任意のツール呼び出しの前にこれを使用してください。以前の呼び出しが空の結果を返した場合は、再試行する前にこれを試してください。

list_dashboards

パラメータはありません。組織内のすべてのカスタムダッシュボードを、idname、メタデータを含む JSON 配列として返します。

get_dashboard

  • id (string, required): ダッシュボード UUID。
  • region (string, optional): パネルクエリ生成のリージョン。デフォルトは設定済みのデータソースリージョン。

create_dashboard

  • dashboard (object, required): namepanels[] を含むダッシュボード定義。各パネルには nameversionlayoutxywh)、visualization.typequeries[] が必要です。
  • metadata (object, optional): ダッシュボードのメタデータ — _category_type フィールド(例: {"_category":"custom","_type":"metrics"})。

update_dashboard

  • id (string, required): 更新するダッシュボード UUID。
  • dashboard (object, required): 完全な置き換え用ダッシュボード本文(create と同じ形式)。
  • metadata (object, optional): 置き換え用メタデータ。読み取り専用のシステムダッシュボードは 403 エラーを返します。

delete_dashboard

  • id (string, required): 削除するダッシュボード UUID。読み取り専用のシステムダッシュボードは削除できません。

list_dashboard_snapshots

  • dashboard_id (string, required): スナップショットを一覧表示するダッシュボード UUID。

メタデータのみを返します(idnameexpires_at など)。凍結されたパネルデータには get_dashboard_snapshot を使用してください。

get_dashboard_snapshot

  • id (string, required): スナップショット UUID。

dashboard_definitionpanel_datatime_rangevariables を含む完全な凍結スナップショットを返します。

delete_dashboard_snapshot

  • id (string, required): 削除するスナップショット UUID。

テスト

統合テストのセットアップと手順については TESTING.md を参照してください。


MseeP.ai Security Assessment Badge