Skip to main content
Glama
abuzo

victorialogs-mcp

by abuzo

victorialogs.search_logs

Read-onlyIdempotent

Search logs using LogsQL with configurable time windows, filters, row limits, and offset pagination for investigating VictoriaLogs data.

Instructions

Search VictoriaLogs with LogsQL. Default: last hour, 150 latest rows; max 500. Use rangeSec or paired ISO start/end (end exclusive). filter is a separate LogsQL extra_filters constraint. offset paginates the selected window; keep start/end fixed across pages.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endNo
limitNo
queryYes
startNo
filterNo
offsetNo
rangeSecNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive/openWorld, so the safety profile is covered. The description adds real behavioral context beyond that: default window of last hour, 150 rows with a 500 cap, end-exclusive time bounds, and the stability requirement for paging. It stops short of describing result shape or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense and front-loaded: query language first, then defaults, then time-window options, then filtering and pagination. Every clause carries information, though the middle-clause run-on is slightly compressed for readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should sketch what search results look like (row/log shape, ordering), but it never does. Parameter and pagination behavior are well covered, so the definition is adequate but leaves the return contract implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the burden and largely does: it explains rangeSec vs paired ISO start/end (end exclusive), that filter is a separate LogsQL extra_filters constraint distinct from query, and how limit/offset behave. Only minor gaps remain (e.g., no explicit statement of units beyond default values).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Search') and resource ('VictoriaLogs') plus the query language ('LogsQL'), so the operation is unambiguous. It does not, however, differentiate itself from close siblings such as search_stream or search_uuid.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives practical operating guidance for pagination ('offset paginates the selected window; keep start/end fixed across pages'), which implies the intended usage pattern. It never states when to prefer this tool over siblings like search_stream, hits, or query_stats, so alternative selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.