mcpField
O
opensearch-skills

opensearch-skills

github.com/opensearch-projectデータ・データベース62580 回インストール10 週間前に更新
リポジトリ

opensearch-skills について

検索アプリの構築、オブザーバビリティデータの分析、サービスのデプロイ、文書処理を行う OpenSearch ユーザー向けのスキル集です。依頼内容に応じて専門スキルへ振り分け、共通スクリプトとドキュメント検索の手順を提供します。

主な機能

  1. 017つのスキルへの依頼振り分け
  2. 02検索アプリとインデックスのガイド
  3. 03ログ・トレース分析の手順
  4. 04AWS・Aivenへのデプロイガイド
  5. 05文書処理とデータ取り込み
  6. 06共通CLIとドキュメント検索

活用シーン

  1. 01検索戦略の選択とインデックス設定
  2. 02ログのエラーパターン発見やトレース調査
  3. 03AWSまたはAivenでのOpenSearch構築
  4. 04取り込み用の文書チャンク作成

MCP 対応

READMEには任意のMCPサーバーと、利用可能か確認して設定ファイルに不足分を追加する手順が記載されています。設定変更後にサーバーを再起動または再接続する方法も説明されています。

インストール

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

$npx skills add https://github.com/opensearch-project/opensearch-agent-skills --skill opensearch-skills

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

cli-reference.md
cloud/aiven-setup/
aiven-01-provision.md
aiven-02-deploy-search.md
reference.md
cloud/aws-setup/
reference.md
cloud/aws-setup/aos/
domain-01-provision.md
domain-02-deploy-search.md
domain-03-agentic-setup.md
cloud/aws-setup/aoss/
serverless-02-deploy-search.md
serverless-04-agentic-setup.md
cloud/aws-setup/aoss/aoss-nextgen-provisioning/
ADVANCED.md
DEPROVISION.md
ERRORS.md
cloud/managed-ingestion-service/
iam-setup.md
ingest/document-processing/
document_processing_guide.md
observability/
ppl-reference.md
observability/log-analytics/
log-analytics.md
observability/trace-analytics/
traces.md
scripts/
eval_documents.py
scripts/lib/
__init__.py
client.py
eval_document_processing.py
evaluate.py
feedback.py
ingest.py
operations.py
quality.py
samples.py
search.py
ui.py

詳細

OpenSearch スキル

これは OpenSearch のトップレベルスキルです。個別にインストールして使用できる、4 つのカテゴリ別スキルが含まれています。

カテゴリスキル個別にインストール
検索opensearch-launchpadnpx skills add opensearch-project/opensearch-agent-skills@opensearch-launchpad --full-depth
可観測性log-analyticsnpx skills add opensearch-project/opensearch-agent-skills@log-analytics --full-depth
可観測性trace-analyticsnpx skills add opensearch-project/opensearch-agent-skills@trace-analytics --full-depth
クラウドaws-setupnpx skills add opensearch-project/opensearch-agent-skills@aws-setup --full-depth
クラウドaiven-setupnpx skills add opensearch-project/opensearch-agent-skills@aiven-setup --full-depth
取り込みdocument-processingnpx skills add opensearch-project/opensearch-agent-skills@document-processing --full-depth
クラウドmanaged-ingestion-servicenpx skills add opensearch-project/opensearch-agent-skills@managed-ingestion-service --full-depth

振り分け

ユーザーの意図に基づいて、適切なスキルに振り分けます。

ユーザーの意図スキル
検索アプリを構築する、インデックスを設定する、検索戦略を選ぶopensearch-launchpad
ログを分析する、PPL でクエリを実行する、エラーパターンを見つけるlog-analytics
トレースを調査する、スパンをデバッグする、サービスマップを分析するtrace-analytics
AWS にデプロイする、ドメインまたはコレクションをプロビジョニングするaws-setup
Aiven にデプロイする、マネージド OpenSearch サービスをプロビジョニングするaiven-setup
ドキュメントをチャンクに処理する(PDF/DOCX → JSONL)document-processing
OSIS を介してチャンクを大規模に取り込む、S3 から AOS/AOSS へmanaged-ingestion-service
OpenSearch に関する一般的な質問まずドキュメントを検索し、その後、関連するスキルに振り分けます

ユーザーの意図が複数のスキルにまたがる場合(例:「検索アプリを構築して Aiven にデプロイする」)、適切なスキルから開始し、準備ができたら次のスキルに移ります。

フィードバックの収集(必須の動作)

このルールは、このコレクション内のすべてのスキル(opensearch-launchpad、log-analytics、trace-analytics、aws-setup、aiven-setup、document-processing、managed-ingestion-service)に適用されます。どのスキルがアクティブでも、これらのルールに必ず従ってください。

すべてのやり取りで、先回りしてフィードバックを収集する必要があります。これは任意ではありません。後回しにせず、ワークフローの重要な一部として扱ってください。

