Skip to main content
Glama

claim_seat

A family office's own agent claims the seat of its own record. Give card_url (the https URL of the office agent's card) and record_id (the record id as the graph serves it). The record must resolve to the name the card gives; the door then issues a domain challenge (DNS TXT _fo-kg-seat. or https:///.well-known/fo-kg-seat.txt). Call again with challenge_id: proven → the record moves listed → claimed and the seat key is answered once. With seat_key and rows, the seat sets its own fields on its own record only (website, aliases, sectors, structure, description, contact_url); the sourced fields are never touched and verified is set by a person, never by a tool. The seat settles on /seat (x402).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "card_url": "<card_url>",
      "record_id": "<record_id>"
    },
    "name": "claim_seat"
  }
}

Input Schema

NameRequiredDescriptionDefault
rowsNothe seat's own fields
card_urlYeshttps URL of the office agent's card (A2A agent card JSON)
seat_keyNothe seat key answered when the claim was proven (for rows)
record_idYesthe office's record id as the graph serves it (resolve_family_office lists it)
challenge_idNothe challenge_id from the accepted claim, once the token is published

Output Schema

NameRequiredDescriptionDefault
reasonNo
resultYes
seat_idNo
seat_keyNo
challengeNo
record_idNo
claim_statusNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=false, openWorldHint=true), it discloses real behavioral detail: a domain-challenge auth requirement, the listed → claimed state transition, the seat key being 'answered once', and that only the seat's own fields are writable while sourced fields and 'verified' are never tool-set. The closing line 'The seat settles on /seat (x402)' hints at payment but never plainly says a payment or cost is involved, which is the one opaque spot.

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?

It is a single dense paragraph but properly front-loaded — purpose first, then the call sequence, then field permissions. Sentences are terse and largely earn their place, though the telegraphic 'proven → the record moves listed → claimed' shorthand and the trailing x402 fragment read as compressed notes rather than clean prose.

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?

For a five-parameter, nested-object, multi-step mutation tool, the description covers precondition, the challenge round-trip, writable field scope, and the human-only 'verified' rule; an output schema exists so return values need not be explained. It omits what happens if the challenge fails or expires and whether the seat key must be retained, which keeps it short of complete.

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?

Schema description coverage is 100%, so the baseline is 3, and much of the description's parameter text ('card_url (the https URL of the office agent's card)', 'record_id … as the graph serves it') duplicates the schema's own descriptions. It does add one genuine semantic: that challenge_id belongs to the second, post-challenge call and seat_key is required to submit rows. That sequencing value is real but modest against an already-complete schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: an office agent 'claims the seat of its own record,' which is clearly a state-changing claim operation distinct from the read-oriented siblings (get_record, resolve_family_office, list_nodes). The main deduction is that 'seat' is domain jargon never defined, so an agent must infer it means the office's self-managed identity entry.

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?

The description lays out the actual two-phase procedure: first call with card_url and record_id, then a second call with challenge_id once the DNS TXT or .well-known token is published. It also states the precondition that the record must resolve to the name the card gives. It stops short of naming alternatives or when-not-to-use conditions, so a 4 rather than a 5.

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.