Skip to main content
Glama

GetMyIdentity

Read-onlyIdempotent

Resolve the caller's identity from their API key. Call this FIRST when the user asks about "my graph" but has not provided a graph ID. For a graph/service key, me resolves to a Graph: use id as the graphId and variants[].name as the variant for the graph-scoped health-check tools, so the user does not have to supply either. Also handles user keys (memberships) and service-account keys.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
errorsNo
extensionsNo

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the read-only safety profile is covered. The description adds meaningful behavioral context: it explains the polymorphic return shapes (graph keys resolve to a Graph, user keys resolve to memberships, service-account keys resolve differently), which is valuable beyond the annotations. The openWorldHint=true annotation aligns with the description's hinting of diverse key types.

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?

Four sentences, all dense with useful information. The key instruction (call this FIRST) is front-loaded. No filler, no repetition of the annotations. Every sentence earns its place.

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?

For a zero-parameter identity-resolution tool with an output schema explaining return values, the description is complete. It covers why to call it, when to call it, what it returns semantically (graph vs user vs service-account), and how to use the results downstream. No gaps.

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 has zero parameters, and schema description coverage is 100% (vacuously—there are none). Per the rubric, 0 params = baseline 4. The description provides useful context about the output structure (id, variants[].name) that goes beyond a mere call with no inputs.

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 states a specific verb+resource: 'Resolve the caller's identity from their API key.' It clearly distinguishes from siblings—none of the sibling tools (GetVariantDetails, GetLaunch, etc.) deal with identity resolution. The title 'Get my GraphOS identity' reinforces the purpose clearly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Explicitly tells the agent when to use it: 'Call this FIRST when the user asks about "my graph" but has not provided a graph ID.' It also explains the downstream usage—how to map `me` to graphId and variants[].name for graph-scoped health-check tools. This is exemplary guidance with concrete next-steps.

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.

TDQS

A3.9/5.0
Disambiguation5/5

Each tool targets a clearly distinct resource and action: docs (search/read), launches (history/get/latest), metrics (operations/subgraphs/top ops), config checks (PQL/lint/variant), and identity resolution. There is no meaningful overlap — GetLaunchHistory, GetLaunch, and GetLatestLaunch are clearly differentiated by scope. The tool set is exceptionally well delineated.

Naming Consistency3/5

The naming follows a mostly consistent pattern, but there is a notable inconsistency: seven tools use the Get* prefix (GetLaunch, GetVariantDetails, GetLintResults, etc.) while two use an inconsistent ApolloDocs* prefix (ApolloDocsSearch, ApolloDocsRead). The Get* tools are uniform, and the camelCase compound names (GetLatestLaunch, GetOperationMetrics) are readable, but the two ApolloDocs tools break the pattern.

Tool Count5/5

13 tools is well within the ideal 3-15 range. Each tool maps to a distinct GraphOS capability: documentation access, identity resolution, launch/deployment inspection, health metrics, linting, PQL status, and variant details. No tool feels extraneous, and the count is appropriate for the broad but bounded domain of GraphOS observability and configuration.

Completeness4/5

The surface covers the core GraphOS operations well: deployments (launch tools), traffic health (metrics tools), configuration (variant/PQL/lint), documentation, and identity. A minor gap is the absence of write/management operations (e.g., no tool to trigger a launch, update PQL, or modify variant configuration), meaning the server is read-only in nature. For a read-only observability/health-check server this is acceptable, but an agent could not act on findings. Also no tool to list graphs/variants directly (only via GetMyIdentity).

Resources