OpenSearch Skills
This is the top-level skill for OpenSearch. It contains three category skills that can also be installed and used independently:
| Category | Skill | Install individually |
|---|---|---|
| search | opensearch-launchpad | npx skills add opensearch-project/opensearch-agent-skills@opensearch-launchpad --full-depth |
| observability | log-analytics | npx skills add opensearch-project/opensearch-agent-skills@log-analytics --full-depth |
| observability | trace-analytics | npx skills add opensearch-project/opensearch-agent-skills@trace-analytics --full-depth |
| cloud | aws-setup | npx skills add opensearch-project/opensearch-agent-skills@aws-setup --full-depth |
Routing
Route to the right skill based on user intent:
| User Intent | Skill |
|---|---|
| Build a search app, set up an index, choose a search strategy | opensearch-launchpad |
| Analyze logs, query with PPL, discover error patterns | log-analytics |
| Investigate traces, debug spans, analyze service maps | trace-analytics |
| Deploy to AWS, provision a domain or collection | aws-setup |
| General OpenSearch question | Search docs first, then route to the relevant skill |
If the user's intent spans multiple skills (e.g., "build a search app and deploy it to AWS"), start with the appropriate skill and transition to the next when ready.
Shared Resources
All skills share these resources:
- Scripts:
scripts/opensearch_ops.py— CLI for all OpenSearch operations - Docker bootstrap:
scripts/start_opensearch.sh— Start a local OpenSearch cluster - CLI Reference: cli-reference.md — Full command reference with examples
- Search Builder UI:
scripts/ui/— React frontend served on port 8765
bash scripts/start_opensearch.sh
uv run python scripts/opensearch_ops.py <command> [options]
uv run python scripts/opensearch_ops.py --helpOptional MCP Servers
{
"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" }
}
}
}Auto-Installing Missing MCP Servers
Before using any MCP tool, check if the server is available. If missing:
- Locate the MCP config file:
- 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
- Read the existing config (or start with
{"mcpServers": {}}). - Merge in the missing server entry. Do not overwrite existing entries.
- Save and inform the user to restart or reconnect MCP servers.
Answering OpenSearch Knowledge Questions
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