Skip to main content
Glama
JinyangWang27

people-context

get_consolidation_context

Read-only

Retrieve one person's stored facts, traits, and affiliations with relationship signals to identify duplicates, contradictions, and succeeding facts before proposing record maintenance.

Instructions

Return one person's stored facts, traits, observations, and affiliations and how they relate.

Pass person_id from resolve_person, or person (a name or alias) to resolve inline.

Use this before proposing maintenance. signals names pairs of records that share a predicate or category and says how they stand — duplicate_fact, restated_fact, contradictory_fact, succeeding_fact, duplicate_trait, divergent_trait — comparing normalized values and inclusive validity periods only. It decides nothing: reading the evidence and proposing a correct_record, a supersede_fact, or a merge_people for the user to approve is your job, and several observations supporting one trait are separate evidence rather than duplicates.

affiliations carries the person's stored roles at organizations — employment, education, membership — with their ids, dates, provenance, and any import receipt, so an incoming CV claim can be checked against what is already recorded. It has its own page and its own affiliations_truncated flag, and no signal is computed over it: two roles at one organization may be a promotion, a rehire, or two concurrent posts, and only you can read which. A valid_to of null means the stored assertion set no end, not that the role is confirmed current, and created_at is when the row was written rather than when the role began. A page that truncates is not evidence that a role is absent.

This read never writes. Sensitive and restricted records are never returned, and a trait names only evidence that is itself ordinary. Affiliations carry no disclosure level at all, so this collection adds no sensitivity control and is no route to a protected fact — background that needs one belongs in a fact. An unknown or removed person returns found: false rather than an error.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
personNo
person_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses that sensitive/restricted records are never returned, affiliations have no disclosure level, unknown persons return found:false rather than error, signals are computed only over normalized values and inclusive validity periods, and valid_to null means 'no end set' rather than 'confirmed current.' This is substantial behavioral context beyond what annotations provide.

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?

The description is long but every section earns its place: purpose, resolution, signal semantics, affiliation semantics, read-only reassurance, sensitivity caveats, and error behavior. It is front-loaded with the core purpose and organized into clear thematic blocks with no filler.

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?

Given the output schema exists and annotations cover read-only behavior, the description adds the missing operational context: what signals mean, how affiliations should be interpreted, truncation caveats, sensitivity restrictions, and not-found behavior. An agent has enough to decide when and how to call this tool correctly.

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?

With schema description coverage at 0%, the description compensates well by explaining person_id ('from resolve_person') and person ('a name or alias to resolve inline'). However, the third parameter, limit, is not explicitly addressed; only indirect references to pagination and truncation appear.

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 names a specific verb and resource: 'Return one person's stored facts, traits, observations, and affiliations and how they relate.' This clearly distinguishes it from sibling tools like get_person_timeline or search_people by focusing on consolidation evidence for maintenance.

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?

Explicitly says 'Use this before proposing maintenance' and explains that the tool 'decides nothing' while the agent must propose correct_record, supersede_fact, or merge_people. It also gives resolution guidance via person_id or person. It lacks an explicit when-not-to-use clause or named alternatives, so it stops short of a 5.

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