Loki: List Series
loki_list_seriesList the distinct label sets (streams) matching a Loki selector and hoist shared labels into common_labels, so you can see which pods and containers a selector covers before querying.
Instructions
List the streams (distinct label sets) matching a selector, with the labels every one shares hoisted into common_labels. Use it to see what a selector actually covers — which pods, containers and stdout/stderr streams — before querying it. For how much each one logs, use loki_get_volume instead.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"selector": "<selector>"
},
"name": "loki_list_series"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Range end: now, now-1h, -30m, an RFC3339 timestamp (2026-01-31T12:00:00Z, nanosecond fractions kept) or unix seconds/nanoseconds. Defaults to now. | |
| limit | No | Maximum streams to return (1-1000). Defaults to 50. | |
| start | No | Range start: now, now-1h, -30m, an RFC3339 timestamp (2026-01-31T12:00:00Z, nanosecond fractions kept) or unix seconds/nanoseconds. Defaults to 6 hours before end. | |
| selector | Yes | A stream selector, e.g. `{namespace="payments", app="api"}`. Label matchers only: no line filters or parsers. At least one matcher must not match the empty string: `{app=~".+"}` works, `{app=~".*"}` and `{}` are rejected. | |
| hide_labels | No | Labels to leave out. Defaults to ["filename"] (a /var/log/pods/... path that repeats pod and container); [] keeps everything. |