Skip to main content
Glama

federation_node_tenant_reserve

Reserve a tenant handle in the federation-wide node namespace (CO 501). NODE-SIGNED like report-in: the node signs the canonical envelope and reserves for its AUTHENTICATED id only. One tenant-handle namespace across all nodes: the first node to reserve a handle holds it; re-reserving your own handle succeeds (idempotent); a handle held by another node refuses legibly with handle_reserved + holder_node_id, never a silent second tenant. A node calls this before local tenant creation; the catalog-projection sync re-verifies every handle it carries, which is also how a tenant created while the node was dark gets its reservation — or its refusal — at the next report-in. Returns: { ok: true, handle, node_id } or { ok: false, code: 'handle_reserved', holder_node_id } or { error, code }. Example: call federation_node_tenant_reserve with arguments {}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
algYesSignature algorithm of the bound key.
nonceYesA fresh single-use nonce (part of the signed envelope).
handleYesThe tenant handle (routing key) to reserve.
node_idYesThe reserving node.
signatureYesbase64 signature over the canonical envelope, by the node bound key.
timestampYesISO timestamp within the skew window (part of the signed envelope).

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Added

TDQS

B3.4/5.0
Behavior1/5

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

The description gives strong behavioral detail (returns, failure codes, dark-node re-verification). However, it says 're-reserving your own handle succeeds (idempotent)' while annotations set idempotentHint to false, an explicit contradiction; per rubric this reduces the score to 1.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose and dense useful details, but the example 'call federation_node_tenant_reserve with arguments {}' is misleading because all six parameters are required. Jargon like 'CO 501' and 'catalog-projection' adds noise without explanation.

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?

Without an output schema, the description supplies exact success/error shapes and idempotent-refusal behavior, which is unusually complete. It is missing only a concrete example and clarification of how auth is passed, but the schema covers the latter.

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%, so the schema already documents all six parameters. The description's signed-envelope/auth context is useful but not required to understand parameter syntax; it earns the baseline 3.

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?

The description names the exact operation ('Reserve a tenant handle'), the target namespace ('federation-wide node namespace'), and the actor ('NODE-SIGNED... reserves for its AUTHENTICATED id only'). It is specific enough to distinguish from sibling tenancy operations like list/enter.

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 states explicitly that 'A node calls this before local tenant creation', which is a clear when-to-use. It also describes what happens when the handle is already held, but it does not name alternatives or give when-not-to-use exclusions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources