Skip to main content
Glama

List nodes

marzban_nodes_list
Read-only

List all connected Marzban nodes with status, Xray version, and uplink/downlink bandwidth usage. Filter usage by ISO start and end datetimes, or omit both to view all-time totals.

Instructions

Lists all connected nodes with their status and Xray version, plus bandwidth usage (uplink/downlink) over the given period. start/end (ISO datetimes) narrow the usage window; omit both for all-time.

Input Schema

NameRequiredDescriptionDefault
endNoISO datetime. Omit for no upper bound.
startNoISO datetime. Omit for no lower bound.

Output Schema

NameRequiredDescriptionDefault
nodesYes
usageYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed13 schema fields changedv0.2.4
    • removedInput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
    • removedOutput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
    • removedOutput schema / properties / nodes / items / properties / api_port / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / nodes / items / properties / api_port / minimum
      Removed value: --9007199254740991
    • removedOutput schema / properties / nodes / items / properties / id / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / nodes / items / properties / id / minimum
      Removed value: --9007199254740991
    • removedOutput schema / properties / nodes / items / properties / port / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / nodes / items / properties / port / minimum
      Removed value: --9007199254740991
    • removedOutput schema / properties / usage / items / properties / downlink / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / usage / items / properties / downlink / minimum
      Removed value: --9007199254740991
    • changedOutput schema / properties / usage / items / properties / node_id / anyOf
      Previous value: -[
      -  {
      -    "maximum": 9007199254740991,
      -    "minimum": -9007199254740991,
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedOutput schema / properties / usage / items / properties / uplink / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / usage / items / properties / uplink / minimum
      Removed value: --9007199254740991
  2. First observedv0.2.2

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: it discloses what data comes back (status, Xray version, per-node bandwidth) and that the time window defaults to all-time when both bounds are omitted.

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?

Two sentences, no filler, with the resource scope and returned data front-loaded and the parameter behavior trailing. Every clause carries information an agent would otherwise have to guess.

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, so return values needn't be defined here, and the tool has only two optional params on a read-only operation — the description covers everything needed to call it correctly. Minor omission: no mention of whether the node list is paginated or truncated for large deployments.

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 coverage is 100% so the baseline is 3, and the description earns an extra point by explaining the joint behavior of the two params — omitting both yields all-time, which the schema's per-field 'no lower/upper bound' text does not state on its own.

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 ('Lists all connected nodes') and enumerates the returned facets: status, Xray version, and uplink/downlink bandwidth. No sibling tool deals with nodes, so the domain is unambiguous versus marzban_users_list, marzban_hosts_get, and the config/system tools.

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 usage semantics for the time window ('omit both for all-time'), which is enough to call the tool, but it never says when to reach for this versus marzban_system_get_stats or marzban_hosts_get, which plausibly overlap for node/host telemetry. Selection guidance is left to inference.

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