Skip to main content
Glama

service_restart

Restart a TrueNAS system service with dry-run preview; requires explicit confirmation for SSH to avoid disrupting remote access.

Instructions

[WRITE] Restart a system service (e.g. 'smb', 'nfs'). Pass dry_run=True to preview.

Captures the prior service state for the audit record; declares no undo (a restart is not cleanly reversible).

Refuses a service name that is not present in service_list, and refuses 'ssh' unless confirm=True — SSH is the out-of-band recovery path, and bouncing it can strand whoever is working over it. Both refusals apply under dry_run too, which must report a refusal rather than preview a call that will be refused.

Args: service: TrueNAS service name (see service_list). confirm: Required (True) only to restart 'ssh'; ignored otherwise. dry_run: If True, preview without restarting. target: TrueNAS target name from config.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetNo
confirmNo
dry_runNo
serviceYes
Behavior5/5

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

With no annotations provided, the description carries full burden and does an excellent job. It discloses that the tool captures the prior service state for an audit record, declares no undo, and describes the refusal behavior under dry_run. This goes beyond basic side effects and informs the agent of important behavioral traits such as safety checks and audit 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 well-structured and front-loaded with the main purpose. Each sentence provides necessary information: the action, examples, dry_run, behavioral notes, refusals, and parameter explanations. No filler or redundancy is present. The Args section is formatted clearly, making it easy to scan.

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?

For a 4-parameter tool with no output schema and no annotations, the description is remarkably complete. It covers all parameters, explains side effects, gives specific safety constraints, and references service_list for valid names. The agent receives enough context to invoke the tool correctly and understand its consequences.

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

Parameters5/5

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

Schema description coverage is 0%, so the description fully compensates by explaining each parameter: service (TrueNAS service name), confirm (required for 'ssh'), dry_run (preview), and target (from config). It adds context beyond the schema, such as defaults and refusal conditions, making parameter use clear and meaningful.

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 'Restart a system service', a specific verb+resource statement. It further specifies examples ('smb', 'nfs') and distinguishes itself from sibling tools like service_list by naming the exact action. There is no ambiguity about what the tool does.

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

Usage Guidelines5/5

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

The description explicitly states when to use the tool (to restart a service) and when refusals occur: invalid service names and 'ssh' without confirm=True. It warns that SSH is the out-of-band recovery path, explaining why the confirm is required. This gives clear context and exclusions, satisfying the criteria for explicit usage guidance.

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

Install Server

Other Tools

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/AIops-tools/TrueNAS-AIops'

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