Skip to main content
Glama

local_ydb_scheme

Read-onlyIdempotent

List or describe YDB scheme paths with read-only access, supporting recursive listings and detailed statistics. Inspect database schema structure without modifying data.

Instructions

Read-only YDB scheme list or describe with capped stdout/stderr. It uses the root database for rootDatabase paths and the tenant database otherwise; list supports recursive/long/onePerLine flags, describe supports stats, and incompatible flag combinations are rejected.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
longNoFor action=list, pass -l for detailed object attributes.
pathNoScheme path to inspect. Defaults to the configured tenant root.
statsNoFor action=describe, pass --stats.
actionNoScheme operation to run. Defaults to list.
profileNoNamed profile from local-ydb.config.json. Defaults to config.defaultProfile.
recursiveNoFor action=list, pass -R to recursively list subdirectories.
configPathNoAbsolute path to an explicit local-ydb config file. Missing, unreadable, oversized, or invalid explicit files fail closed instead of using defaults.
onePerLineNoFor action=list, pass -1 to print one object per line.
maxOutputBytesNoMaximum UTF-8 bytes returned per stdout/stderr stream. Defaults to 65536.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.1.21
    • changedInput schema / properties / configPath / description
      Previous value: -"Explicit local-ydb config file path to load for this tool call. Useful when the MCP server should pick up a different config without restart."New value: +"Absolute path to an explicit local-ydb config file. Missing, unreadable, oversized, or invalid explicit files fail closed instead of using defaults."
    • addedInput schema / properties / configPath / minLength
      Added value: +1
  2. Addedv0.1.12
  3. Removedv0.1.12
  4. Addedv0.1.5
  5. Removedv0.1.4
  6. Changed1 schema field changedv0.1.1
    • changedInput schema / properties / configPath / description
      Previous value: -"Explicit local-ydb config file path to load for this tool call."New value: +"Explicit local-ydb config file path to load for this tool call. Useful when the MCP server should pick up a different config without restart."
  7. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description's 'Read-only' opening is fully consistent with them (no contradiction). It adds genuinely new behavioral detail beyond annotations: stdout/stderr streams are capped (tying to maxOutputBytes), database selection depends on whether the path is a rootDatabase path, and incompatible flag combinations are rejected. These operational traits materially inform an agent about how the tool behaves at runtime.

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 with zero filler; the core purpose, read-only nature, and output cap are front-loaded in the first sentence, while the second packs routing, per-action flags, and validity constraints efficiently. Every clause earns its place.

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?

For a 9-parameter tool with no output schema, the description covers purpose, actions, per-action flags, database routing, and output limitations. Remaining gaps are minor: 'rootDatabase paths' is not tied to an explicit parameter, and the exact return format (streamed stdout/stderr text) is only implied by 'capped stdout/stderr'. An agent nonetheless has enough information to invoke list and describe correctly.

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 100%, so the baseline is 3. The description adds value beyond the schema by mapping flags to actions (recursive/long/onePerLine are valid for list, stats for describe) and by explaining the path-routing rule and the rejection of incompatible flag combinations. This cross-parameter information helps an agent assemble valid invocation sets.

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: 'Read-only YDB scheme list or describe with capped stdout/stderr.' The read-only qualifier cleanly separates it from write/apply siblings such as local_ydb_apply_schema, and the two named actions (list/describe) exactly match the action enum. An agent can distinguish this tool from all siblings 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for use — inspecting YDB scheme via list or describe, with per-action flags and root-vs-tenant database routing. However, it never names an alternative or states when not to use it; it does not reference local_ydb_apply_schema as the write counterpart. 'Incompatible flag combinations are rejected' is a constraint, not an explicit exclusion that routes to a sibling, so usage is implied rather than explicit.

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