Skip to main content
Glama

session_log

Read-only

Return the log records for a Veeam session to diagnose failures and avoid rerunning jobs blindly. Check truncation before concluding no errors.

Instructions

[READ] Return the log records (events) of one session.

Use to see why a session failed instead of re-running the job blind. Returns {records, returned, totalRecords, truncated}: truncated is true when the server holds more records than it returned (the endpoint cannot be paged), null when it did not report a total. Do not conclude "no error in the log" from a truncated or null-truncated result.

Args: session_id: Veeam session id (see session_list). target: Veeam target name from config.

Input Schema

NameRequiredDescriptionDefault
targetNo
session_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.10.0
  2. Removedv0.8.0
  3. First observedv0.2.0

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation it discloses the full return envelope ({records, returned, totalRecords, truncated}), the meaning of truncated=true vs null, the fact that the endpoint cannot be paged, and the correct inferential caveat. That is substantial behavioral context an agent cannot get from annotations or schema.

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?

Front-loaded with the [READ] marker and purpose, then the return contract, then the caveat, then args – a sensible ordering with little waste. The Args block partially duplicates schema field names, keeping it just below maximally tight.

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

Completeness5/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 fully specifies the return shape and truncation semantics, and the read-only safety profile is covered by annotations. Nothing needed to call it correctly or interpret its result is missing.

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 does document both parameters: session_id as a Veeam session id with a pointer to session_list, and target as a Veeam target name from config. It adds provenance but no format/validation details, so a 4 rather than 5.

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

Purpose5/5

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

The description opens with a specific verb and resource: return the log records (events) of one session. The [READ] tag and the phrase 'log records (events)' cleanly separate this tool from sibling metadata readers like session_get or session_list, and it points to session_list for obtaining the session_id.

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

Usage Guidelines4/5

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

It gives a concrete usage scenario ('see why a session failed instead of re-running the job blind') and a caution about misinterpreting truncated results, plus a pointer to session_list for the id. It stops short of naming explicit alternatives such as session_get or job_failure_rca for broader diagnosis.

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