ルール
  1. 継続的に確認する — 会話の最後だけでなく、会話全体を通じて、失敗、混乱、満たされていないニーズに注意します。
  2. 失敗したらすぐに提案する — コマンドでエラーが発生した場合や手順がうまくいかない場合は、トラブルシューティングを始める前に、フィードバックを記録することをすぐに提案します。
  3. 不確かな場合に提案する — どう進めるべきかわからない場合や、スキルがユーザーのリクエストに対応していない場合は、潜在的な不足として伝え、フィードバックの送信を提案します。
  4. 自然な区切りで尋ねる — 大きなフェーズを完了した後(最後だけでなく)に、「期待どおりに動いていますか? ここまでで何か不便な点はありますか?」と尋ねます。
  5. 最後に必ず尋ねる — ユーザーが完了したと伝えたとき、またはワークフローが完了したときに、1〜5 の評価を尋ねます。
  6. 同意なしに送信しない — プレビューを表示し、明示的な「はい」を得ます。
トリガー
条件対応
コマンドがゼロ以外の終了コードを返す、またはエラーになる→ ただちに:「失敗しました。この内容をフィードバックとして記録してもよいですか?」
ユーザーが「望んでいたものと違います」/「分かりにくいです」と言う、または不満を表す→ 「使いづらさがあったようですね。何が問題だったか記録してもよいですか?」
ユーザーが実行できないことを依頼する→ 「これはまだサポートされていません。機能の不足として報告してもよいですか?」
回避策が必要になる(もっと簡単であるべきこと)→ 「本来より手順が多かったですね。使いづらさとして報告してもよいですか?」
主要なフェーズが完了する→ 「ここまでの進み具合はいかがですか?問題はありますか?」
ユーザーが「完了」と言う、またはワークフローが終了する→ 「全体的な使い心地はいかがでしたか?(1~5)」
送信方法

(Python スクリプトの実行に)uv のインストールが必要です

  1. フィードバック(種類+状況)を作成します。
  2. プレビューをユーザーに表示します。
  3. 次のように尋ねます:「この匿名のフィードバックを送信してもよいですか?」
  4. 同意を得た場合:
uv run python scripts/opensearch_ops.py submit-feedback \
  --type <failure|gap|friction|success> \
  --skill <skill-name> \
  --context "<error message, command, what happened>" \
  --comment "<user's words>" \
  --rating "<1-5, for success only>"
フィードバックの種類
  • failure — コマンドまたは手順でエラーが発生した
  • gap — ユーザーが、このスキルではサポートされていない機能を必要としている
  • friction — ワークフローが分かりにくい、遅い、または回避策が必要だった
  • success — ワークフローが完了し、ユーザーが満足した

共有リソース

すべてのスキルで次のリソースを共有します。

  • スクリプト:scripts/opensearch_ops.py — すべての OpenSearch 操作用の CLI
  • Docker の起動:scripts/start_opensearch.sh — ローカルの OpenSearch クラスターを起動します
  • CLI リファレンス:cli-reference.md — 例を含むコマンドの完全なリファレンス
  • 検索ビルダー UI:scripts/ui/ — ポート 8765 で提供される React フロントエンド
bash scripts/start_opensearch.sh
uv run python scripts/opensearch_ops.py <command> [options]
uv run python scripts/opensearch_ops.py --help

オプションの MCP サーバー

{
  "mcpServers": {
    "ddg-search": {
      "command": "uvx",
      "args": ["duckduckgo-mcp-server"]
    },
    "awslabs.aws-api-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.aws-api-mcp-server@latest"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    },
    "aws-knowledge-mcp-server": {
      "command": "uvx",
      "args": ["fastmcp", "run", "https://knowledge-mcp.global.api.aws"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    },
    "opensearch-mcp-server": {
      "command": "uvx",
      "args": ["opensearch-mcp-server-py@latest"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    }
  }
}

MCP サーバーの不足分を自動インストールする

MCP ツールを使用する前に、サーバーが利用可能かどうかを確認します。見つからない場合は、次の手順に従います。

  1. MCP 設定ファイルを探します。
    • Kiro:.kiro/settings/mcp.json
    • Cursor:.cursor/mcp.json
    • Claude Code:.mcp.json
    • VS Code(Copilot):.vscode/mcp.json
    • Windsurf:~/.codeium/windsurf/mcp_config.json
  2. 既存の設定を読み込みます(または {"mcpServers": {}} から始めます)。
  3. 不足しているサーバーのエントリーをマージします。既存のエントリーを上書きしないでください。
  4. 保存し、MCP サーバーを再起動または再接続するようユーザーに伝えます。

OpenSearch に関する知識の質問への回答

uv run python scripts/opensearch_ops.py search-docs --query "<your query>"
uv run python scripts/opensearch_ops.py search-docs --query "<query>" --site docs.aws.amazon.com

コメント