Skip to main content
Glama
andresthor

Command-Line MCP Server

by andresthor

execute_read_command

Execute read-only Unix/macOS terminal commands like ls, cat, and grep through a controlled interface, returning output and status for safe command execution.

Instructions

Execute a read-only Unix/macOS terminal command (ls, cat, grep, etc.).

Args: command: The read-only command to execute session_id: Optional session ID for permission management

Returns: A dictionary with command output and status

Input Schema

NameRequiredDescriptionDefault
commandYes
session_idNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It discloses that commands are 'read-only' and mentions 'permission management' for session_id, but lacks details on safety (e.g., what commands are allowed, error handling, rate limits, or system impact). For a tool executing terminal commands with zero annotation coverage, this is insufficient to ensure safe and correct usage.

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 appropriately sized and front-loaded, starting with the core purpose followed by parameter explanations. Every sentence adds value, but the structure could be slightly improved by integrating parameter details more seamlessly rather than as separate 'Args' and 'Returns' sections.

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

Completeness4/5

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

Given the tool's complexity (executing terminal commands), no annotations, and an output schema exists (implied by 'Returns'), the description is reasonably complete. It covers purpose, parameters, and return value at a high level. However, it lacks depth on behavioral aspects like security or error handling, which could be critical for this type of tool.

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 0%, so the description must compensate. It adds meaning by explaining 'command' as 'The read-only command to execute' and 'session_id' as 'Optional session ID for permission management', which clarifies their roles beyond the schema's basic types. However, it doesn't provide detailed syntax, constraints, or examples for parameters, leaving gaps in understanding.

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 clearly states the tool's purpose: 'Execute a read-only Unix/macOS terminal command (ls, cat, grep, etc.)'. It specifies the verb ('Execute'), resource ('read-only Unix/macOS terminal command'), and provides examples. However, it doesn't explicitly distinguish it from sibling tools like 'execute_command' (which may not be read-only), so it doesn't reach a perfect 5.

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 by specifying 'read-only' commands and examples like 'ls, cat, grep', but it doesn't explicitly state when to use this tool versus alternatives such as 'execute_command' or other siblings. There's no guidance on exclusions or prerequisites, leaving some ambiguity for the agent.

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