Skip to main content
Glama
pc439527

jumpserver-mcp

by pc439527

jumpserver_compare

Read-only

Compare read-only commands or inspect profiles across multiple servers to detect configuration differences, report outliers, and group identical hosts.

Instructions

Run the SAME read-only command or inspect profile across several servers and report what DIFFERS — which host has a different config, a missing listener, a full disk. Returns groups of identical hosts plus, for each outlier, the lines it is missing or has extra versus the majority. Use it for "are these nodes configured the same?" instead of eyeballing raw dumps. Only READ is accepted; a mutating command refuses the whole call.

Input Schema

NameRequiredDescriptionDefault
formatNotext (default, compact) or json (full structured diff).
commandNoOne read-only command to run on every target (mutually exclusive with profile).
profileNoInspect profile to run on every target (mutually exclusive with command).
targetsYesTarget IPs or asset names to compare (2..20).
concurrencyNoTargets at once (default: batchConcurrency setting).
stripPrefixesNoLine prefixes to strip before diffing (e.g. volatile timestamps).
accountByTargetNo{ [target]: displayedAccountId } for multi-user assets (KoKo `ID>` prompt).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.13

TDQS

A4/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=true, and the description adds a genuinely non-obvious behavior: a mutating command causes the whole call to be refused rather than partially executed. It also discloses the diff-oriented output structure. It does not cover partial-target failure, timeout, or concurrency semantics beyond what the schema already states.

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 core operation is front-loaded in the first clause, and the follow-on sentences carry the return shape, the use case, and the read-only constraint without padding. It is slightly dense with em-dash asides but every sentence contributes something.

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 7-parameter diff tool with no output schema, the description covers the operation, the intended question it answers, the return structure, and the hard read-only constraint. With full schema coverage handling parameters, nothing material an agent needs to invoke it correctly is missing.

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 100%, with command/profile/profiles, format, targets bounds, concurrency, stripPrefixes and accountByTarget all documented in the schema itself. The description only reinforces command-vs-profile mutual exclusivity and adds no syntax or format detail the schema lacks, so the baseline 3 is appropriate.

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 names a specific compound operation — run the same read-only command or inspect profile across many hosts and report only the differences — and even sketches the return shape (groups of identical hosts plus per-outlier missing/extra lines). It is clear and non-tautological, but it never names or distinguishes the overlapping siblings such as jumpserver_baseline_compare, jumpserver_inspect, or jumpserver_profile_run.

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?

It gives a concrete trigger ('are these nodes configured the same?') and an explicit anti-pattern to avoid ('instead of eyeballing raw dumps'), which is real routing value. It stops short of exclusions against the near-neighbor sibling tools, so the agent gets context but not a decision rule for choosing between this and baseline_compare/inspect.

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