Skip to main content
Glama

client-compass

Generate Compass

generate_compass

Get the Lowdown on a person from the numbrU engine. Call with depth "card" first (the default): it returns a short card with KNOW, AVOID, and INSTEAD. If the user has described the moment (a listing meeting, a negotiation, a first call), pass it in context so the card fits that moment. When the user asks to go deeper, call again with the same name, dob, vertical, and context and depth "full" for the Deeper Details: how they decide, what earns their trust, the signs to watch for, and how to communicate. IMPORTANT: present the returned output verbatim, exactly as formatted, preserving every heading. Do not summarize, reword, reorder, condense into tables, or describe the sections instead of showing them. The formatting is the product. Get every read from generate_compass only: do not call create_person, list_people, or get_person to get or deepen a read, and do not save the person unless the user asks. In any note you add after the output, refer to the person by first name or "they", never he/she.

Input Schema

NameRequiredDescriptionDefault
dobNoDate of birth in YYYY-MM-DD format (optional). If not provided, proceed with name only.
nameYesFull name of the person
depthNocard = short card first (default). full = Deeper Details, only when the user asks to go deeper.card
contextNoOptional: the moment the user described, in their words (e.g. 'listing appointment Thursday, first meeting').
verticalNoIndustry vertical (default: real_estate)real_estate

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Optional: the moment the user described, in their words (e.g. 'listing appointment Thursday, first meeting').",
      +  "maxLength": 500,
      +  "type": "string"
      +}
    • addedInput schema / properties / depth
      Added value: +{
      +  "default": "card",
      +  "description": "card = short card first (default). full = Deeper Details, only when the user asks to go deeper.",
      +  "enum": [
      +    "card",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well: it discloses the two-tier depth behavior, that output must be presented verbatim with headings preserved, that the person should not be saved unless asked, and the first-name/they pronoun rule for added notes. It does not state whether the call itself persists a record or has rate/latency characteristics, which keeps it short of a 5.

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

Conciseness4/5

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

Front-loaded with the core action and default depth before the escalation rule and formatting constraints. Dense but nearly every sentence is an operative instruction; the verbatim-presentation warning is repeated in several forms, which costs a little trimming.

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?

No output schema exists, and the description compensates by naming the sections each depth returns (KNOW/AVOID/INSTEAD for the card; decision style, trust, warning signs, communication for full). For a five-parameter generative read tool, an agent has everything needed to call it and handle the result.

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 coverage is 100%, so baseline is 3, but the description adds real meaning beyond the schema: it explains the card→full progression for depth and that context should capture the user's described moment so the card fits, and it shows that name/dob/vertical/context must be repeated on the second call.

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 and resource — get a person 'read' from the numbrU engine — and names the exact artifact returned (a card with KNOW, AVOID, INSTEAD). It explicitly distinguishes itself from get_person, create_person, and list_people, so an agent can route correctly without opening another schema.

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?

Gives an explicit sequencing rule: call with depth "card" first, escalate to "full" only when the user asks to go deeper, reusing the same name, dob, vertical, and context. It also states when to supply context (a described moment like a listing meeting) and names the siblings that must not be used to obtain or deepen a read.

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