Skip to main content
Glama
jaseonline

unifi-console-mcp

by jaseonline

unifi_console_syslog

DestructiveIdempotent

Preview and apply remote syslog settings for a UniFi OS console, including destination host, port, and categories, with fingerprint confirmation before writing.

Instructions

Preview, then apply, a change to the console's remote syslog setting (where logs are sent and which categories).

Two steps, always: call with confirm=false to get a read-only preview (before, after, diff, warnings, a fingerprint); call again with the same fields plus confirm=true and that fingerprint to apply. Fields: enabled, netconsole_enabled, netconsole_host, netconsole_port, contents, log_all_contents, this_controller, this_controller_encrypted_only, debug. The host and port are also written to ip and port as the UI does. Changing or stopping the destination ends the feed to the current receiver, and the preview says so. Applying also needs UNIFI_CONSOLE_ENABLE_WRITES=true and 'syslog' in UNIFI_CONSOLE_WRITE_ENTITIES. The group is read back and verified. Every write is journalled.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations (destructiveHint=true, idempotentHint=true) by disclosing the preview/apply handshake, the fingerprint requirement, that changing or stopping the destination ends the feed to the current receiver, that the host/port are mirrored to ip/port, and that the group is read back, verified and journalled. This is exactly the extra context annotations cannot carry.

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?

Front-loads the workflow before the field list, and most sentences carry real information (warnings, auth, verification). The flat comma-separated field inventory is the weakest part and slightly pads the paragraph, but nothing is seriously wasted.

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 destructive write with a preview gate, the description covers the workflow, the safety warnings, the auth prerequisites, the verification and journalling, and an output schema exists so return values need not be explained. An agent has everything needed to invoke it correctly.

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?

The top-level schema ($ref to params) exposes no description, but the enumerated field list in the description largely restates what the nested SyslogInput schema already documents. The one genuine addition beyond the schema is the note that host and port are also written to ip and port; otherwise this is a name inventory rather than added meaning.

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+resource with scope: 'change to the console's remote syslog setting (where logs are sent and which categories)'. An agent can tell this apart from siblings like unifi_console_system_log (reading logs) and unifi_console_logging_levels without opening either 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 clear operative guidance ('Two steps, always: call with confirm=false ... then confirm=true with that fingerprint') plus the preconditions to apply (UNIFI_CONSOLE_ENABLE_WRITES=true, 'syslog' in UNIFI_CONSOLE_WRITE_ENTITIES). However, it never names an alternative tool or a when-not-to-use condition, so it stops short of full routing guidance.

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