Log10x MCP について
Log10x MCPは、Log10xのログパターン、コスト、イベント分析ツールをClaudeなどのMCP対応アシスタントに公開します。反復するメッセージをまとめてパターン別指標を示し、コスト分析やインシデント調査に使えます。APIキーなしでは公開デモデータを読み取り専用で利用します。
主な機能
- 01ログパターン別の量とコスト測定
- 02サービス指標と変化の確認
- 03タイムラインと関連パターンの調査
- 04ログ圧縮・階層変更・退避の提案
- 05ローカルファイルから削減額を推定
活用シーン
- 01ログコスト増加の要因を特定
- 02サービスのログ量急増を調査
- 03削減・退避するメッセージ種別を選定
- 04導入前にコスト削減額を見積もり
MCP 対応
ログ分析、削減額の推定、インシデント調査、管理機能をMCPクライアント向けツールとして公開します。キーなしでは公開デモデータを読み取り専用で利用し、アカウント単位のツールにはAPIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
55掲載時のツール一覧 · 2 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| pattern | string | いいえ | 検索するパターン名または検索語(例:「Payment_Gateway_Timeout」)。代わりに `pattern_hash` / `tenxHash` を渡す場合は省略してください。 |
| service | string | いいえ | 検索対象を絞り込むサービス |
| tenxHash | string | いいえ | `pattern_hash` の旧式エイリアスです。どちらも受け付けます。正規形式の `pattern_hash` またはこの旧式形式のいずれかを渡してください。どちらも同じように扱われます。 |
| siemScope | string | いいえ | tenxHash の逆引きで使用するライブサンプル行の SIEM スコープ:CloudWatch ロググループ(`/aws/ecs/my-svc`)、ES インデックス、または Splunk インデックスです。省略すると、検出された SIEM コネクター独自のデフォルトスコープが使用されます。`tenxHash` が渡された場合(ピラー間相関のケース)にのみ参照されます。 |
| timeRange | enum | いいえ | 時間範囲です。インシデントウィンドウの検索には1日未満の値を指定します。'24h' と '1d' は同じです。15m | 1h | 6h | 24h | 1d | 7d | 30d |
| environment | string | いいえ | 環境のニックネーム |
| analyzerCost | number | いいえ | SIEM 取り込みコスト($/GB)。`effective_ingest_per_gb` の非推奨エイリアスです。 |
| pattern_hash | string | いいえ | SIEM/CloudWatch Logs イベントに見られる正規の11文字ハッシュ(例:「03ndjreM-sU」)。`tenxHash` のエイリアスです。どちらも受け付けます。10x メトリクスを照合してパターンを復元し、通常のコスト/サービス内訳を表示します。 |
| effective_ingest_per_gb | number | いいえ | 顧客が指定する SIEM 取り込みコスト($/GB)です。設定すると金額フィールドが入力され、rate_source=customer_supplied になります。未設定でデフォルトレートも検出されない場合、金額フィールドは null になり、rate_source=unset になります。 |
詳細
Log10x MCP Server
ログコスト、ログパターン、インシデントについて自然な英語で AI アシスタントに質問すると、パターンごとのメトリクスに基づいた構造化された回答が得られます。「今週、ログコストが急増したのはなぜですか?」「payments-svc のボリュームを押し上げている要因は何ですか?」「1 月 15 日から 4 月 15 日までの acme-corp の payment_retry イベントを取得してください。」このサーバーは、ツール群として 10x プラットフォームを Claude や MCP 互換のアシスタントに公開します。
10x はログをメッセージタイプごとにグループ化します。タイムスタンプやリクエスト ID だけが異なる同じ行が何度も繰り返されるため、10x はほぼ同一の行が大量に流れ込むたびに、それらを 1 つのメッセージタイプにまとめ、ボリュームとコストの順にランク付けします。名前はコードからコンパイルされたシンボルに基づいているため、同じエンジン、ライブラリ、設定のもとでは、どのノードでも同じ行に同じ名前が付けられます。
このサーバーは MIT ライセンスのオープンソースです。Log10x 製品ライセンス(API キー)を使うと、アカウントに紐づくツールを利用できます。ライセンスがなくても、サーバーは公開デモデータセットに対する読み取り専用モードで起動するため、すぐにツールを試せます。
できること
| こう言うと | こうなります |
|---|---|
| 「何から始めればいいですか?ログコストの削減を手伝ってください。」 | ガイド付きメニューで、コスト削減、調査、インストールのどれを希望するかを確認し、適切な次のステップに案内します。新機能や変更点も確認できます。log10x_start、log10x_whats_new、log10x_whats_changing |
| 「サインインしてください。」/「どのアカウントで接続していますか?」 | GitHub サインインで API キーを発行して保存し、アカウントからアクセスできる環境を表示します。log10x_signin_start、log10x_login_status、log10x_create_env |
| 「自分のスタックにインストールする方法を教えてください。」 | 独自のパイプライン、フェッチバックの接続方法、サービスごとの推奨アクションについて、そのまま貼り付けられるセットアップ手順を提示します。ポリシーはマージ用のプルリクエストとして提供されます。ConfigMap の場合は、明示的な 2 回目の呼び出しを行った場合にのみ書き込まれます。log10x_advise_install、log10x_advise_retriever、log10x_configure_engine |
| 「デプロイする前に、データの節約額を見積もってください。」 | ローカルのログファイル、または既存のログプラットフォームを使って、インストール不要で節約額をレポートします。log10x_poc_from_local、log10x_poc_from_siem_submit、log10x_poc_from_siem_status。キーなしで起動すると、パブリックデモデータセットに接続し、この 3 つも登録されます。ユーザーのマシン上で実行され、デモバックエンドには一切アクセスしないためです。LOG10X_DEMO_FALLBACK=off を設定して起動すると、代わりに POC モードになり、log10x_top_patterns、log10x_investigate、log10x_savings およびすべての Retriever ツールが無効になります。 |
| 「どれくらい削減できますか?これまでの削減額はいくらですか?」 | 削減見込み額と実績額を、各数値の根拠となるパターンごとの計算とともに提示します。log10x_estimate_savings、log10x_savings、log10x_commitment_report |
| 「現在、何がコストを押し上げていますか?」 | ボリュームとコストを押し上げている、繰り返し発生するメッセージの種類とサービス、および前週からの変化を確認できます。log10x_top_patterns、log10x_whats_changing、log10x_services |
| 「payments-svc が急増したのはなぜですか?」 | 1 回の呼び出しで調査します。タイムライン、相関するパターン、最も強い時間的根拠を提示し、確信度も示すことで、原因が証明済みであるかのように伝えることを避けます。log10x_investigate、log10x_metrics_that_moved、log10x_metric_overlay |
| 「このメッセージの種類はノイズです。削減してください。」 | 選択したメッセージの種類について、サンプル化、破棄、圧縮、低い階層への移行、オフロードを行い、例と傾向も示してアクションを明確にします。log10x_pattern_mitigate、log10x_pattern_examples、log10x_pattern_trend |
| 「環境はすべて Lambda で、クラスターはありません。そこにインストールしてください。」 | サーバーレス環境向けのインストール計画を提示します。Lambda 拡張機能としてのエンジンを関数の OTel コレクターと組み合わせ、CDK コンストラクトと、S3 の設定プレーンを使った AWS ネイティブの定期実行にも対応します。log10x_advise_install、log10x_setup_recurring |
| 「オフロードした実際のイベントを取得してください。」 | 必要に応じて、独自の S3 からイベントを正確に取得します。log10x_retriever_query、log10x_offload_add、log10x_retriever_register |
| 「自分のメッセージの種類をもっと認識できるようにしてください。」 | 独自のソースコード、バイナリ、コンテナイメージをシンボルライブラリにコンパイルし、エンジンがより多くのメッセージの種類を識別できるようにします。log10x_compile、log10x_compile_link、log10x_compile_status |
インストール
Claude Code
claude mcp add --transport stdio --env LOG10X_API_KEY=your-api-key log10x -- npx -y log10x-mcp
/mcp で確認します。--env フラグを省略すると、公開デモデータセットに対して読み取り専用で実行されます。
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。
{
"mcpServers": {
"log10x": {
"command": "npx",
"args": ["-y", "log10x-mcp"],
"env": {
"LOG10X_API_KEY": "your-api-key"
}
}
}
}
Cursor、Windsurf、その他の MCP クライアント
同じ形式の mcpServers エントリーを追加します。"command": "npx"、"args": ["-y", "log10x-mcp"] を指定し、env に LOG10X_API_KEY を設定します。キーを省略すると、読み取り専用のデモモードで実行されます。
セットアップの詳しい手順:https://doc.log10x.com/apps/mcp/
log10x_top_patterns と log10x_pattern_trend のチャート画像(include_chart)には、chart.js と chartjs-node-canvas が必要です。これらは任意のピア依存関係で、パッケージにはインストールされません。これらがない場合、チャートはテキストとして表示されます。
Elasticsearch、Azure Monitor、GCP Cloud Logging のコネクターと、Azure App Configuration および GCP Secret Manager の設定ストアも、デフォルトのインストールを小さく保つため、任意の SDK を使用します。サーバーの起動時に追加してください。たとえば、npx -y -p log10x-mcp -p @azure/monitor-query -p @azure/identity log10x-mcp のように指定します。必要なパッケージが不足している場合、コネクターがそのパッケージ名を示します。
認証情報
アカウントに紐づくツールには、Log10x API キーが必要です。取得方法は次の2つです。
- GitHub でサインイン:
log10x_signin_startを実行して認証フローを完了し、続けてlog10x_signin_completeを実行します。キーは自動的に保存されます。log10x_login_statusで接続先のユーザーを確認できます。 - 環境変数:
LOG10X_API_KEYを直接設定します。
キーがありませんか? サーバーは公開の10xデモデータセット(ウェブサイトのコンソールに表示されるものと同じサンプルデータ)に対して読み取り専用で起動するため、分析、検出、インストールアドバイザーをすぐに利用できます。このモードでは、共有デモの状態を変更しないよう、変更を伴うツールは無効になります。LOG10X_DEMO_FALLBACK=off を設定すると、純粋な POC モード(アカウント不要で、自分のファイルに対する削減額を推定)で起動できます。モードは起動時に固定されるため、再検出するにはサーバーを再起動してください。
環境変数
すべて任意です。一般的な使い方では、LOG10X_API_KEY のみを設定します(キーを設定しなくても構いません)。
| 変数 | 用途 |
|---|---|
LOG10X_API_KEY | Log10x API キーです。省略すると、公開デモデータセットを読み取り専用で起動します。 |
LOG10X_API_BASE | API ベース URL の上書き値です(デフォルトは https://prometheus.log10x.com)。 |
LOG10X_ENV_ID | アカウントからの自動検出の代わりに、特定の環境 ID を指定します。 |
LOG10X_DEMO_FALLBACK | キーが設定されていない場合に公開デモデータセットへ接続する代わりに POC モードで起動するには、off に設定します。 |
LOG10X_MCP_READ_ONLY | 読み取り専用モードを強制するには、true または 1 に設定します(すべての変更系ツールは処理を拒否します)。 |
LOG10X_CUSTOMER_METRICS_URL / _TYPE / _AUTH | 独自のメトリクスバックエンド(Prometheus、Grafana Cloud、Mimir、Thanos、AMP)を指定し、BYO メトリクス構成を設定します。 |
DD_API_KEY / DD_APP_KEY / DD_SITE | Datadog にパターンごとのメトリクスをバックフィルするための認証情報です。 |
PROMETHEUS_REMOTE_WRITE_URL / PROMETHEUS_URL | パターンごとの時系列データをバックフィルおよび読み取るための Prometheus エンドポイントです。 |
__SAVE_LOG10X_RETRIEVER_URL__ / __SAVE_LOG10X_RETRIEVER_BUCKET__ | フェッチバック用の Retriever クエリエンドポイントと、インデックス対象のバケットです。両方が必要です。log10x_retriever_register は同じペアを設定します。Lambda 関数 URL は AWS 認証情報で署名されます。 |
__SAVE_LOG10X_RETRIEVER_TARGET__ | フェッチバッククエリのデフォルトのターゲットアプリ接頭辞です(例:app)。 |
LOG10X_RETRIEVER_LOG_GROUP | Retriever がクエリイベントを書き込む CloudWatch ロググループであり、TENX_QUERY_LOG_GROUP の値です。これを設定すると、結果がゼロのクエリで、どのステージにも一致しなかったかが示されます。 |
LOG10X_RETRIEVER_TIMEOUT_MS / LOG10X_RETRIEVER_POLL_MS | フェッチバッククエリのタイムアウト(デフォルトは 90000)とポーリング間隔(デフォルトは 1500)です。 |
LOG10X_RETRIEVER_AUTH_HEADER / LOG10X_RETRIEVER_AUTH_VALUE | フェッチバック認証ヘッダーを上書きします(デフォルトはアクティブな環境から導出されます)。 |
LOG10X_OFFLOAD_BUCKET / LOG10X_STREAMER_BUCKET | オフロードツールが管理する S3 バケット名です。 |
TENX_LICENSE_KEY | エンジンのライセンスキーです。コンパイルパスとローカルエンジンの実行パス(log10x_resolve_batch、log10x_extract_templates)の両方でエンジンに渡され、Docker モードとローカルモードのどちらでも使用されます。Docker モードでは、エンジンに拒否されたキーは自動再試行時に渡されず、実行は失敗する代わりにイメージに組み込まれた制限付きライセンスにフォールバックします。ダウングレードはサーバーの stderr に記録されます。 |
OTEL_EXPORTER_OTLP_ENDPOINT | サーバー独自のツール呼び出しトレースを OTLP エンドポイントに送信します。OpenTelemetry SDK はオプションのピア依存関係であり、パッケージにはインストールされません。@opentelemetry/sdk-node、@opentelemetry/exporter-trace-otlp-http、@opentelemetry/resources を同じ場所にインストールしてください。そうしない場合、トレースは無効のままとなり、その旨がサーバーの stderr に表示されます。 |
TENX_LICENSE_FILE | エンジンのライセンスファイルへのパスで、TENX_LICENSE_KEY の代替です。エンジン自体が読み取るため、エンジンプロセスから参照できるパス(エンジンが Docker 内で実行される場合はコンテナ内のパス)を指定する必要があります。 |
LOG10X_TENX_MODE | ローカルエンジンツールとコンパイルツール用の local または docker です。未設定の場合は自動検出され、PATH 上の tenx が優先され、なければ Docker が使用されます。ローカルインストールの代わりにエンジンイメージを実行するには docker に設定します。これは、ローカルの tenx にライセンスがない場合の回避策にもなります。 |
LOG10X_TENX_PATH | ローカルの tenx バイナリへのパスです(解決されたモードが local の場合に使用)。デフォルトは PATH 上の tenx です。 |
LOG10X_RUNTIME_IMAGE | Docker モードの実行パスで使用するエンジンイメージです(デフォルトは log10x/pipeline-10x:latest)。エイリアス native を指定すると、GraalVM-native の log10x/edge-10x が選択されます。 |
LOG10X_TENX_IMAGE | 実行パスで使用するエンジンイメージであり、log10x_compile のフォールバックとしても使用されます。ここでランタイムフレーバーのイメージを指定すると、コンパイルパスでは拒否されます。 |
LOG10X_COMPILER_IMAGE | log10x_compile / log10x_compile_link 用のコンパイライメージです(デフォルトはダイジェストで固定された log10x/compiler-10x:1.1.136 で、すべての実行で同じコンパイラが使用されます。リリースを追跡するには :latest を設定します。未設定の場合は LOG10X_TENX_IMAGE にフォールバックします)。シンボルライブラリをビルドできるのはコンパイラフレーバーだけです。 |
LOG10X_GH_REPO / LOG10X_GITOPS_REPO_PATH | GitOps 対応の設定ツールで使用する GitHub リポジトリとローカルパスです。 |
独自のデータに接続する(任意)
10x では、すべてのログをインデックス化するために費用をかけなくても、ログを検索できる状態に保てます。Receiver は予算超過につながるノイズを独自の S3 に送信し、必要なときに Retriever が該当するイベントを取得します。log10x_offload_add と log10x_retriever_register でオフロードと取得の経路を設定し、log10x_backfill_metric でパターンごとのボリュームとコストの時系列データを既存の Datadog または Prometheus に送信します。これにより、他のダッシュボードと並べてコストビューを表示できます。
セキュリティ
サーバーは AI クライアントのサブプロセスとしてローカルで実行されます。マシンの外に出るのは、事前に集計されたメトリクスのクエリ(パターンごとのボリュームとコスト)のみで、生のログ内容が外部に送信されることはありません。log10x_resolve_batch によるローカルのトリアージは、stdin と stdout を介してすべてマシン上で実行されます。独自のログプラットフォームへの接続には、読み取り専用の認証情報を使用します。LOG10X_MCP_READ_ONLY=true を設定すると、モードにかかわらずすべての変更系ツールが拒否されます。
フェンスで隔離された POC:確実にオフライン
約束ではなく検証できる評価のために、MCP サーバーとログエンジンを 1 つのコンテナにまとめ、--network none で起動します。ログサンプルは、独自の認証情報を使ってご自身でエクスポートしたものを使用します。
docker run -i --rm --pull=never --network none --hostname localhost \
--cap-drop ALL --security-opt no-new-privileges \
-v "$PWD/poc/logs:/data:ro" -v "$PWD/poc/out:/out" \
-e TENX_LICENSE_KEY -e TENX_AIRGAPPED=true log10x/poc:local
この行には npx を使う方法はありません。これは意図的なものです。npx は実行時にパッケージを解決して実行します。また、パッケージの postinstall スクリプトはホストが利用できるネットワークを使って実行される、制限されていないコードです。これはまさに、フェンスで排除しようとしているものです。イメージ内のすべてのものはビルド時に組み込まれており、コンテナの起動時にインストールされるものはありません。
ライセンスは、ログデータを対象とする前に、目で確認できる 1 つの curl を使ってご自身で発行します。このプロファイルでは、サーバーがライセンスを発行することはありません。また、ライセンスがない場合はデータの取得を試みるのではなく、手順を示して失敗します。ログサンプルもご自身でエクスポートします。log10x_emit_sample_plan は、アナライザーごとに読み取り専用のシェルスクリプトを生成します。内容を一度確認してから、コンテナの外で実行してください。
docker inspect の 1 行で検証し、Wi-Fi をオフにして分析をもう一度実行すれば、確認は完了です。
エクスポートスクリプトで確認する内容や、取り繕わずに明記している制約を含む、詳細な手順はこちらです:docs/fenced-poc.md。
オープンソースとライセンス
MIT。npm で log10x-mcp(Node 20+)として公開されています。ソースコードは公開されているため、各ツールの動作を直接確認できます。アカウントに紐づくツールには Log10x の製品ライセンス(API キー)が必要ですが、公開デモデータセットの利用にライセンスは不要です。
MCP クライアントは、サーバーを長時間実行される子プロセスとして起動します。パッケージをアップグレードした後は、クライアントを再起動して新しいバージョンを有効にしてください。
実行結果の報告
任意であり、登録は不要です。ご自身のログを対象に実行した場合は、読み取ったプラットフォーム、実行結果または停止した箇所、返信を希望するかどうかを記載して、イシューを作成してください。返信が不要な場合はその旨をお知らせください。返信はいたしません。
ドキュメント
https://doc.log10x.com/apps/mcp/
ツールが安定したパターン ID をキーとして使う理由:ブログ記事。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。