Skip to main content
Glama
Pseudogiant-xr

PseudoLife-MCP

Official

memory_relation_define

Destructive

Add a custom relation to a closed knowledge-graph vocabulary when recurring connections fit no built-in relation; specify its name, meaning, inverse, and transitivity.

Instructions

Add a relation to the closed graph vocabulary — a deliberate, rare act. Prefer the builtins; define one only when a recurring connection genuinely fits none of them.

Input Schema

NameRequiredDescriptionDefault
nameYesThe new relation name, hyphenated like the builtins.
dst_typeNoSoft entity-kind expectation for the object; a mismatch warns, never rejects.
src_typeNoSoft entity-kind expectation for the subject; a mismatch warns, never rejects.
inverse_ofNoPair with an existing relation, as ``runs-on`` is the inverse of ``hosts``.
transitiveNoTrue closes the relation transitively, so chained edges arrive pre-derived.
descriptionYesWhat the relation means, for later readers.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.18.1
    • addedInput schema / additionalProperties
      Added value: +false
  2. Changed6 schema fields changedv0.15.0
    • addedInput schema / properties / description / description
      Added value: +"What the relation means, for later readers."
    • addedInput schema / properties / dst_type / description
      Added value: +"Soft entity-kind expectation for the object; a mismatch warns, never rejects."
    • addedInput schema / properties / inverse_of / description
      Added value: +"Pair with an existing relation, as ``runs-on`` is the inverse of ``hosts``."
    • addedInput schema / properties / name / description
      Added value: +"The new relation name, hyphenated like the builtins."
    • addedInput schema / properties / src_type / description
      Added value: +"Soft entity-kind expectation for the subject; a mismatch warns, never rejects."
    • addedInput schema / properties / transitive / description
      Added value: +"True closes the relation transitively, so chained edges arrive pre-derived."
  3. First observedv0.11.0

TDQS

A4/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation risk is covered structurally. The description adds the useful framing that this is a 'deliberate, rare act' against a 'closed graph vocabulary,' but says nothing about permanence, name-collision behavior, or whether a defined relation can ever be removed.

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?

Two short sentences, front-loaded with the purpose and followed immediately by the caution. No filler, and the most decision-relevant constraint (prefer builtins) lands before the agent scans the schema.

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?

An output schema exists, so return values need no explanation, and the schema carries all parameter detail. What remains thin is the consequence model: this mutates a global vocabulary but the description does not state whether the addition is permanent or how conflicts are handled.

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 schema already documents all six parameters, including hyphenation, soft type expectations, inverse pairing and transitivity. The description adds no parameter meaning beyond that, so the baseline 3 applies.

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?

The description names a specific verb and resource: 'Add a relation to the closed graph vocabulary.' The word 'vocabulary' implicitly separates it from sibling edge-manipulation tools like memory_graph_relate, but it never names that contrast explicitly, so an agent must infer the distinction.

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?

It gives an explicit when-not condition ('define one only when a recurring connection genuinely fits none of them') and routes the agent toward alternatives ('Prefer the builtins'). This is exactly the routing guidance needed for a rare, high-consequence tool.

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