Skip to main content
Glama
votsie

ssh-mcp

by votsie

ssh_file_read

Read a text file from a remote server over SSH. Truncates oversized files to prevent memory overload, returning the first portion of content.

Instructions

Прочитать текстовый файл с сервера. Большие файлы обрезаются.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
serverYes
max_bytesNo
remote_pathYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses a key behavioral trait: large files are truncated ('Большие файлы обрезаются'). However, it doesn't mention whether the operation is read-only (safe), whether it requires an active connection, or what happens if the file doesn't exist. The truncation behavior is useful but incomplete for a tool with zero annotation coverage.

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?

The description is very short: two sentences. The first sentence states the purpose, and the second adds a critical behavioral note. It's front-loaded and efficient, though it could be slightly more informative without becoming verbose.

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

Completeness2/5

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

For a tool with no annotations, no output schema, and 0% schema description coverage, the description is incomplete. It doesn't explain the return format, error behavior, or how max_bytes interacts with truncation. An agent would need to infer parameter semantics from names alone, which is risky for a file-reading tool.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It mentions 'text file' and 'server' but doesn't explain the parameters: server, remote_path, or max_bytes. The truncation note hints at max_bytes but doesn't explicitly connect it. With 3 parameters and zero schema descriptions, the description adds minimal semantic value beyond the parameter names.

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?

The description states a specific verb and resource: 'Прочитать текстовый файл с сервера' (read a text file from the server). It distinguishes itself from siblings like ssh_file_write, ssh_upload, ssh_download, and ssh_list_dir by focusing on reading a file's contents. However, it doesn't explicitly name a sibling alternative, so it doesn't fully differentiate from tools like ssh_download or ssh_shell_read.

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?

The description implies usage: use this when you need to read a text file from a server. It doesn't explicitly state when not to use it or mention alternatives like ssh_download for binary files or ssh_shell_read for command output. The truncation note ('Большие файлы обрезаются') gives a hint about limitations but no explicit routing guidance.

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