
Elasticsearch
イベント
該当するコンテンツが見つかりませんでした
マガジン
技術ブログ
サイオステクノロジー株式会社 Saman Part 1 では Elastic Agent Skills の概要とインストール方法を、 Part 2 では Claude Code とローカル Elasticsearch をつなぐ手順を紹介しました。 Part 3 では MCP Apps を試します。MCP Apps は、チャットの中にクリックできる画面を直接表示する仕組みです。Elastic は 2026 年 4 月に 3 つの MCP Apps をオープンソースで公開しました。Security、Search(ダッシュボードビルダー)、Observability の 3 つです。 本記事では Security に絞って、実際にインストールから動作確認まで一通り試した結果を紹介します。Search と Observability は最後に簡単に触れます。 ホストには Claude Desktop を使います。.mcpb ファイルをダブルクリックするだけでインストールできる、最もシンプルな方法です。なお Security MCP Apps は Claude Desktop 以外にも以下のホストで動作します。 ホスト インストール方法 セットアップガイド Claude Desktop .mcpb をダブルクリック 本記事で解説 Claude Code claude mcp add CLI setup-claude-code.md Claude.ai cloudflared トンネル経由 setup-claude-ai.md Cursor npx またはローカルサーバー setup-cursor.md VS Code npx またはローカルサーバー setup-vscode.md 接続先は Elastic Cloud Serverless を使います。ローカル接続(Part 2)と比べると、CA 証明書が不要な分セットアップがシンプルです。 本記事の対象環境は以下の通りです。 Claude Desktop(最新版) Elastic Cloud Serverless 9.3(Security プロジェクト) macOS(Windows の場合はパスのみ読み替えてください) 📝 本記事について 本記事は MCP App v1.0.0での 動作検証に基づいています。Elastic Security MCP App は現在 パブリックプレビュー中であり、活発に開発が続いています。 記事公開後もバージョンアップが頻繁に行われる可能性があるため、 実際の挙動が本記事の内容と異なる場合があります。 最新の動作状況は GitHub リリースノート を合わせてご確認ください。 目次 MCP Apps とは何か Step 1:API キーを作成する(権限が重要) Step 2:Claude Desktop に .mcpb をインストールする 拡張機能を「有効」にする Step 3:スキルをインストールする 7 つのインタラクティブツール 重要な制約:プロジェクト内のチャットでは動かない 実データで SOC フローを動かす Step 1:アラートをトリアージする Step 2:Attack Discovery を確認する Step 3:ケースを作成する Step 4:検知ルールを確認する Step 5:脅威ハントで掘り下げる Step 6:サンプルデータを生成する Attack Discovery のハマりどころ(実体験) 現象 1:MCP App から実行すると「AI コネクタなし」エラー MCP Apps 動作状況のまとめ Attack Discovery のライセンス要件 Search と Observability MCP App について まとめ Serverless × Claude Desktop の接続手順 気をつけるポイント(実体験で学んだこと) MCP Apps の現実と将来性 参考資料 本シリーズのリンク MCP Apps とは何か 通常、MCP ツールが返すのはテキストです。「アラートが 47 件あります」という文章です。それを読んだアナリストは Kibana に移動してアラートを開く、という作業が別途必要でした。 MCP Apps はこれを変えます。ツールの結果として、クリックできるダッシュボードがチャットの中に直接表示されます。Kibana に移動する必要はありません。会話の文脈を保ったまま、インタラクティブな UI を操作できます。 設計上の特性は 3 つあります。 コンテキストの維持: UI はチャットの中にあります。別タブを開く必要がないので、会話の流れが切れません。AI が前の文脈を保持したまま操作できることが SOC や調査でとても重要です。 双方向のデータフロー: UI は MCP サーバーに直接データを取りに行けます。チャットで別の質問をしながら、UI 上のデータが更新されます(UI → MCP Host → MCP Server → Elasticsearch)。 サンドボックス化された信頼境界: MCP Apps はホストが管理する iframe の中で動きます。親ページへのアクセスや Cookie の読み取りはできません。 Step 1:API キーを作成する(権限が重要) ここが最大の落とし穴です。単にキーを作るだけでは一部機能が動きません。 ⚠️ Serverless 環境での重要な注意: Elastic Cloud Serverless では、細かい権限指定(feature_cases.all など)が意図通りに機能しない場合があります。全機能を確実に動かすには、以下の superuser 相当のロールでAPIキーを作成してください。本番環境では最小権限への絞り込みを推奨します。 Kibana の Dev Tools で以下を実行します。 POST /_security/api_key { "name": "claude-mcp-security", "expiration": "30d", "role_descriptors": { "mcp-full-access": { "cluster": ["all"], "indices": [ { "names": ["*"], "privileges": ["all"] } ], "applications": [ { "application": "kibana-.kibana", "privileges": ["all"], "resources": ["*"] } ] } } } 返ってくるレスポンスの encoded フィールドの値が API キーです。 { "id": "rLV1zp0BZGqtkno0tEMy", "name": "claude-mcp-security", "expiration": 1779877313588, "api_key": "YOUR_API_KEY", "encoded": "ckx**********vMHR****6ZFZrV***********RODZoUQ==" } Step 2 で使うのでメモしておいてください。 補足(権限を絞りたい場合): 最小権限で構成する場合、以下が必要です。ただし Serverless 環境では動作しない権限名がある場合があります。検証済みの構成が確定次第、本記事を更新します。 cluster: monitor, monitor_inference indices: read, view_index_metadata, monitor(logs-*, .alerts-security*, .siem-signals*) Kibana: feature_agentBuilder.read, feature_siemAttackDiscovery.all, feature_siem.all, feature_cases.all, feature_actions.read Step 2:Claude Desktop に .mcpb をインストールする Security MCP Apps の最新版を GitHub の最新リリース からダウンロードします。 Assets セクションから example-mcp-app-security.mcpb をダウンロードしてください。 ダウンロードした .mcpb ファイルをダブルクリックします。Claude Desktop が自動的に起動して、インストールダイアログが表示されます。 警告について: 「インストールすると、この拡張機能にコンピュータ上のすべてのデータへのアクセス権が付与されます」というメッセージが表示されますが、これはすべての .mcpb 拡張機能に表示される標準メッセージです。Elastic Security MCP App が実際にアクセスするのは Elasticsearch と Kibana の API のみで、PC 上の他のデータにはアクセスしません。 「インストール」をクリックすると、続いて接続情報の入力ダイアログが開きます。 項目 値 ELASTICSEARCH_URL https://your-cluster.es.cloud.example.com ELASTICSEARCH_API_KEY Step 1 で作成した API キー KIBANA_URL https://your-cluster.kb.cloud.example.com API キーは macOS のキーチェーンに暗号化保存されます。設定ファイルには残りません。 拡張機能を「有効」にする ここが見落としがちなポイントです。インストール後、拡張機能はデフォルトで「無効」状態になっています。 Settings → Extensions で elastic-security-mcp-app を開き、トグルを「有効」に切り替えてください。これは Claude Desktop のすべての拡張機能に共通の動作です。 切り替えたら Claude Desktop を完全に再起動します。チャット画面の下部に 🔨 ハンマーアイコンが表示されれば接続成功です。 Step 3:スキルをインストールする スキルは Claude に「いつ・どのツールを使うか」を教える SKILL.md ファイルです。スキルがないと、Claude は各ツールの使いどころを判断できません。 最新リリース の Assets から以下の zip ファイルをダウンロードします。 alert-triage.zip attack-discovery-triage.zip case-management.zip detection-rule-management.zip generate-sample-data.zip macOS の注意: Safari でダウンロードすると zip が自動展開されてフォルダになります。その場合、フォルダを右クリック →「○○を圧縮」で zip に戻してからアップロードします。 Claude Desktop で Customize → スキル → スキルを作成 → スキルをアップロード から、zip を 1 つずつアップロードします。5 つすべて入れてください。 7 つのインタラクティブツール インストールが完了すると、以下の 7 つのツールが使えるようになります。それぞれがプロンプトに応じてインタラクティブな UI をチャット内に返します。 ツール 機能 triage-alerts アラートの取得・フィルタ・分類。AI 判定カード、プロセスツリー、ネットワークイベント triage-attack-discoveries 既存の Attack Discovery を一覧・トリアージ generate-attack-discovery 新しい Attack Discovery を生成(AI コネクタ必須) manage-cases SOC 調査ケースの作成・管理。AI アクションボタン付き manage-rules 検知ルールの閲覧・チューニング threat-hunt ES|QL ワークベンチ、クリッカブルなエンティティ、D3 調査グラフ generate-sample-data 17 の攻撃シナリオのサンプルデータ生成 重要な制約:プロジェクト内のチャットでは動かない Claude Desktop のプロジェクト機能の中の新規チャットでは MCP Apps の拡張機能が動作しません。プロジェクト外の通常チャットで使う必要があります。 New chat をクリックして、プロジェクトの外で会話を始めてください。 実データで SOC フローを動かす 今回使うデータは logs-endpoint.events.imported.fixed インデックスの Elastic Endpoint エンドポイントイベントです。監視対象は 2 台の Ubuntu ホスト(omm-nix-detect、omm-nix-prevent)で、実際に調査につながるシグナルが含まれています。 データのポイント 内容 omm-nix-prevent への SSH ログイン 16 人の異なるユーザー(isla、abrar、ddroot、kominfo など) unzip プロセスによるファイル作成 /home/ubuntu/74ef6cc38f5a1a80… event.action の種類 fork(117)、end(116)、deletion(82)、creation(80)、ssh_login(20)… Step 1:アラートをトリアージする omm-nix-prevent のアラートをトリアージして Alert Triage ダッシュボードがチャット内に表示されます。各検知ルールに対して AI の判定が信頼スコア付きで表示されます。omm-nix-prevent への大量の SSH ログインがフラグされ、isla、abrar、ddroot といったユーザーの認証履歴をプロセスツリーで確認できます。 ホスト別、検知ルール別、重大度別の集計が UI 内に表示され、アラートをクリックするとプロセスツリーや詳細が展開されます。 図 1:Alert Triage ダッシュボード。high 100 件、medium 100 件の計 200 件が表示され、検知ルール別・ホスト別の集計が確認できる。 Step 2:Attack Discovery を確認する 既存の Attack Discovery を一覧表示して triage-attack-discoveries ツールが起動し、既存の Attack Discovery 一覧が表示されます。 図 2:Attack Discovery 一覧。まだ生成していない場合は 0 件と表示される(正常動作)。 Step 3:ケースを作成する omm-nix-prevent SSH ログイン調査というタイトルでケースを作成して。 重大度は HIGH、関連タグは ssh-login, file-activity, suspicious-unzip Case Management ダッシュボードがインラインに表示され、ケースが即座に作成されます。 図 3:Case Management ダッシュボード。 Step 4:検知ルールを確認する 検知ルールを一覧表示して manage-rules ダッシュボードが起動し、検知ルールの一覧が表示されます。ルール名、重大度、有効/無効の状態、KQL クエリが確認できます。 図 4:検知ルール管理画面。critical、high、medium のルールが一覧表示され、個別に有効化・チューニングできる。 Step 5:脅威ハントで掘り下げる omm-nix-prevent へのSSHログイン後のファイル作成を調査して Threat Hunt ワークベンチが開き、クエリが自動生成されて実行済みの状態で返ってきます。結果には以下のような情報が表示されました。 unzip がハッシュ名のファイルを作成しているのが目立ちます。マルウェアペイロードの可能性があり、調査を進める根拠になります。テーブル内のホスト名やユーザー名はクリックでさらに掘り下げられます。 図 5:Threat Hunt ワークベンチ。ES|QL クエリが自動生成・実行済みで返ってくる。テーブル内のエンティティはクリックで掘り下げ可能。 Step 6:サンプルデータを生成する Ransomware Kill Chain のサンプルデータを生成して Sample Data Generator ダッシュボードが起動し、17 のシナリオから選択できます。 Windows Credential Theft AWS Privilege Escalation Okta Identity Takeover Ransomware Kill Chain(最も多段階で Attack Discovery 向き) Linux Persistence その他 12 シナリオ Ransomware Kill Chain を選択すると、複数の検知ルールに対応するアラートが生成されます。 図 6:Sample Data Generator。17 のシナリオが選択可能で、生成するイベント数も指定できる。 Attack Discovery のハマりどころ(実体験) ここから実体験のトラブルシュート記録です。同じ問題に遭遇する方の参考になればと思い、起きたことをそのまま書きます。 現象 1:MCP App から実行すると「AI コネクタなし」エラー Claude Desktop で「Attack Discovery を実行して」と入力したら、結果は「AI コネクタが設定されていません」のエラー画面でした。 調査した結果、以下のことがわかりました。Kibana 9.x Serverless では AI コネクタがすべて .inference タイプ(統合 Inference API ベース)として提供されています。しかし MCP App v1.0.0 はこのタイプのコネクタを列挙対象に含めていないため、Kibana UI から見えているコネクタが MCP App には 1 つも見えない状態になります。 確認のために手動で .gen-ai タイプのコネクタを作成したところ、そのコネクタだけは MCP App から認識されました。 コネクタタイプ Kibana UI MCP App .inference(Serverless 標準) ✅ 見える ❌ 見えない .gen-ai(手動作成) ✅ 見える ✅ 見える この問題は Elastic 側のバグとして認識済み です。修正時期は未定ですが、修正状況は example-mcp-app-security のリリースノート で確認できます。 図 7:generate-attack-discovery の実行結果。Serverless 標準の .inference コネクタが認識されず、「No matching connector. Available: (空)」エラーが表示される。 MCP Apps 動作状況のまとめ 本記事執筆時点(MCP App v1.0.0)での動作状況をまとめます。 ツール MCP App 経由 備考 triage-alerts ✅ 動作 フル機能 triage-attack-discoveries ✅ 動作 既存 Discoveries の閲覧は可 manage-cases ✅ 動作 superuser ロールが必要(Serverless) manage-rules ✅ 動作 通常動作 threat-hunt ✅ 動作 superuser ロールが必要(Serverless) generate-sample-data ✅ 動作 17 シナリオ対応 generate-attack-discovery ❌ 未動作 .inference タイプコネクタ非対応(Elastic 側バグ認識済、修正待ち) Attack Discovery 機能を使いたい場合は、現時点では Kibana UI から直接実行するのが確実です。 Attack Discovery のライセンス要件 Attack Discovery は OSS(Basic)ライセンスでは利用できません。 デプロイ形態 必要なライセンス Self Managed / Elastic Cloud Hosted Enterprise サブスクリプション Elastic Cloud Serverless EASE(Elastic AI SOC Engine)または Security Analytics Complete ティア 無料トライアルでは 14 日間 Enterprise 相当の機能を試せます。本番導入時のライセンス検討材料にしてください。 Search と Observability MCP App について Security MCP App と同じ仕組みで、別途リポジトリが用意されています。 Search MCP App(example-mcp-dashbuilder): プロンプトから Kibana ダッシュボードを生成します。「ホスト別のイベント数、ユーザー別の操作件数、event.action 種別の内訳を含むダッシュボードを作って」と入力すると、ES|QL でデータを探索して可視化を組み立て、Kibana にエクスポート可能なダッシュボードを返します。 Observability MCP App(example-mcp-app-observability): クラスターヘルスサマリ、APM サービス依存関係グラフ、Kubernetes ノード停止時のインパクト範囲分析などを提供します。 それぞれインストール手順は Security と同じで、.mcpb ファイルをダブルクリックしてダウンロード、API キーを設定、Settings → Extensions で有効化、という流れです。 まとめ Serverless × Claude Desktop の接続手順 ステップ 内容 Step 1 Kibana で API キーを作成(Serverless では superuser ロールを推奨) Step 2 example-mcp-app-security.mcpb をダブルクリックしてインストール、接続情報入力、「有効」に切り替え Step 3 スキル zip を 5 つアップロード 気をつけるポイント(実体験で学んだこと) .mcpb をインストールしただけでは拡張機能は「無効」状態。手動で有効化が必要 Serverless 環境では API キーに superuser ロールを使う (細かい権限指定が機能しない場合がある) API キーを変更したら拡張機能の設定で API キーを上書きして Claude Desktop を再起動 プロジェクト内の新規チャットでは MCP Apps 拡張が動かない。プロジェクト外で会話する Attack Discovery は Enterprise サブスクリプション(または Serverless の EASE / Security Analytics Complete)が必要 Attack Discovery は本記事執筆時点では Kibana UI 経由が確実(MCP App 側は Elastic バグ認識済、修正待ち) ⚠️ パブリックプレビュー期間中の注意 本記事執筆時点(2026年4月)では、MCP App は活発に開発・更新 されています。バージョンアップにより、本記事に記載の手順や 挙動が変わる場合があります。問題が発生した場合は、まず GitHub Issues で既知の問題を確認し、最新の .mcpb への更新や APIキーの再設定をお試しください。 MCP Apps の現実と将来性 正直に書くと、現時点では MCP Apps が Kibana の完全な代替にはなりません。Kibana の方が安定していて、機能が完成しています。 それでも MCP Apps が意義を持つ場面はあります。 SOC アナリスト初心者の学習用: 「アラートをトリアージして」と日本語で言うだけで、AI がどのフィールドを見て、どう ES|QL を書くかを示してくれます。Kibana の使い方を覚える前に、調査の流れを体感できます。 横断的な調査: Security、Search、Observability の 3 つの MCP Apps を入れておけば、1 つのチャットで「アラート確認 → メトリクス調査 → ダッシュボード作成」までできます。Kibana だと画面の往復が必要です。 レポート作成・要約: 「このアラート群を経営層向けに要約して」「IOC を抽出してケースに追加して」など、AI が得意な作業をデータに対して直接実行できます。 「今すぐ Kibana を置き換えるもの」というよりは、「AI 時代のセキュリティ運用の方向性を体験できる先取り技術」と捉えるのが現実的です。 参考資料 Elastic Agent Builder MCP server https://www.elastic.co/docs/explore-analyze/ai-features/agent-builder/mcp-server Permissions and access control in Elastic Agent Builder https://www.elastic.co/docs/explore-analyze/ai-features/agent-builder/permissions Attack Discovery https://www.elastic.co/docs/solutions/security/ai/attack-discovery Elastic Security, Observability, and Search now offer interactive UI in your AI tools https://www.elastic.co/search-labs/blog/mcp-apps-elastic elastic/example-mcp-app-security https://github.com/elastic/example-mcp-app-security elastic/example-mcp-dashbuilder https://github.com/elastic/example-mcp-dashbuilder elastic/example-mcp-app-observability https://github.com/elastic/example-mcp-app-observability ohmymalware(for dataset) https://ohmymalware.com/ 本シリーズのリンク Part 1:Elastic Agent Skills とは、インストールから始める https://elastic.sios.jp/blog/elastic-agent-skills-part1/ Part 2:Claude Code で Elastic Agent Skills を試す、ローカル接続編 https://elastic.sios.jp/blog/elastic-agent-skills-part2/ The post Kibana を開かずに SOC 業務をこなす、 Elastic Security MCP App 実践ガイド first appeared on Elastic Portal .
G-gen の佐々木です。当記事では、Google Cloud Next '26 で発表された Google Cloud のデータベースに関する新機能について、公式の投稿記事「 What’s new with Databases: Powering the agentic future 」の内容をもとに紹介します。 はじめに Embed AI into every layer of the data stack AI Studio とのバイブコーディング連携(GA) データエージェント向けツール(Preview) Database Onboarding Agent / Database Observability Agent(Preview) AlloyDB AI-Powered Search at Scale(Preview) AlloyDB の AI 関数の追加と最適化(Preview) データベース向けマネージドリモート MCP サーバー(GA / Preview) MCP Toolbox for Databases 1.0(GA) Break down walled gardens with lakehouse integrations AlloyDB の Lakehouse Federation(Preview) BigQuery から AlloyDB への Reverse ETL(Preview) Datastream による継続レプリケーション(GA) Knowledge Catalog(旧称 : Dataplex Universal Catalog)(Preview) Spanner Columnar Engine(GA) Database Center の BigQuery サポート(Preview) Commitment to open data and multi-cloud flexibility Spanner Omni(Preview) Bigtable In-Memory(Preview) Memorystore for Valkey 9.0(GA) Oracle AI Database@Google Cloud の拡張 Compute Engine からマネージドサービスへの移行機能(Preview) Firestore の全文検索 / 地理空間検索(Preview) はじめに 以下の Google 公式投稿を参考に、Google Cloud Next '26 で発表された Google Cloud のデータベース製品に関する新機能を紹介します。なお、当記事で紹介する機能の提供ステータス(GA / Preview / Coming Soon)は 2026年4月23日現在の情報です。 Google Cloud Next '26 では、AI モデル、データ分析、運用データベースを単一の AI ネイティブ基盤に統合するアーキテクチャとして Agentic Data Cloud が提唱されました。当記事では以下の公式投稿の内容に沿って、データベースに関する新機能を紹介します。 参考 : What’s new with Databases: Powering the agentic future 他の Google Cloud Next '26 の関連記事は、Google Cloud Next '26 カテゴリの記事一覧から参照してください。 blog.g-gen.co.jp Embed AI into every layer of the data stack AI Studio とのバイブコーディング連携(GA) Google AI Studio とデータベースの統合が GA となり、自然言語プロンプトから、データベースと接続済みで即座に動作するアプリケーションを数秒で生成できるようになりました。現時点では Firestore との接続が GA で提供されており、Cloud SQL for PostgreSQL のサポートも近日提供予定とされています。 プロトタイピングから本番運用まで、エージェント主導の自動化ワークフローとデータベースをシームレスに接続できる点が特徴です。 参考 : From prompt to production: Build full-stack apps faster with Google AI Studio and Firebase データエージェント向けツール(Preview) AlloyDB、Cloud SQL、Spanner で、データエージェントから使えるツール群が Preview 提供となりました。その中核となる QueryData ツールは、自然言語から SQL を生成する text-to-SQL を扱う機能で、公式ブログでは「ほぼ100%の精度」と説明されています。 QueryData は、 コンテキストセット と呼ばれる JSON 形式のナレッジベースを利用する点が、従来の汎用的な text-to-SQL との違いです。開発者があらかじめ監査・整備したコンテキストセットを参照してクエリを組み立てるため、LLM に自由生成させる方式と比べて、実データや業務要件に即したクエリを安定して生成できます。 また QueryData からデータへのアクセスは、 パラメータ化セキュアビュー (Parameterized Secure Views)を介して行われます。パラメータ化セキュアビューは、 PostgreSQL のセキュアビューの拡張機能であり、行レベルセキュリティやフィルタ条件をビュー側にあらかじめ組み込んでおける機能です。エージェントが自然言語から組み立てたクエリであっても、ログインユーザーに許可された範囲のデータだけが参照される状態を保つことができます。 カスタマーサポートの自動化、e コマースのショッピングアシスタントなど、定型的な問い合わせが大量に発生するユースケースでの利用が想定されています。 参考 : QueryData helps agents turn natural language into queries for AlloyDB, Cloud SQL and Spanner 参考 : QueryData の概要 参考 : パラメータ化されたセキュアなビューの概要 Database Onboarding Agent / Database Observability Agent(Preview) データベースの導入と運用を支援する2つのエージェントが Preview 提供となりました。 Database Onboarding Agent は、小規模システムからエンタープライズ要件まで、要件に応じた最適なデータベースを選択し、プロビジョニング作業をガイドするエージェントです。 Database Observability Agent は、AlloyDB、Bigtable、Cloud SQL、Spanner のパフォーマンスを監視し、潜在的な問題の根本原因の特定や、改善策の提示を行うエージェントです。運用中のデータベース群の観測と改善を自動化する機能となっています。 AlloyDB AI-Powered Search at Scale(Preview) AlloyDB のベクトル検索基盤に、Google が開発した ScaNN インデックスを活用した大規模ベクトル検索機能が Preview 提供となりました。最大100億ベクトルまでスケールし、標準 PostgreSQL の HNSW インデックスとの互換性を実現しながら6倍高速なベクトルクエリを実現します。また、カラム型エンジンによる高速化により、HNSW を使用する場合でも標準 PostgreSQL の4倍高速になります。 加えて、キーワード検索とベクトル検索を組み合わせたハイブリッド検索を可能にする BM25 のネイティブサポートも近日追加予定です。BM25 は Elasticsearch をはじめとする主要な検索エンジンで広く採用されている、単語の一致を基準に関連度を算出するキーワード検索のランキングアルゴリズムです。固有名詞や厳密な語句一致が得意な BM25 と、意味の近さを捉えるベクトル検索を1つのデータベース上で組み合わせられる点が特徴です。 参考 : ベクトルインデックスの概要 参考 : Okapi BM25 - Wikipedia AlloyDB の AI 関数の追加と最適化(Preview) AlloyDB に、SQL から直接 LLM を呼び出せる新しい AI 関数が Preview 提供となりました。 新規に ai.analyze_sentiment (感情分析)、 ai.summarize (要約)が追加され、既存の ai.if 、 ai.rank 、 ai.generate 、 ai.forecast についても最適化が施されています。各関数の用途とユースケースを以下にまとめました。 AI 関数 用途 ユースケース例 ai.if 自然言語による条件判定(インテリジェントフィルタリング) 振る舞いパターンから不正の疑いがある取引を検出 ai.rank ベクトル検索結果の再ランク付け 文脈に即して検索結果を並べ替え ai.generate コンテンツ生成、データフォーマット変換 生のサーバーログを解析しやすい JSON へ変換 ai.analyze_sentiment テキストの感情(ポジティブ / ネガティブ / ニュートラル)を分類 商品レビューから顧客満足度を評価 ai.summarize 長文テキストの要約 議事録から決定事項やアクションアイテムを抽出 ai.forecast TimesFM による時系列予測 過去の売上データから将来の在庫需要を予測 参考 : AI 関数の概要 参考 : AI 関数を使用してインテリジェントな SQL クエリを実行する データベース向けマネージドリモート MCP サーバー(GA / Preview) Google Cloud の各データベースで、 Model Context Protocol (MCP)に対応したフルマネージドのリモート MCP サーバーが提供開始となりました。Gemini をはじめとする MCP 準拠のクライアントが、データやインフラストラクチャと安全にやり取りするためのインターフェースを提供します。 参考 : Powering the next generation of agents with Google Cloud databases MCP サーバーの提供ステータスはサービスにより異なるため、最新のステータスは以下の公式ドキュメントの原文(英語)をご確認ください。 参考 : Supported products Google Cloud が提供している MCP サーバーの詳細については、以下の記事を参照してください。 blog.g-gen.co.jp MCP Toolbox for Databases 1.0(GA) MCP Toolbox for Databases は、AI エージェント、IDE、アプリケーションといった MCP クライアントからデータベースに直接接続するための、オープンソースの MCP サーバーです。Gemini CLI や Claude Code などの MCP 準拠クライアントから、Google Cloud のマネージドデータベースに加え、PostgreSQL、MySQL、Oracle、MongoDB、Redis、Snowflake など、合計40以上のデータベースを扱えるようにします。 テーブル一覧の取得( list_tables )や SQL 実行( execute_sql )といった汎用ツールがデフォルトで利用できるほか、独自のロジックをカスタムツールとして定義することで、エージェントが実行可能な操作をあらかじめ限定できます。 参考 : googleapis/mcp-toolbox(GitHub) Break down walled gardens with lakehouse integrations AlloyDB の Lakehouse Federation(Preview) AlloyDB から BigQuery や Apache Iceberg のライブデータを、PostgreSQL のインターフェースで直接照会できる Lakehouse Federation が Preview 提供となりました。 AlloyDB Studio の UI から BigQuery や Iceberg のテーブルを探索でき、フィルタや集計は BigQuery 側にプッシュダウンされます。データを移動せずに、オペレーショナルデータと分析データのライブ結合が可能です。 BigQuery から AlloyDB への Reverse ETL(Preview) BigQuery で算出したインサイト(顧客セグメント、レコメンドスコア、需要予測など)を、AlloyDB にワンクリックで同期できる Reverse ETL 機能が Preview 提供となりました。 アプリケーションから BigQuery を直接参照するのは、レイテンシや同時実行数、コストの観点で現実的でないケースが少なくありません。あらかじめ BigQuery で計算しておいたインサイトを AlloyDB に戻しておけば、アプリは普段通り AlloyDB を参照するだけで、分析結果を画面表示やレコメンドなどのリアルタイム機能に組み込めます。 同期先の AlloyDB は、読み取りを高速化するカラム型エンジンと高速キャッシュによって、多数の同時リクエストに低レイテンシで応答できるアプリケーションバックエンドとして機能します。 参考 : AlloyDB にデータをエクスポートする(リバース ETL) Datastream による継続レプリケーション(GA) Datastream を介して、AlloyDB から BigQuery や Apache Iceberg テーブルへ 継続的レプリケーション を行える機能が GA となりました。 Datastream はサーバーレスで動作し、特に AlloyDB から BigQuery へのストリームには無料枠が提供されます。リアルタイムの ML 特徴量生成など、分析側との連携を前提としたユースケースに適しています。 参考 : ストリームの作成 Knowledge Catalog(旧称 : Dataplex Universal Catalog)(Preview) データガバナンス サービスである Dataplex Universal Catalog が、 Knowledge Catalog へ名称変更されました。Dataplex Universal Catalog は、BigQuery のテーブルや Cloud Storage 上のファイルなど Google Cloud 上のデータ資産に対して、メタデータ、データ品質、リネージ、アクセス制御を一元的に扱えるサービスです。 名称変更に合わせ、AI エージェントがデータの業務的な意味を踏まえて動けるようにするための「コンテキストエンジン」としての機能が Preview 提供となりました。Google Cloud の製品だけでなく、パートナーのデータプラットフォームやサードパーティカタログからも情報を取り込み、組織横断のデータガバナンスの起点として機能します。 Knowledge Catalog の詳細については、以下の記事をご一読ください。 blog.g-gen.co.jp Spanner Columnar Engine(GA) Spanner Columnar Engine が GA となりました。行ベースのストレージと並行して列指向フォーマットでデータを保持し、複数行をまとめて処理するベクトル化実行を組み合わせることで、稼働中のトランザクションデータに対する集計・分析クエリのスキャンを最大200倍高速化するとされています。 また、Iceberg テーブルのサポートや、BigQuery からの継続的な Reverse ETL、フェデレーションクエリの高速化にも対応したことで、Spanner を単独で HTAP (Hybrid Transactional/Analytical Processing)的に使える範囲が広がりました。HTAP は、トランザクション処理(OLTP)と分析処理(OLAP)を、ETL を介さずに1つのデータベースで兼ねるアーキテクチャを指す用語です。 参考 : Spanner カラム型エンジンの概要 Database Center の BigQuery サポート(Preview) Database Center は、Google Cloud のデータベースサービスを横断して、フリート全体の健全性、パフォーマンス、セキュリティ、コンプライアンスを一元的に可視化・管理する管理コンソールです。 この Database Center での BigQuery サポートが Preview 提供となりました。これにより、Google Cloud のマネージドデータベースや Compute Engine 上で運用しているデータベースに加えて、BigQuery も一元的に扱えるようになります。 Gemini によるフリートアナリティクスによってパフォーマンス改善の余地を検出できるほか、メトリクスをサードパーティツールへ連携するための API とマネージド MCP サポートも提供されます。 参考 : Database Center の概要 Commitment to open data and multi-cloud flexibility Spanner Omni(Preview) Spanner Omni が Preview 提供となりました。Spanner Omni は、従来 Google Cloud 上でのみ提供されていた Spanner を、自社データセンター、他クラウド、エッジなど任意の場所で稼働できるダウンロード可能なエディションです。 Spanner のスケーラビリティ、高可用性、強整合性、エンタープライズセキュリティ、マルチモデル機能を、自社データセンターや他クラウドなどの環境でも利用できるようになります。 参考 : Spanner Omni を発表:あらゆるインフラで Google のイノベーションを活用 参考 : Spanner Omni の概要 Bigtable In-Memory(Preview) Bigtable に、1ミリ秒未満の読み取りレイテンシを実現する新しい インメモリ階層 が Preview 提供となりました。Bigtable は2026年4月から Enterprise と Enterprise Plus の2つのエディションを提供しており、このインメモリ階層は Enterprise Plus エディションの一部として提供されます。 インメモリ階層は Bigtable ノードの一部として統合されており、RAM / SSD / HDD のハイブリッド ストレージアーキテクチャによって、頻繁にアクセスされるホットデータをメモリに、長期保管データを低コストストレージに置く、といった使い分けが透過的に行えます。 参考 : エディションの概要 参考 : インメモリ階層の概要 Memorystore for Valkey 9.0(GA) Memorystore for Valkey が Valkey バージョン 9.0 に対応しました。Memorystore 以外で独自に運用している Redis や Valkey を Memorystore へ移行するためのパスも提供されます。 また、選べるノードサイズに小型と大型が加わり、ワークロードの規模に応じて性能とコストのバランスを取りやすくなりました。ブルームフィルタを提供する valkey-bloom 、JSON ドキュメントをネイティブに扱える valkey-json といったモジュールへの対応や、ACL、トークンベース認証、柔軟な認証局設定などのエンタープライズレベルのセキュリティ機能も整備されています。 参考 : Memorystore for Valkey の概要 Oracle AI Database@Google Cloud の拡張 Oracle AI Database@Google Cloud の提供が20リージョンまで拡大しました。なお、東京リージョンは2025年6月に対応済みです。 加えて、 Oracle GoldenGate Service のサポートが追加され、Oracle DB から BigQuery へのニアリアルタイムなデータレプリケーションが可能になります。さらに、前述の Knowledge Catalog(旧称 : Dataplex Universal Catalog)および Database Center との統合も発表されました。 参考 : Oracle Database@Google Cloud overview Compute Engine からマネージドサービスへの移行機能(Preview) Compute Engine 上で自前運用している PostgreSQL などのデータベースを、Cloud SQL や AlloyDB といったマネージドサービスへ移行できる機能が Preview 提供となりました。移行フローは Database Center にネイティブに統合されており、Database Center の画面からそのまま移行を開始できます。 PostgreSQL 向けにはネットワーキングとレプリケーションが自動化されており、最小限の作業とダウンタイムで移行できる点が特徴です。 Firestore の全文検索 / 地理空間検索(Preview) Firestore で 全文検索 および 地理空間検索 機能が Preview 提供となりました。これまで別サービスと組み合わせる必要があった検索機能が、Firestore 単体でサーバーレスに提供され、キーワード / フレーズ / 地理空間クエリに対して高い関連度で応答できます。 参考 : Use text searches 参考 : Use geo queries 佐々木 駿太 (記事一覧) G-gen 最北端、北海道在住のクラウドソリューション部エンジニア 2022年6月に G-gen にジョイン。Google Cloud Partner Top Engineer に選出(2024 / 2025 Fellow / 2026)。好きな Google Cloud プロダクトは Cloud Run。 趣味はコーヒー、小説(SF、ミステリ)、カラオケなど。 Follow @sasashun0805
サイオステクノロジー株式会社 Saman Part 1 では、Elastic Agent Skills の概要とインストール方法を紹介しました。 Part 2 では、 Claude Code とローカル Elasticsearch を実際につなぐ手順 を、ステップバイステップで紹介します。最後まで進むと、自然言語で Elasticsearch にクエリを投げられるようになります。 本記事の手順はすべてローカル環境で実際に動作を確認しています。Elastic Cloud Serverless との接続は Part 3 で紹介します。 目次 検証環境 全体像:接続に必要なもの 1. CA 証明書 2. .env ファイル 3. Agent Skills Step 1:プロジェクトフォルダを作る Step 2:CA 証明書を取得する コンテナ名を確認する 証明書をコピーする Step 3:.env ファイルを作る 注意点が 2 つあります Step 4:接続を確認する Step 5:Agent Skills をインストールする フラグの意味 なぜこの 2 つから始めるのか インストール後の確認 Step 6:Claude Code を起動して接続を確認する Step 7:使用例 1 — ES|QL でデータを分析する カテゴリ別の売上集計 Step 8:使用例 2 — ログを調査する よくあるエラーと解決方法 エラー 1:.env が見つからない エラー 2:Elasticsearch に接続できない エラー 3:npm パッケージが見つからない 互換性についての注意:動かなかった例 実例:kibana-dashboards スキル スキルを追加する まとめ 参考資料 Elastic 公式ドキュメント Elasticsearch Labs ブログ GitHub リポジトリ 検証環境 本記事で使用した環境は以下の通りです。 macOS(Apple Silicon、M4) Docker Desktop Elasticsearch 9.3.1(Docker、3ノード構成、セキュリティ有効) Node.js Claude Code v2.1.117 OS や Elasticsearch のバージョンが異なると、パスや挙動が変わる可能性があります。 全体像:接続に必要なもの Claude Code からローカル Elasticsearch にアクセスするには、 3 つ のものが必要です。 1. CA 証明書 Docker で起動した Elasticsearch は HTTPS 通信を使っており、自己署名証明書(自分で発行した証明書)が使われています。通常の通信ではブラウザや CLI がこの証明書を信頼しないので、 証明書ファイルを取り出して Claude Code に渡す必要があります 。 2. .env ファイル Elasticsearch に接続するには、URL、ユーザー名、パスワード、証明書のパスといった情報が必要です。これを 環境変数として一箇所にまとめておくファイルが .env です。 .env を使うメリット: 接続情報を一箇所で管理できる パスワードをコードに書かなくて済む スキルのスクリプトが環境変数を自動で読み込める 3. Agent Skills Claude Code に Elasticsearch の使い方を教えるスキルです。Part 1 で紹介した通り、 npx skills add コマンドでインストールします。 Step 1:プロジェクトフォルダを作る 接続情報と証明書を管理するフォルダを作ります。 mkdir ~/claude_skills cd ~/claude_skills このフォルダで Claude Code を起動することが重要です。 Claude Code はスキルを、起動したディレクトリの .claude/skills/ から読み込みます。 Step 2:CA 証明書を取得する コンテナ名を確認する まず、Docker コンテナ名を確認します。 docker ps --format "{{.Names}}" Elasticsearch のコンテナは、利用している Docker Compose やセットアップによって様々な名前になります。例えば次のような名前です: es01 deploy_stack-es01-1 elasticsearch-master-0 elasticsearch Elasticsearch 関連のコンテナ名をメモしておいてください。 以降の手順で使います。 証明書をコピーする コンテナ名が確認できたら(本記事では es01 を例にします)、証明書をコピーします。 docker cp es01:/usr/share/elasticsearch/config/certs/ca/ca.crt ./http_ca.crt 証明書の場所は Docker の設定によって異なります。上記のパスで見つからない場合は、以下で探せます。 docker exec es01 find /usr/share/elasticsearch -name "*.crt" 2>/dev/null Step 3:.env ファイルを作る ~/claude_skills/ フォルダに .env ファイルを作り、接続情報を書きます。 export ELASTICSEARCH_URL=https://localhost:9200 export ELASTICSEARCH_USERNAME=elastic export ELASTICSEARCH_PASSWORD=<your-password> export ELASTICSEARCH_CA_CERT=/Users/<username>/claude_skills/http_ca.crt 注意点が 2 つあります 1. 各行の先頭に export を付ける export がないと、 source .env を実行しても環境変数がスキルのスクリプトまで渡りません。後述する「よくあるエラー」の原因になります。 2. ELASTICSEARCH_CA_CERT は絶対パスで書く ./http_ca.crt のような相対パスにすると、スキルが実行されるディレクトリによっては証明書を見つけられません。 Step 4:接続を確認する .env ファイルが正しく書けているか、curl で確認します。 source ~/claude_skills/.env && curl --cacert "$ELASTICSEARCH_CA_CERT" \ -u "$ELASTICSEARCH_USERNAME:$ELASTICSEARCH_PASSWORD" \ "$ELASTICSEARCH_URL/_security/_authenticate" 成功すると、以下のようなレスポンスが返ります。 { "username": "elastic", "roles": ["superuser"], "authentication_type": "realm" } Step 5:Agent Skills をインストールする ~/claude_skills/ フォルダで以下のコマンドを実行します。 npx skills add elastic/agent-skills -a claude-code \ -s elasticsearch-authn \ -s elasticsearch-esql \ --yes フラグの意味 GitHub リポジトリに記載されているフラグの一覧です。 フラグ 説明 -a, --agent インストール先のエージェントを指定(例: -a claude-code ) -s, --skill スキル名を指定してインストール(例: -s elasticsearch-esql ) -g, --global プロジェクトではなくホームディレクトリにインストール -y, --yes 確認プロンプトをスキップ --all 全スキルを全エージェントにインストール --list インストールせずにスキル一覧を表示 --yes を付けると、「インストールしますか?」という確認が自動的にスキップされます。 出典: elastic/agent-skills GitHub Repository なぜこの 2 つから始めるのか GitHub のリポジトリには次のように書かれています。 原文(英語): “Install the cloud and elasticsearch auth skills — most other skills depend on them — then add only the skills relevant to your workflow.” 日本語訳: cloud スキルと elasticsearch auth スキルをインストールし(多くのスキルがこれらに依存しています)、それからワークフローに関連するスキルだけを追加してください。 まず認証スキルを入れ、その上に必要なスキルを追加していくのが推奨の順序です。 インストール後の確認 スキルは Claude Code を起動したプロジェクトフォルダの .claude/skills/ に配置されます。 ls ~/claude_skills/.claude/skills/ # elasticsearch-authn/ elasticsearch-esql/ Step 6:Claude Code を起動して接続を確認する .env ファイルと同じフォルダで Claude Code を起動します。 cd ~/claude_skills claude 起動したら、チャットに入力します。 .env ファイルを読み込んで、Elasticsearch に接続し、利用可能なインデックスの一覧を表示してください。 成功すると、Claude Code がインデックスの一覧を取得して表示します。 Step 7:使用例 1 — ES|QL でデータを分析する Kibana のサンプルデータを使って、ES|QL クエリを試してみましょう。 Kibana( http://localhost:5601 )の「Add data」メニューから eCommerce サンプルデータをまだ追加していない場合は、先に追加してください。 カテゴリ別の売上集計 チャットに入力します。 kibana_sample_data_ecommerce インデックスを使って、 カテゴリ(category)別の売上合計(taxful_total_price)を 高い順に並べた ES|QL クエリを実行してください。 elasticsearch-esql スキルが起動し、インデックスのフィールド構造を確認してから、正しい ES|QL 構文でクエリを生成・実行します。 実行された ES|QL クエリ: FROM kibana_sample_data_ecommerce | STATS total_sales = SUM(taxful_total_price) BY category | SORT total_sales DESC Step 8:使用例 2 — ログを調査する 次は kibana_sample_data_logs インデックスを使ったログ調査です。Kibana の「Add data」から Logs サンプルデータを追加してから試してください。 まず、 observability-logs-search スキルを追加します。 npx skills add elastic/agent-skills -a claude-code \ -s observability-logs-search --yes スキル追加後、Claude Code のチャットに入力します。 kibana_sample_data_logs インデックスで、 直近のログから最もバイト転送量が多いリクエストを 上位 5 件表示してください。 Elastic Observability Labs のブログには、このスキルの設計について次のように書かれています。 原文(英語): “The key shift is that the request is outcome-first. The skill captures implementation details such as API order, field expectations, and verification steps.” 日本語訳: 重要な変化は、リクエストが「結果から始まる」点です。スキルは、API の呼び出し順序、フィールドの期待値、検証ステップなどの実装の詳細をカバーします。 つまり、「どの API を呼ぶか」「どのフィールドを使うか」はスキルが判断します。ユーザーは「何を知りたいか」を自然言語で伝えるだけです。 出典: Elasticsearch Labs — Agent Skills for Elastic Observability よくあるエラーと解決方法 エラー 1:.env が見つからない (eval):source:1: no such file or directory: .env 原因: Claude Code が .env を相対パスで探したが、実行時のカレントディレクトリが異なる。 解決方法: .env の読み込みに絶対パスを使う。 source /Users/<username>/claude_skills/.env または、 .env があるフォルダで Claude Code を起動する。 エラー 2:Elasticsearch に接続できない Set one of these environment variable combinations: 1. ELASTICSEARCH_CLOUD_ID + ELASTICSEARCH_API_KEY 2. ELASTICSEARCH_URL + ELASTICSEARCH_API_KEY 3. ELASTICSEARCH_URL + ELASTICSEARCH_USERNAME + ELASTICSEARCH_PASSWORD 原因: .env ファイルの各行に export が付いていないため、環境変数がスキルのスクリプトに渡されていない。 解決方法: .env の各行の先頭に export を追加する。 # NG ELASTICSEARCH_URL=https://localhost:9200 # OK export ELASTICSEARCH_URL=https://localhost:9200 エラー 3:npm パッケージが見つからない Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@elastic/elasticsearch' 原因: スキルの Node.js スクリプトが必要とするパッケージがインストールされていない。 解決方法: スキルのフォルダで npm install を実行する。Claude Code は自動で対処することもあります。 cd .claude/skills/elasticsearch-esql && npm install 互換性についての注意:動かなかった例 現時点では、Agent Skills は Elastic Cloud Serverless との互換性を最大化 して設計されています。 原文(英語): “This initial technical preview release focuses on skills with maximum compatibility for Elastic Cloud Serverless” 日本語訳: この最初のテクニカルプレビューリリースは、Elastic Cloud Serverless との互換性を最大化することに重点を置いています。 出典: Elasticsearch Labs — Agent Skills for Elastic ローカル Elasticsearch 9.x では、一部のスキルが動作しない場合があります。本記事の検証でも実際にエラーが発生したので、共有します。 実例:kibana-dashboards スキル 以下のコマンドで kibana-dashboards スキルをインストールし、Claude Code に Kibana ダッシュボードの作成を依頼しました。 npx skills add elastic/agent-skills -a claude-code \ -s kibana-dashboards --yes ダッシュボード作成を依頼すると、以下のエラーが発生しました: Error: Invalid version number. Received "2023-10-31", expected a string containing _only_ a finite, whole number greater than 0. スキルのスクリプトが、バージョン番号として "2023-10-31" (日付形式)を送信していますが、Elasticsearch 9.x は整数のバージョン番号を期待しています。 この挙動はローカルの Elasticsearch 9.x 特有のもので、Elastic Cloud Serverless では動作する可能性があります。 Part 3 で Serverless での検証結果を紹介します。 スキルを追加する ワークフローに合わせて、後からスキルを追加できます。 npx skills add elastic/agent-skills -a claude-code \ -s <スキル名> --yes インストール済みのスキルを確認するには: npx skills list スキルを追加した後、Claude Code の 再起動は不要 です。スキルはチャットから自然言語で依頼するだけで、自動的に読み込まれます。 出典: Elastic 公式ドキュメント — AI agent skills for Elastic まとめ 本記事では、ローカル Elasticsearch と Claude Code をつなぐ手順を、実際に動作確認しながら紹介しました。 接続に必要なもの 項目 内容 CA 証明書 Elasticsearch の HTTPS 通信を信頼するために必要(Docker コンテナから docker cp で取得) .env ファイル 4 つの環境変数( export 付き、絶対パス) 起動場所 .env と同じフォルダで Claude Code を起動 スキルの場所 起動したフォルダの .claude/skills/ (プロジェクトローカル) 動作確認できたスキル elasticsearch-authn :認証 elasticsearch-esql :ES|QL クエリ observability-logs-search :ログ調査 動作しなかったスキル(ローカル Elasticsearch 9.x) kibana-dashboards :バージョン番号の互換性エラー Part 3 では: Elastic Cloud Serverless を使って、ローカルで動かなかったスキルを含む、より幅広い検証結果を紹介します。 MCP Apps を使った Elasticsearch との連携方法を紹介します。お楽しみに! 参考資料 Elastic 公式ドキュメント AI agent skills for Elastic | Elastic Docs Elasticsearch Labs ブログ Agent Skills for Elastic: Turn AI agents into Elastic experts Agent Skills for Elastic Observability GitHub リポジトリ elastic/agent-skills The post Claude Code で Elastic Agent Skills を試す、 Part 2 ローカル接続編 first appeared on Elastic Portal .














