Skip to main content
Glama
ianderso
by ianderso

get_backlinks

Read-only

List all references to an object, grouped by type, to check if it's cited or safe to delete.

Instructions

List everything that references this object, grouped by type.

The right way to ask "is this source actually cited?", "which facts rest on this citation?", or "is it safe to delete this?" -- an object with zero backlinks is orphaned; one with backlinks will leave dangling references if deleted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
refYesHandle or gramps_id of that object.
object_typeYesType of the object being pointed AT.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds meaningful domain semantics beyond that: results are grouped by type, and an object with zero backlinks is orphaned while one with backlinks will produce dangling references if deleted. It omits return format or error behavior, keeping it at a 4.

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?

The core action is front-loaded in the first sentence, and the three example questions are compact and each earn their place by illustrating a distinct use case. Slightly verbose but no dead weight.

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 read-only listing tool with no output schema, the description supplies the key semantic hints — grouping by type and the orphaned/dangling-reference meaning of results. It leaves minor gaps around output shape and invalid-reference behavior, but nothing critical for correct invocation.

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% for both parameters (ref, object_type), so the schema already carries the burden. The description adds no detail on parameter format, valid object_type values, or how 'ref' accepts a handle versus a gramps_id — 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 states a specific verb and resource ('List everything that references this object, grouped by type'), which is unambiguous and clearly distinct from direct object fetchers like get_object or query_objects. It does not name a sibling alternative, but the use-case framing effectively separates it from the surrounding lookup tools.

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?

It gives three concrete trigger scenarios (citation checking, fact provenance, deletion safety) that make the when-to-use condition explicit. It stops short of stating when NOT to use it or naming an alternative tool, so it falls just under full marks.

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