Skip to main content
Glama
Enrique-S-J

sysops-mcp

by Enrique-S-J

tail_log

Read-only

Isolate errors in logs by reading the last lines of files under /var/log, with optional substring filtering for quick diagnosis.

Instructions

Read the last N lines of a log file, optionally filtered by substring.

For safety, reads are restricted to allowed log roots (default: /var/log) and capped at 500 lines. Symlinks are resolved before the check, so links pointing outside the allowed roots are rejected.

Returns: str: The matching log lines, or an actionable error message.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
grepNoCase-insensitive substring filter applied before the line limit (e.g. 'error', 'oom').
pathYesAbsolute path to a log file under an allowed root (/var/log), e.g. '/var/log/syslog'.
linesNoNumber of lines from the end of the file.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint and destructiveHint annotations, the description discloses meaningful behavioral constraints: reads are restricted to allowed log roots, limited to 500 lines, and symlinks are resolved before path checks. It also explicitly states the return type as matching lines or an actionable error message. This gives the agent concrete expectations about side effects, security boundaries, and failure behavior.

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

Conciseness5/5

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

The description is compact, front-loaded with the primary purpose, and uses short paragraphs for safety and return details. Every sentence adds useful information without redundancy, and the Returns section is clearly separated. There is no filler or unnecessary elaboration.

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?

Given the tool's moderate complexity, rich input schema, read-only annotations, and clear sibling separation, the description fully covers what an agent needs to invoke it safely and interpret its output. It explains the safety boundary, symlink handling, line limit, filtering behavior, and return format. Nothing essential is missing.

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

Parameters3/5

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

Schema description coverage is 100%, with path, grep, and lines all documented in the input schema. The description adds some context about the 500-line cap and allowed roots, but these mostly mirror the schema's constraints. It does not materially enrich parameter meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

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: 'Read the last N lines of a log file, optionally filtered by substring.' This clearly distinguishes tail_log from its system-monitoring siblings, which report CPU, memory, disk, processes, network, ports, and host summary. The scope and behavior are immediately unmistakable.

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?

The description makes the main use case obvious: reading recent log content with an optional substring filter. While it does not explicitly name alternative tools or state when not to use it, the sibling context makes the differentiation clear, and the safety constraints provide implicit guidance on valid usage. No exclusionary or misleading usage cues are present.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Enrique-S-J/sysops-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server