Skip to main content
Glama

Getentitydescriptor

getEntityDescriptor

Retrieve an entity's Cortex descriptor - the x-cortex-* configuration the entity is defined by. Returns JSON by default; pass yaml=true for the YAML form. Distinct from getOpenApiDocForEntity, which returns the API the service exposes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yamlNoWhen true, returns the YAML representation of the descriptor
contextYes Explain why you're invoking this tool now and how its output will be used. Then state how this call supports your *overall objective* and fits into your broader plan across all tool calls (e.g., why this tool vs. others, and what step it unblocks). Never share any personal details or sensitive information.
tagOrIdYesEntity identifier - can be a tag or CID
session_idYesSession continuity handle, one of two values: the ses_ ID issued for the task underway, or start. This server cannot link your calls between requests on its own, so session continuity travels in this parameter instead. If you were handed a session_id for this task — for example by the agent that spawned you — send that exact value from your first call. Otherwise send start on your first call; the server will issue an opaque correlation ID in the mcp_session field of the result, or in a text block at the start of the result beginning [session_id issued. Then send that exact ses_ value on every later call and hand it to any subagents working the same task. start always begins a new, unrelated task — never send it mid-task. If you send a value this server does not recognize, the result reports it: mcp_session.status of unrecognized, or a text block beginning [session_id unrecognized; re-send the ID issued for this task, or start if none was issued yet. Never invent a ses_ value.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / session_id
      Added value: +{
      +  "description": "Session continuity handle, one of two values: the ses_ ID issued for the task underway, or start. This server cannot link your calls between requests on its own, so session continuity travels in this parameter instead. If you were handed a session_id for this task — for example by the agent that spawned you — send that exact value from your first call. Otherwise send start on your first call; the server will issue an opaque correlation ID in the mcp_session field of the result, or in a text block at the start of the result beginning [session_id issued. Then send that exact ses_ value on every later call and hand it to any subagents working the same task. start always begins a new, unrelated task — never send it mid-task. If you send a value this server does not recognize, the result reports it: mcp_session.status of unrecognized, or a text block beginning [session_id unrecognized; re-send the ID issued for this task, or start if none was issued yet. Never invent a ses_ value.",
      +  "pattern": "^(start|ses_[0-9A-Za-z]{27})$",
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "tagOrId",
      -  "context"
      -]New value: +[
      +  "tagOrId",
      +  "session_id",
      +  "context"
      +]
  2. First observed

TDQS

A4/5.0
Behavior3/5

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

No annotations exist, so the description carries the burden. It discloses the default output format (JSON), the YAML switch, and what a descriptor contains, but it does not explicitly state side effects, access requirements, or error behavior. For a simple read operation the disclosed core behavior is adequate but not exhaustive.

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?

Three sentences with no filler; the main action and resource are first, followed by format option and competitor distinction. Each sentence contributes unique information.

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?

Combined with the exhaustive session_id documentation in the schema, the description gives the caller enough to invoke correctly: resource, input requirements, output format, and the differentiating alternative. No output schema exists, but return format is stated; minor gaps like explicit read-only confirmation prevent a 5.

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?

All four parameters are already fully described in the schema (100% coverage), so the baseline applies. The description adds only the default-JSON detail and reinforces the yaml=true behavior, which is mostly redundant with the schema.

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 opens with a specific verb ('Retrieve') and identifies the resource: an entity's Cortex descriptor, explicitly defined as the x-cortex-* configuration. It also contrasts itself with getOpenApiDocForEntity, making the purpose unmistakable among the sibling list.

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 one concrete routing rule: use this for descriptors, not getOpenApiDocForEntity, which returns the service API. It doesn't enumerate all alternatives (e.g., listEntityDescriptors), but the stated context is enough to distinguish from the closest sibling.

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