Skip to main content
Glama
hardware-tooling-mcp
by Pheem49

free_serial_port

Terminate processes that lock a serial port, freeing it for firmware flashing or serial monitoring; use force to send SIGKILL instead of SIGTERM.

Instructions

Terminate processes that are locking a serial port so it can be used for flashing or monitoring.

Args: port: Device path (e.g., '/dev/ttyUSB0' or '/dev/ttyACM0'). force: Send SIGKILL instead of SIGTERM if true.

Input Schema

NameRequiredDescriptionDefault
portYes
forceNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry the safety burden. It usefully discloses the SIGTERM versus SIGKILL behavior via force, but it does not mention permissions, irreversibility, process-state loss, or what happens when no locking processes exist.

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 front-loaded with the action and purpose, followed by a compact Args block. Every sentence carries useful information with no waste.

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

Completeness3/5

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

The description covers the action and both parameters, and the output schema handles return values. For a destructive process-termination tool with no annotations, it still omits safety prerequisites and permissions, leaving a meaningful completeness gap.

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 must explain both parameters. It does: port is defined with device-path examples, and force is defined by the exact signal change from SIGTERM to SIGKILL.

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: terminating processes that lock a serial port, with the intended outcome of flashing or monitoring. It is clearly distinct from generic process tools, but it does not explicitly position itself against siblings such as find_port_occupiers or kill_process.

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?

It gives a clear context for use: freeing a serial port for flashing or monitoring. However, it does not say when not to use it, whether to check occupiers first, or how it relates to the sibling tools find_port_occupiers and kill_process.

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