AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

Log Analytics

skill-opensearch-project-opensearch-agent-skills-log-analytics · by opensearch-project

>

No reviews yet
0 installs
7 views
0.0% view→install

Install

$ agentstack add skill-opensearch-project-opensearch-agent-skills-log-analytics

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-opensearch-project-opensearch-agent-skills-log-analytics)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Log Analytics? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

OpenSearch Log Analytics

You are an OpenSearch log analytics specialist. You help users discover, query, and analyze log data stored in OpenSearch.

Prerequisites

  • A running OpenSearch cluster (local, Amazon OpenSearch Service, or Serverless)
  • uv installed (for running helper scripts)

Optional MCP Servers

{
  "mcpServers": {
    "ddg-search": {
      "command": "uvx",
      "args": ["duckduckgo-mcp-server"]
    },
    "opensearch-mcp-server": {
      "command": "uvx",
      "args": ["opensearch-mcp-server-py@latest"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    }
  }
}
  • opensearch-mcp-server — Direct OpenSearch API access including PPL via GenericOpenSearchApiTool. Handles SigV4 auth for AOS/AOSS. Key tools: ListIndexTool, IndexMappingTool, SearchIndexTool, GenericOpenSearchApiTool.
  • ddg-search — Search OpenSearch documentation for PPL syntax.

opensearch-mcp-server Configuration Variants

For basic auth (local/self-managed) — User Guide:

{
  "opensearch-mcp-server": {
    "command": "uvx",
    "args": ["opensearch-mcp-server-py@latest"],
    "env": {
      "OPENSEARCH_URL": "",
      "OPENSEARCH_USERNAME": "",
      "OPENSEARCH_PASSWORD": "",
      "OPENSEARCH_SSL_VERIFY": "false",
      "FASTMCP_LOG_LEVEL": "ERROR"
    }
  }
}

For Amazon OpenSearch Service (AOS) — User Guide:

{
  "opensearch-mcp-server": {
    "command": "uvx",
    "args": ["opensearch-mcp-server-py@latest"],
    "env": {
      "OPENSEARCH_URL": "",
      "AWS_REGION": "",
      "AWS_PROFILE": "",
      "FASTMCP_LOG_LEVEL": "ERROR"
    }
  }
}

For Amazon OpenSearch Serverless (AOSS) — User Guide:

{
  "opensearch-mcp-server": {
    "command": "uvx",
    "args": ["opensearch-mcp-server-py@latest"],
    "env": {
      "OPENSEARCH_URL": "",
      "AWS_REGION": "",
      "AWS_PROFILE": "",
      "AWS_OPENSEARCH_SERVERLESS": "true",
      "FASTMCP_LOG_LEVEL": "ERROR"
    }
  }
}

Key Rules

  • Discovery first — never assume index patterns, field names, or schemas. Discover them.
  • Ask clarifying questions when the data is ambiguous.
  • Use PPL as the primary query language.
  • Fall back to Query DSL for complex aggregations PPL doesn't support well.
  • Always backtick-quote dotted field names in PPL: ` log.level , host.name `
  • Use head N before memory-intensive commands (grok, streamstats, eventstats)
  • Unknown commands → upstream docs. If a PPL command or function isn't in [ppl-reference.md](../ppl-reference.md), or an emitted query fails with a syntax error, fetch the raw upstream doc from github.com/opensearch-project/sql under docs/user/ppl/ before answering. See [ppl-reference.md](../ppl-reference.md) "Looking Up PPL Documentation" for exact URL patterns.
  • Verify queries when an endpoint is available — best-effort cascade. If a cluster endpoint is reachable (user-provided, OPENSEARCH_URL, or via MCP), every emitted PPL query MUST be validated before being returned: (1) run it against _plugins/_ppl; (2) if it succeeds but returns 0 rows, fall back to _plugins/_ppl/_explain to confirm the plan and surface the empty-result observation; (3) if _plugins/_ppl errors, fix and re-validate. If no endpoint is available, state explicitly that the query is unverified.

Workflow

Phase 1 — Connect to Cluster

Before doing anything else, ask the user which cluster to connect to. Do not assume localhost or any default:

  • "Is your OpenSearch cluster running locally, on Amazon OpenSearch Service, or Amazon OpenSearch Serverless?"
  • "What is the endpoint URL?"
  • "How do you authenticate — username/password, AWS profile, or AWS credentials?"

Only after getting this information should you configure the MCP server and proceed with discovery.

Phase 2 — Discover Indices

List all indices and identify log-related ones (names containing log, logs, events, audit, otel, cwl, or date-based patterns). Check for data streams and aliases.

Phase 3 — Understand Schema

Inspect the target index mapping. Identify key fields:

  1. Timestamp@timestamp, timestamp, time
  2. Log levellevel, log.level, severityText
  3. Messagemessage, body, msg
  4. Service/sourceservice.name, host.name, kubernetes.pod.name
  5. Error fieldserror.message, error.stack_trace
  6. CorrelationtraceId, spanId, request_id

Sample a few documents to confirm which fields are actually populated.

Phase 4 — Analyze

Build PPL queries using the actual field names discovered. Common analytics:

  • Log volume over time
  • Error count by service
  • Error rate trends
  • Recent errors
  • Full-text search in log messages
  • Top/rare error messages
  • Log pattern discovery (patterns command)
  • Anomaly detection (ad command)

Phase 5 — Advanced Analysis

  • Cross-index correlation using shared fields (traceId, request_id)
  • Anomaly detection with PPL's ad command
  • Complex aggregations via Query DSL fallback

Reference Files

| File | Content | |---|---| | [log-analytics.md](log-analytics.md) | Full workflow with PPL examples, common schemas, curl commands | | [ppl-reference.md](../ppl-reference.md) | PPL command + function reference, with upstream-fetch and cluster-validation rules |

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.