Skip to main content
Glama
NemoN

Tvheadend MCP

by NemoN

tvh_create_mux

Create a Tvheadend mux with network-specific tuning fields such as symbolrate, FEC, and PLP/PLS; specify frequency in Hz or native units and preview with dry run.

Instructions

Create a mux with network-specific tuning fields (symbolrate, FEC, PLP/PLS, etc.).

frequency_hz is always Hz: converted to native kHz for DVB-S/S2, Hz for DVB-C/T. Alternatively pass settings.frequency in Tvheadend's NATIVE units. Do not pass both. symbolrate is symbols/second, not ksymbols/second. Inspect mux_schema first.

Input Schema

NameRequiredDescriptionDefault
dry_runNo
settingsYes
frequency_hzNo
network_uuidYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare non-readOnly, openWorld, and non-idempotent. The description adds real behavioral value beyond that: frequency_hz is silently converted to native kHz for DVB-S/S2 but left in Hz for DVB-C/T, and the two frequency paths are mutually exclusive. It does not mention what happens on duplicate muxes or any auth/permission requirement, which matters for a non-idempotent write.

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?

Four short sentences, front-loaded with the action, then the unit rules, then the pre-flight step. Every sentence carries a non-obvious constraint; nothing is repeated from the schema or annotations.

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?

An output schema exists and annotations cover the safety profile, so return values and side effects needn't be restated. The unit-conversion rules plus the pointer to tvh_mux_schema make the tool callable despite a free-form nested settings object. The gaps are the undocumented dry_run flag and the lack of any statement about network_uuid referring to an existing network.

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

Parameters4/5

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

Schema description coverage is 0% and settings is a free-form object with additionalProperties, so the description carries the full burden. It compensates well by pinning down units for frequency_hz and symbolrate, spelling out the mutual exclusion with settings.frequency, and routing the agent to tvh_mux_schema for the nested fields. network_uuid and dry_run remain unexplained.

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?

States a specific verb and resource ('Create a mux') and immediately qualifies it with the domain fields involved (symbolrate, FEC, PLP/PLS), which distinguishes it from tvh_list_muxes, tvh_update_node, and tvh_create_network. An agent can tell this is the mux-creation path without opening the schema.

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?

Gives an explicit prerequisite ('Inspect mux_schema first') and an explicit either/or rule ('Alternatively pass settings.frequency... Do not pass both'). It does not say when to prefer this over sibling creation tools such as tvh_create_network, but for creation of a sub-resource the sequencing guidance is clear.

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