Skip to main content
Glama

Citation graph

get_citation_subgraph
Read-only

Return a filtered citation subgraph for graph exploration.

Uses the same filters as search_cases. Returns node/edge counts, the most-
cited authorities in the match set, and edge-type breakdown when the match
set is at or below the cap. When too many authorities match, returns the
total count and asks you to narrow filters — same guard as the Explorer UI.

Args:
    query: Natural language search (e.g. "unfair dismissal", "section 20 consultation")
    domain: Legal domain slug (e.g. "employment", "landlord-tenant")
    court: Court code (e.g. "UKSC", "EWCA-Civil", "FTT-Property")
    year_from: Earliest year to include
    year_to: Latest year to include
    respondent: Defending party name — substring match
    claimant: Bringing party name — substring match
    disposition: Case outcome (allow, dismiss, grant, quash, refuse, remit)
    judgment_status: Status of judgment (approved, draft, handed down)
    appeal_from: Citation of the decision appealed from — substring match
    cited_by_min: Minimum citation count (only show influential cases)
    jurisdiction: "England & Wales", "Scotland", "United Kingdom"
    topic: Legal topic slugs — multi-select
    cap: Max authorities to include in the graph (default 500, max 500)

Input Schema

NameRequiredDescriptionDefault
capNo
courtNo
queryNo
topicNo
domainNo
year_toNo
claimantNo
year_fromNo
respondentNo
appeal_fromNo
dispositionNo
cited_by_minNo
jurisdictionNo
judgment_statusNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Goes well beyond readOnlyHint/openWorldHint: it discloses exactly what comes back (node/edge counts, most-cited authorities, edge-type breakdown) and the cap guard — when the match set exceeds the cap you get a total count and a request to narrow, mirroring the Explorer UI. That is precisely the kind of truncation/limit behavior an agent cannot infer from annotations or schema.

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 one-sentence purpose, then return shape, then the cap guard, then the Args list. The Args block is long but justified at 0% schema coverage; 'default 500, max 500' slightly duplicates the schema default but also adds the max, so it earns its place.

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?

With 14 optional params, no output schema, and only two annotations, the description supplies the two things structured fields cannot: what the return payload contains and what happens at the cap boundary. An agent has enough to call it and interpret the result without trial and error; only filter-combination semantics remain implicit.

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 description coverage is 0%, so the Args block carries the full load and does it well: examples for query, domain, court codes, the six disposition values, jurisdiction strings, multi-select topics, substring-match semantics for claimant/respondent/appeal_from, and cap's default/max. Minor shortfall: it doesn't say how year_from/year_to interact or whether filters combine as AND, and the null defaults are never explained.

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: return a filtered citation subgraph, plus the intended activity (graph exploration). An agent can tell this is the graph-shaped counterpart to search_cases from the 'same filters as search_cases' line, though it never explicitly contrasts itself with the sibling get_citation_network, which an agent must disambiguate on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It says to use the same filters as search_cases and explains the narrow-your-filters fallback, which gives implied usage context. But it never states when to choose this over get_citation_network, get_related_authorities, or top_authorities_in_domain — a real gap given six graph-adjacent siblings.

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