VictoriaMetrics skills: metrics, logs and traces
VictoriaMetrics skills
Fourteen VictoriaMetrics skills: PromQL and LogsQL, traces, cardinality, anomalies and flag lookup in the documentation
- 63 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- The agent calls monitoring APIs through curl and can read metrics, logs and traces of your infrastructure
- The alertmanager-query skill creates and removes silences, so a write-capable token can mute a production alert
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/victoriametrics-skillsDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The agent calls monitoring APIs through curl and can read metrics, logs and traces of your infrastructure
- The alertmanager-query skill creates and removes silences, so a write-capable token can mute a production alert
This is third-party code. Review the repository files before installing.
What it does
The official set from the VictoriaMetrics team splits into four plugins. The query plugin sends PromQL and MetricsQL queries to VictoriaMetrics, LogsQL to VictoriaLogs and trace searches to VictoriaTraces, and also reads Alertmanager state and manages silences. The diagnostics plugin analyzes the JSON trace of a slow query, finds high-cardinality and unused metrics, proposes drop rules and helps design stream aggregation rules for vmagent. It also runs an investigation across metrics, logs and traces together. The vmanomaly plugin works with the anomaly detection service: it checks compatibility, picks a model from real series, audits an existing configuration and estimates resources. The docs plugin checks a command-line flag, an HTTP API path or a query language construct against the published documentation before the agent names it in an answer. The skills call the APIs through curl. The agent takes service addresses from environment variables and reads the token from a curl config file, so it stays out of shell history and the agent log.
Who it is for. SREs and DevOps engineers who run monitoring on VictoriaMetrics and want to work through metrics, logs and traces with an agent.
Good fit when
- A metrics query slowed down in the evening and its JSON trace has to become a readable report
- The storage bill grew and the team does not know which metrics nobody reads
- A Kubernetes pod crash-loops and you want to search metrics, logs and traces together
- A metric with extra labels bloats the database and needs stream aggregation rules in vmagent
- You doubt that a retention flag or API path exists in your version, and the agent checks it in the documentation
Not a fit when
- Monitoring runs on another system such as Datadog or Elastic, since the skills know only the VictoriaMetrics API
- You need Grafana dashboards rather than queries to the storage
- The agent must not touch a production Alertmanager, because the skill can create and remove silences
- Your vmanomaly is older than 1.30, since the API skill targets 1.30 and newer
Example request
Show which alerts are firing now and find the metrics with the highest cardinality over the last hour.Limitations
Service addresses are set with VM_METRICS_URL, VM_LOGS_URL, VM_TRACES_URL, VM_ALERTMANAGER_URL and VM_ANOMALY_URL. The skills call the APIs through curl and jq, so both tools must be installed. Protected installs need a curl config file with 0600 permissions and the VM_CURL_CONFIG variable, and the old VM_AUTH_HEADER is no longer read. The vmanomaly sizing skill is marked experimental and needs version 1.31.0.
How to disable. The /plugin uninstall query@victoriametrics-tools command removes a plugin, and for the others only its name changes. Skills installed through skills are removed with npx skills remove and the skill name.
FAQ
How do I install the VictoriaMetrics skills in Claude Code?
Add the marketplace with /plugin marketplace add VictoriaMetrics/skills and install the plugin you need, for example /plugin install query@victoriametrics-tools. The other route, npx skills add VictoriaMetrics/skills, installs all fourteen skills at once.
How do I pass a token without it leaking into history?
Put the Authorization header in a curl config file with 0600 permissions and set its path in VM_CURL_CONFIG. The skills read the file through curl --config, so the token stays out of the process list and the agent log.
Which skill helps with a slow query?
vm-trace-analyzer from the diagnostics plugin is enough: it parses the query's JSON trace and builds a performance report. The trace comes from a query run with the trace parameter.
Can the agent change data in Alertmanager?
Yes, the alertmanager-query skill creates and removes silences and checks inhibition state. If you only need read access, limit the token on the Alertmanager side.
Do I need to install every plugin at once?
No, each plugin and each skill installs separately. npx skills add VictoriaMetrics/skills --skill victorialogs-query takes a single skill and /plugin install diagnostics@victoriametrics-tools a single plugin.
Discussion
No questions or reviews yet.
Related
SkillsOfficial VictoriaMetrics MCP server: metric queries, rules and alerts, cardinality and built-in documentation for an agent
Official VictoriaLogs MCP server: an agent runs LogsQL queries, browses streams and fields, and searches the embedded docs.
The official Grafana skill set: PromQL, Loki, Tempo, Alloy, k6, dashboards and alerting for Claude Code, Cursor and Codex
Official Datadog skills: monitors, logs, APM, cloud integrations, RUM and LLM observability from inside the agent
Official Dynatrace skills for agents: DQL, traces, logs, Kubernetes, cloud and security work inside Claude Code and Cursor.
Skill configures OpenTelemetry: collectors, sampling, security and telemetry from AI agents, without flooding the context.
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| VictoriaMetrics skills: metrics, logs and traces (this card) | yes | 63 | ||
| Grafana Skills | yes | 309 | the Grafana set for dashboards, Loki, Tempo and k6 rather than the VictoriaMetrics storage | |
| Prometheus MCP Server | no | not required | 525 | an MCP server with PromQL queries to Prometheus, without logs, traces or anomalies |
README in short
The README lists four plugins with their skills, two ways to install, example prompts and the environment variables. A separate section explains passing the token through a curl config file and how to migrate from the old variable.
README badge
Original SKILL.md
---
name: victoriametrics-query
description: >
Query VictoriaMetrics metrics via curl. Use when running PromQL/MetricsQL queries, discovering metrics/labels,
checking alerts and rules, inspecting TSDB status, exporting raw data, checking metric usage statistics,
or debugging relabeling/downsampling/retention configs. Triggers on: metric queries, PromQL, MetricsQL,
label discovery, series exploration, cardinality checks, alert status, recording rules, active/top queries,
export data, metric statistics, relabel debug, downsampling debug, retention debug, flags.
allowed-tools: Bash(curl:*), Bash(jq:*), Bash(head:*)
---
# VictoriaMetrics Metrics Query
Query VictoriaMetrics HTTP API directly via curl. Covers instant/range queries, label/series discovery, alerts, rules, instance diagnostics, raw data export, metric usage statistics, and config debugging tools.
## Environment
```bash
# $VM_METRICS_URL - base URL
# cluster: export VM_METRICS_URL="https://vmselect.example.com/select/0/prometheus"
# single: export VM_METRICS_URL="http://localhost:8428"
# $VM_CURL_CONFIG - curl config file with auth header (set for remote, unset for local)
# Remote: export VM_CURL_CONFIG="$HOME/.config/victoriametrics/curl.conf"
# Local: leave unset (defaults to /dev/null - no auth)
```
## Auth Pattern
All curl commands load auth from a curl config file - works for both remote and local:
```bash
curl -q --config "${VM_CURL_CONFIG:-/dev/null}" -s "$VM_METRICS_URL/api/v1/query?query=up" | jq .
```
When `VM_CURL_CONFIG` is unset, curl reads `/dev/null` and sends no auth header. When set, it must point to a mode-0600 curl config file containing `header = "Authorization: Bearer <token>"`. Never print its contents.
## Core Endpoints
### Instant Query
```bash
# Query at current time
curl -q --config "${VM_CURL_CONFIG:-/dev/null}" -s \
"$VM_METRICS_URL/api/v1/query?query=up" | jq .