Skip to main content
Glama

Look up one citation in the register

resolve_citation
Read-onlyIdempotent

Check a single US case citation to confirm whether a case exists there, retrieve its name, court, date, and parallel citations, and assess register completeness for that volume.

Instructions

Look up a single case citation (for example '590 U.S. 644', or 'Bostock v. Clayton County, 590 U.S. 644 (2020)') in proofread.law's register and answer: is there a case at this citation, which one (name, court, date, parallel citations, link), and how complete the register is for that volume. This is a register lookup of the citation, not a comparison with the case name you have: if the case it returns is not the one you expected, the citation points elsewhere. Statuses: found; ambiguous (several entries, candidates listed); not in the register (a register fact with a coverage qualifier, never proof that the case does not exist); cannot verify (a Westlaw/Lexis identifier, or a volume the register cannot see yet); known citation (other opinions cite it, the opinion itself is not held); no citation recognised. Use it when one citation is in doubt; use check_citations for prose, and resolve_citations for a list. Cannot: resolve Westlaw (WL) or Lexis identifiers, check statutes, regulations or secondary sources, or say whether a case is still good law. A red row means 'check this', never 'this case does not exist'; an orange row means the register has nothing to check against, which is not evidence either way. Counts against the resolve quota (1,000 a month free), not the check quota. Without an API key the free tier applies per IP address; a key from sign_up (free tier) identifies the account, and a paid-plan key lifts the limits.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
citationYesOne citation string. A case name and year around it are fine; only the reporter citation is resolved.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive. The description substantially adds behavioral context: enumerates statuses (found, ambiguous, not in register, cannot verify, known citation, no citation recognised), clarifies that a 'not in register' result is 'never proof that the case does not exist,' and explains red/orange row semantics. It also discloses quota impact and API-key behavior. No contradiction with annotations.

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 sentence earns its place. It front-loads the core purpose, then lists statuses, usage guidance, exclusions, and quota notes in a logical order. No redundancy or filler; each clause adds distinct information that an agent needs.

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 no output schema, the description carries full responsibility for explaining return semantics, and it does so comprehensively: statuses, coverage qualifiers, red/orange row meanings, quota limits, and API-key behavior. It covers error cases and ambiguity handling. Nothing an agent needs to call this correctly or interpret the result is missing.

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 100% (the citation parameter is described as 'One citation string'), so baseline is 3. The description adds meaningful nuance: 'A case name and year around it are fine; only the reporter citation is resolved,' which clarifies acceptable input formats and what will be parsed. This goes beyond the schema and helps agents format calls correctly.

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?

States a specific verb ('look up'), a specific resource ('a single case citation in proofread.law's register'), and precisely defines the output: whether a case exists, its details, and register completeness. It explicitly distinguishes from siblings by naming check_citations (for prose) and resolve_citations (for a list), and lists what it cannot do (Westlaw/Lexis IDs, statutes, good-law status). An agent can unambiguously identify when to use this tool.

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?

Explicitly states when to use: 'Use it when one citation is in doubt' and directly names alternatives: 'use check_citations for prose, and resolve_citations for a list.' It also lists exclusions (cannot resolve WL/Lexis, check statutes, etc.), giving clear routing guidance. No inference is required.

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