Skip to main content
Glama

whoami

Which user this request acts as, and which company's books it is bound to (jwt or API key).

Zeno serves every tenant from one host, and an API key is opaque — nothing else tells a connected agent whose books it is about to write. Call this FIRST when working over MCP: company_scoped: true means this connection's data access is confined to company_id — company_name names it (null here means the bound company no longer exists), no other tenant is reachable, and the admin endpoints are refused however privileged the owner is. is_admin is that owner's bit: worth nothing outside this company, still full authority inside it, so a scoped key with is_admin: true may write these books even when company_role is null. company_scoped: false means the credentials carry the owner's full principal and memberships lists the companies it can act in. Read-only and cheap — at most one lookup. ZET-171, ZET-176.

credential_purpose says which kind of credential this is, and is what the withholding rule keys on (SP-08): anything that is neither full nor session is confined, and gets memberships withheld — null, not empty.

Working over MCP, what you book or accept is recorded as MCP — not as this user acting in person — and the app displays it that way.

capabilities says what this caller may do, each verdict computed from the predicate the gate itself evaluates (SP-12) — so an agent learns what it cannot do before it collides rather than after. A credential confined to a company gets the entries whose verdict is a fact about the credential; the one that would read the owner's estate (create_company) is omitted, because its verdict would disclose a sibling tenant. A credential confined to no company — an onboarding key — has no sibling to disclose and does get it, which is the one operation such a key exists to call. pending_admin_actions is present and empty until PRE-03/PRE-04 fill it.

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and delivers: it discloses read-only/cheap behavior ("at most one lookup"), auth semantics (jwt or API key), the company-scoping enforcement including that admin endpoints are refused, the memberships withholding rule, and that MCP-recorded actions display as MCP. This is unusually rich behavioral disclosure.

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?

The first sentence is well front-loaded, but the body is a dense wall of text with internal ticket references (ZET-171, ZET-176, SP-08, SP-12, PRE-03/PRE-04) that mean nothing to an agent, plus convoluted phrasing like "worth nothing outside this company, still full authority inside it." Much of the content earns its place given no output schema, but the noise and length cost it.

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?

There is no output schema, so the description must explain the return shape — and it does, defining every field's meaning and the null-vs-empty distinction for memberships. For a zero-parameter identity/scope probe, nothing an agent needs to interpret the result is missing.

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?

The tool takes zero parameters, so the baseline is 4. The description instead invests heavily in output-field semantics (company_scoped, company_id, company_name, is_admin, memberships, credential_purpose, capabilities), which is valuable but belongs to return-value interpretation rather than parameter 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?

The opening sentence states a specific verb and resource: which user the request acts as and which company's books it is bound to. It is clearly distinguished from siblings like get_company or list_companies, which fetch company data rather than resolving the caller's own identity/scope.

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?

"Call this FIRST when working over MCP" is explicit, actionable timing guidance. It lacks an explicit when-not or named alternative, but the tool is effectively a singleton prerequisite so the missing exclusion is minor.

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