Skip to main content
Glama

CaseMagic — Court Case Monitor

Server Details

Watch US federal court cases for new filings and keep a Case Passport any AI assistant can load.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A4/5.0

Scored across 13 tools

Disambiguation2/5

The read tools have unclear boundaries: find_federal_case and get_recent_case_activity both direct agents to use them for 'what happened in their case,' and get_case_status/find_federal_case both report status and latest activity. The mail, passport, and monitoring tools are distinct, but the docket/status/updates cluster creates real misselection risk.

Naming Consistency4/5

Names are uniformly snake_case and mostly follow verb_noun phrasing (create_case_passport, get_case_status, send_case_mail). Minor deviations like stop_watch (which reads like a stopwatch rather than an unwatch_case counterpart to watch_case) and get_recent_case_activity vs. get_case_updates keep it from being perfectly consistent.

Tool Count4/5

Thirteen tools is within a reasonable range and covers the main find/save/monitor/read workflow without feeling bloated. The overlap among the get_case_* read tools makes it slightly heavier than it needs to be, but the count itself is appropriate.

Completeness3/5

The core federal-case workflow is well covered: lookup, save, status, docket activity, deadlines, documents, mail, and monitoring. However, there is no way to list the user's saved Case Passports or remove/update a saved case, so the account lifecycle has notable gaps that agents cannot fully work around.

Available Tools

13 tools
create_case_passportSave a case to the accountA
Idempotent
Inspect

Save a case that find_federal_case just located to the signed-in CaseMagic account, which creates its Case Passport — the persistent record of the matter — and its permanent CaseMail address. Use this after the user has confirmed which case is theirs and wants CaseMagic to keep it. Requires the connect_token from that lookup, which expires shortly afterwards.

ParametersJSON Schema
NameRequiredDescriptionDefault
user_roleYesThe user's own role in the case. Ask them rather than guessing.
connect_tokenYesThe connect_token returned by find_federal_case for the case the user confirmed.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already convey write, idempotent, and non-destructive intent. The description adds valuable behavioral context beyond that: this action creates a persistent record (Case Passport) and a permanent address, and it warns that the connect_token expires shortly after lookup. 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?

Three sentences with no redundancy: the main effect, the usage trigger, and the requirement. The most important information is front-loaded, and no space is wasted repeating schema or annotation content.

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?

For a simple two-parameter mutation tool with no output schema and a full annotation set, the description is complete. It explains the action, the side effects, when to use it, and the dependency on a short-lived token. No critical gaps remain for correct invocation.

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 coverage is 100%, so the parameters are already well documented, giving a baseline of 3. The description adds one useful parameter-level insight: the connect_token has a short expiry window and must be used promptly. It doesn't add detail on user_role, but the schema's 'Ask them rather than guessing' already covers that.

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?

The description names the specific verb and resource: 'Save a case that find_federal_case just located to the signed-in CaseMagic account.' It also states the concrete effects (creates the Case Passport and a permanent CaseMail address), which distinguish it from read-only siblings like get_case_passport and from lookup tools like find_federal_case.

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 trigger condition: 'Use this after the user has confirmed which case is theirs and wants CaseMagic to keep it.' It also ties the tool to the correct workflow step by requiring the connect_token from find_federal_case, whose short expiry is flagged. This unambiguously tells the agent when to invoke it.

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

explain_docket_entryGet the full text of a docket entryA
Read-onlyIdempotent
Inspect

Return one docket entry in full — its number, filing date, the exact text the court published, whether a document is attached and a link to it — together with the entries around it and the posture of the case, so that you can explain to the user what the filing is and what it means in context. Use this when a user asks what the latest filing means, what an order says, or to explain a specific docket entry. CaseMagic returns the court's own words and the surrounding facts; it does not write the explanation and does not give legal advice. Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account. No account is needed to give a case number.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.
docket_numberNoThe docket entry number to explain, as shown on the docket, for example "312". Omit it for the most recent entry.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already mark the tool as readOnly and idempotent, and the description adds meaningful behavioral context beyond that: it returns the court's own words and surrounding facts, does not write an explanation, and does not give legal advice. It also discloses that no account is needed when a case number is provided, which helps set invocation expectations.

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 description is front-loaded with the core return value and keeps usage guidance near the top. It is a bit dense, with long enumerative clauses, but every sentence earns its place: output contents, when to use, behavioral limits, and identification approach. No filler.

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 present, the description carries the burden of explaining what the tool returns. It does so concretely: entry number, filing date, exact court text, attachment indicator and link, surrounding entries, and case posture. It also covers invocation prerequisites and the non-legal-advice boundary, making it complete for an agent deciding whether and how to call it.

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 coverage is 100%, so the baseline is 3. The description goes beyond the schema by explaining the identification strategy — use case_number with optional court, or use matter_id for an already-saved case — and makes clear that a docket number is only needed for a specific entry. This adds useful semantic grouping beyond the raw parameter list.

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?

The description opens with a specific verb and resource: 'Return one docket entry in full' and enumerates the exact contents returned — number, filing date, court-published text, attachment link, surrounding entries, and case posture. This clearly differentiates it from siblings like get_case_documents or get_case_status without needing to inspect the schema.

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 explicit when-to-use context: 'Use this when a user asks what the latest filing means, what an order says, or to explain a specific docket entry.' It does not explicitly name alternative tools or state when not to use it, so it falls short of a perfect 5, but the intended scenarios are unmistakable.

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

find_federal_caseFind a federal court caseA
Read-onlyIdempotent
Inspect

Find a United States federal court case and return the court, the judge, the case status and its latest docket activity. Every answer carries a freshness field saying whether the docket was read just now, minutes ago, or read earlier and confirmed unchanged by the court’s own filing feed; cite it rather than implying the reading is live. Use this whenever a user asks what happened in their case, what was filed, whether the other side responded, to check or look up a docket or lawsuit, or to find their case by name — and as the first step whenever they want a case monitored. Free and needs no account. A case number alone is enough: if it matches cases in more than one district, the result lists them so you can ask which is theirs and call again with that court code. Federal district courts only; it cannot look up state, county or traffic courts, does not file anything and does not give legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
case_nameNoThe case caption, for example "Smith v. Acme". Used only when no case number is known.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.
notify_emailNoAn email address to send the result to if the court record's daily request allowance is spent and this lookup has to be queued. Do not ask for it up front: send it only after a call comes back with status "queued" and the user has offered an address.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark readOnlyHint=true and idempotentHint=true, but the description adds meaningful context: a freshness field explaining how current the docket read is, a warning to cite freshness rather than implying live reads, free/no-account behavior, queuing when a daily request allowance is spent, and multi-district disambiguation. This is precisely the kind of behavior an agent needs and that annotations cannot convey. 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?

Though longer than average, every sentence earns its place: core purpose and outputs are front-loaded, followed by freshness instructions, when-to-use guidance, cost/auth-free note, disambiguation behavior, and limitations. The structure is logical with zero filler, making it appropriately sized for the tool's complexity.

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?

For a 4-parameter tool with no required fields and no output schema, the description is remarkably complete. It specifies return fields, freshness semantics, when to use vs. alternatives, free/no-account access, ambiguous-match handling, queued-result fallback, and legal scope exclusions. An agent has everything needed to invoke the tool correctly and interpret results.

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%, so the baseline is 3. The description adds extra usage context beyond the schema: case_name is used only when no case number is known, court is optional when the district is unknown, and a case number alone may yield multiple district matches requiring a second call with the court code. These reinforce and clarify the schema descriptions, earning a 4.

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?

The description states a specific verb and resource: 'Find a United States federal court case' and lists the exact return fields (court, judge, case status, docket activity). It also distinguishes itself from siblings by scope ('Federal district courts only') and exclusions (state/county/traffic courts, no filing, no legal advice), so an agent can select it confidently.

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?

The description explicitly says 'Use this whenever a user asks what happened in their case, what was filed, whether the other side responded, to check or look up a docket or lawsuit, or to find their case by name — and as the first step whenever they want a case monitored.' It also gives clear exclusions (cannot look up state/county/traffic courts, does not file anything) and even directs when to re-call with a court code for disambiguation.

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

get_case_deadlinesGet deadlines and dates the docket setsA
Read-onlyIdempotent
Inspect

Return the dates a federal docket states — "Responses due by 10/14/2026", "Hearing set for 3/2/2027" — each quoted verbatim with the entry that states it and how many days away it is, plus a small set of deadlines CaseMagic computes from the Federal Rules where the triggering event is on the docket and the rule is the same nationwide: the time to move after a judgment (FRCP 59/50/52) and the time to file a notice of appeal (FRAP 4(a)). Every computed date shows the rule, the day count and a caveat, and is never phrased as an instruction to file. CaseMagic still does not compute deadlines that depend on a district's local rules or a judge's standing orders — most motion-response and discovery windows — so a deadline a local rule implies but the docket does not state will not appear. An empty result means nothing is stated or computable, not that the user has none. Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account. No account is needed to give a case number.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond readOnlyHint/openWorldHint/idempotentHint by disclosing that entries are quoted verbatim with the source entry and day count, computed deadlines show the rule and a caveat, results are never phrased as filing instructions, and empty results mean nothing is stated or computable rather than no deadlines. No annotation contradiction.

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 description is long but front-loaded with core return semantics, uses concrete examples, and every sentence earns its place by adding behavioral caveats or identification guidance. It could be tightened slightly but is not padded.

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?

For a read-only query with no output schema, this description fully prepares the agent: it explains what is returned, what is excluded, how empty results should be interpreted, and how to identify the target case. Nothing material to invoking it correctly is left out.

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?

The schema already documents all three parameters at 100% coverage, so the baseline is met. The description adds meaningful selection semantics: prefer case_number with court when known, use matter_id for saved cases, and no account is needed for a case number.

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 action and resource: 'Return the dates a federal docket states...' plus a small set of deadlines CaseMagic computes from the Federal Rules. This clearly distinguishes it from sibling tools by focusing on docket-stated and federal-rule-computed deadlines, with concrete examples.

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?

Provides clear context on when the tool applies and explicitly warns that local-rule and standing-order deadlines are not computedstan. It explains how to identify the case with case_number/court versus matter_id and notes that no account is needed for a case number, though it does not name an alternative sibling for deadline scenarios.

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

get_case_documentsList available case documentsA
Read-onlyIdempotent
Inspect

List the docket entries in a federal case that have a document available, with the entry number, what the entry says, and a link to the document where the source publishes a free one. Use this when a user asks what documents are on file, whether an order or a motion is available to read, or for a copy of a filing. Availability depends on what the court source publishes; an entry with no free document is reported as such rather than guessed at. Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account. No account is needed to give a case number.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
limitNoHow many documents to return, newest first. Defaults to 20.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering safety and mutability. The description adds meaningful context: 'Availability depends on what the court source publishes; an entry with no free document is reported as such rather than guessed at' – disclosing that results may be incomplete and that it won't fabricate availability. Also notes that no account is needed for a case number, which clarifies access requirements.

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 description is moderately lengthy but each sentence contributes: action, usage, behavior, parameter guidance. It is front-loaded with the core action and follows with usage. No redundant phrasing, though it could be trimmed slightly without losing value.

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?

The description covers what is returned (entry number, text, link), explains the availability caveat, and how to identify the case. With no output schema, it adequately describes the return content. The limit parameter is documented in the schema, and the description mentions court optionality. It is complete for a read-only list tool, especially given the annotations.

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 coverage is 100%, so the baseline is 3. The description adds value by explaining when to use case_number vs matter_id ('Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account') and clarifies that court is optional. It also notes 'No account is needed to give a case number,' which helps parameter selection. This goes beyond the schema's field descriptions.

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?

The description states a specific action ('List the docket entries... that have a document available') and the exact output (entry number, text, and link). It clearly differentiates from siblings like get_case_status or get_case_deadlines by focusing on document availability rather than case progression or deadlines.

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 explicitly says 'Use this when a user asks what documents are on file, whether an order or a motion is available to read, or for a copy of a filing.' This gives clear trigger conditions. However, it does not explicitly mention alternatives or exclusions, leaving some inference to the agent about when not to use it (e.g., for deadlines).

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

get_case_mailRead CaseMail correspondenceA
Read-onlyIdempotent
Inspect

Read the correspondence delivered to a saved case's CaseMail address: messages from opposing counsel, the court, clients or anyone else the user gave the address to, with their attachments. Use when the user asks what someone emailed them about the case, what correspondence has arrived, or to find a message about a particular subject. It also surfaces any dates those messages state — "produce documents by 10/14" — quoted with the message it came from and its sender, so a deadline that arrives by email rather than on the docket is not missed; those dates are the sender's words, not an order of the court. This is case correspondence, not the user's own inbox.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoAn ISO-8601 timestamp; only messages received after it are returned.
limitNoHow many messages to return. Defaults to 20.
queryNoPlain text matched against sender, subject and body.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already mark the tool read-only, idempotent, and non-destructive, but the description adds important behavior beyond that: it surfaces dates quoted from messages along with the originating message and sender, and warns that those dates are the sender's words rather than court orders. It also reveals that attachments are included and that senders can include anyone the user gave the address to.

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 description is front-loaded with the core read action and then moves to usage guidance glasnost. The date-surfacing explanation is somewhat long but earns its place because it is a distinctive behavioral trait. It is not maximally tight, but every sentence serves tool selection or invocation.

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?

Between the 100%-documented schema, the rich annotations, and the description, an agent has what it needs to select and call the tool correctly: content, senders, attachments, date-surfacing behavior, use cases, and a clear boundary against the user's own inbox. There is no output schema, but the description adequately summarizes what the tool returns, including quoted dates with source messages and senders.

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?

The input schema provides 100% description coverage for all four parameters, including defaults and matching behavior, so the schema already carries the parameter documentation burden. The description adds contextual framing about case correspondence but no additional parameter-level semantics, matching the baseline of 3.

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?

The description names a specific action and resource: reading correspondence delivered to a saved case's CaseMail address. It enumerates senders and attachments artist-spec, and the closing contrast with the user's own inbox clearly separates it from sibling tools like get_case_updates and get_case_deadlines.

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?

The description explicitly gives trigger conditions: when the user asks what someone emailed about the case, what correspondence arrived, or to find a message about a subject. It also cautions that this is case correspondence, not the user's own inbox, and clarifies that surfaced dates are not court orders, preventing confusion with get_case_deadlines.

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

get_case_passportLoad the Case PassportA
Read-onlyIdempotent
Inspect

Retrieve the user's persistent CaseMagic record for a saved matter: case identity, parties, docket activity, correspondence and available documents, so that you can work with the facts of their case. Use this when the user asks you to load, open or catch up on their case, or when you need the facts of their matter before answering anything else about it.

ParametersJSON Schema
NameRequiredDescriptionDefault
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds the record's scope and contents but no extra behavioral traits such as auth requirements, absence behavior, or output shape; with annotation coverage, this is adequate but not enhanced.

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 sentences, each earning its place: the first defines what is retrieved and its contents, the second gives actionable usage guidance. No filler or repetition.

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?

For a one-optional-parameter, read-only, idempotent tool with good annotations and no output schema, the description fully covers what the tool returns and when to call it. The schema already handles matter_id omission rules, so no essential agent-facing detail is missing.

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% and the only parameter, matter_id, already has a precise schema description including when to omit it. The tool description adds no parameter-level meaning beyond calling it a 'saved matter', so the baseline 3 applies.

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?

The description names a specific verb-resource pair ('Retrieve the user's persistent CaseMagic record for a saved matter') and enumerates the record's contents (case identity, parties, docket activity, correspondence, documents). This clearly differentiates it from narrower siblings like get_case_status or get_case_documents.

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 second sentence gives explicit triggering conditions: user asks to load/open/catch up on a case, or needs facts before answering. It does not name sibling alternatives or state when not to use this tool, so it stops short of a 5.

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

get_case_statusGet the status of a caseA
Read-onlyIdempotent
Inspect

Return the current posture of a federal case: the assigned judge, any referred magistrate judge, the filing date, whether it is open or terminated, the cause of action, the nature of suit, how many docket entries it has and when the docket last moved. Use this when a user asks about the status of their case, who the judge is, whether a case is still open, or what a case is about. Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account. No account is needed to give a case number.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so no safety caveats are needed. The description goes beyond annotations by disclosing that a case number can be used without an account ('No account is needed to give a case number'), which is a meaningful behavioral boundary. It also details the return contents, compensating for the lack of an output schema.

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?

Three sentences, each with a distinct job: what it returns, when to use it, and how to identify the case. The return payload is front-loaded before the usage guidance, and no sentence is filler. It is dense but efficient.

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 status tool with deep annotation coverage and a 100% documented schema, the description is nearly complete: it covers return content, triggering use cases, and parameter selection. It does not discuss edge cases like multiple matches or error handling, but those are minor for this simple, safe operation.

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 coverage is 100%, so the baseline is 3. The description adds value by explaining the identification logic among parameters: case_number (optionally with court) identifies a case directly, while matter_id identifies a case already saved to the account. This relational guidance is not fully present in the individual schema descriptions and helps an agent choose the right parameter.

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?

The description uses a specific verb ('Return the current posture of a federal case') and enumerates the exact contents: assigned judge, magistrate judge, filing date, open/terminated status, cause of action, nature of suit, docket entry count, and last docket activity. This level of specificity clearly differentiates it from siblings like get_case_deadlines or get_case_documents, which serve related but distinct purposes.

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 gives explicit trigger conditions: 'Use this when a user asks about the status of their case, who the judge is, whether a case is still open, or what a case is about.' This is clear and actionable context. However, it does not name sibling tools as alternatives or state when not to use it, so it stops just short of the full 5.

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

get_case_updatesGet what changed since last timeA
Read-onlyIdempotent
Inspect

Return what is new in the user's connected cases: docket entries and CaseMail correspondence added since a given time. Use for "what changed", "what happened this week", "anything new since Friday", or "what changed across all my cases today" — for a relative period, work out the date yourself and pass it as since. With no matter_id, an account holding several cases gets a digest naming which of them moved, and an account holding one gets that one. Each entry carries the court's own wording, which is what you should read and explain when the user asks what a filing or order means.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoHow many items to return. Defaults to 50.
sinceNoAn ISO-8601 timestamp. Everything added after it is returned. Omit it to get the most recent activity rather than the whole docket.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, non-destructive), the description discloses the multi-case digest behavior when matter_id is absent and explains that each entry carries the court's own wording to read and explain. These are meaningful behavioral traits not present in the 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 compact and front-loaded: the first sentence defines the core function, followed by usage examples, parameter-specific behavior, and result interpretation. Every sentence earns its place with no repetition or filler.

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 tool with three optional parameters and no output schema, the description covers the key usage scenarios, digest behavior, and return-value interpretation ('court's own wording'). It does not describe pagination or sorting, but the schema covers limit, and the description is sufficiently complete for correct invocation.

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?

Even though schema coverage is 100%, the description adds practical semantics for `since` ('work out the date yourself') and `matter_id` (digest behavior for accounts with multiple vs. one case), which enriches the schema's dry parameter definitions.

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?

The description states a specific verb and resource: 'Return what is new in the user's connected cases' specifying docket entries and CaseMail since a given time. It clearly differentiates from siblings like get_recent_case_activity by emphasizing cross-case digests and the 'since' time filter.

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 provides concrete example queries ('what changed', 'what happened this week') and instructs how to handle relative periods by computing the date and passing `since`. It clarifies behavior when matter_id is omitted, giving clear context for use, though it does not explicitly name alternative tools or exclusions.

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

get_recent_case_activityGet recent docket activityA
Read-onlyIdempotent
Inspect

Return the most recent docket entries in a federal case, each with its entry number, filing date, the text the court published and a link to the source. Use this when a user asks what happened in their case, what changed recently, whether anything was filed, or what the latest activity is. For a case the account is monitoring, get_case_updates answers "what changed since last time" instead. Identify the case with case_number (and court, if known), or with matter_id for a case already saved to the account. No account is needed to give a case number.

ParametersJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
limitNoHow many entries to return, newest first. Defaults to 10.
sinceNoAn ISO-8601 timestamp. Only entries filed after it are returned.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds value by specifying the return content (entry number, filing date, text, link) and the account-requirement nuance ('No account is needed to give a case number'), which is not in the annotations. It does not contradict any annotation.

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 compact and well-organized: main purpose first, then usage guidance, then identifier selection. Every sentence earns its place, with no redundancy or filler. It is front-loaded with the core action.

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?

With no output schema, the description must explain the return shape, which it does (entry number, filing date, text, link). It also covers the two identification paths and the alternative tool. Minor gaps like pagination or the 'since' parameter are already in the schema, so the description is sufficiently complete for correct invocation.

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 coverage is 100%, so the baseline is 3. The description adds meaning by explaining that case_number (with court) and matter_id are alternative identifiers, and clarifies that a case number works without an account. This goes beyond the schema's per-parameter descriptions, helping the agent pick the right identifier.

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?

The description clearly states the tool returns the most recent docket entries in a federal case, listing the specific fields (entry number, filing date, text, link). It explicitly contrasts with get_case_updates, which answers 'what changed since last time', so an agent can immediately distinguish the two.

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 provides explicit when-to-use scenarios ('what happened in their case, what changed recently, whether anything was filed, or what the latest activity is') and names the alternative tool (get_case_updates) for monitoring cases. It also clarifies that a case number alone suffices without an account, guiding invocation.

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

send_case_mailDraft a CaseMail message for approvalAInspect

Write a CaseMail message from a saved case's address and return a link the user opens to review and send it. Use when the user asks you to reply to case correspondence or to write to someone about the case. Nothing is sent by this tool: the message only leaves CaseMagic after the user opens the review link and confirms it, and the link expires. Tell the user that they still have to confirm.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoOptional copied addresses.
toYesRecipient email addresses.
bodyYesThe message body, as plain text.
subjectYesThe subject line.
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false, destructiveHint=false, offering little about the tool's behavior. The description compensates fully by disclosing that 'Nothing is sent by this tool', the message only leaves CaseMagic after user confirmation, and the link expires. These are crucial behavioral details an agent needs to manage user expectations correctly.

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?

Three sentences with zero waste: the first states the core action and output, the second gives explicit usage context, and the third warns about the send flow and user confirmation. The most important caveat is placed prominently, and every sentence earns its place.

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 tool with 5 simple parameters, no output schema, and sparse annotations, the description adequately covers the key operational details: it creates a draft, returns an expiring link, requires user confirmation, and instructs the agent to tell the user. It doesn't mention potential errors or edge cases, but for this level of complexity, what's missing is minor.

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 all five parameters are already documented with definitions. The description does add the concept that the message is 'from a saved case's address', which gives context to matter_id, but it does not clarify parameter relationships or formatting beyond the schema. Baseline 3 is appropriate because the schema handles the heavy lifting.

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?

The description states a specific verb ('Write a CaseMail message'), a resource ('from a saved case's address'), and the outcome ('return a link the user opens to review and send it'). It explicitly distinguishes this from sibling tools like get_case_mail by focusing on writing/drafting rather than reading. The title 'Draft a CaseMail message for approval' reinforces the intended use.

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 gives explicit when-to-use guidance: 'Use when the user asks you to reply to case correspondence or to write to someone about the case.' It also includes a critical caveat that no sending occurs and instructs the agent to tell the user about the confirmation step. However, it does not explicitly name alternatives or state when not to use this tool, so it falls slightly short of the full 5.

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

stop_watchStop watching the caseA
Idempotent
Inspect

Stop continuous monitoring of a saved case. Use when the user asks to stop monitoring, stop alerts, pause watching, or unfollow a case. The case, its docket history, its Case Passport and its CaseMail address all remain; only the monitoring stops.

ParametersJSON Schema
NameRequiredDescriptionDefault
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true, but the description adds valuable context by specifying exactly what persists (case, docket history, passport, mail address) and that only monitoring stops. This goes beyond the annotations and gives the agent a clear mental model of the side effects.

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 sentences, front-loaded with the action and usage triggers, and then the non-destructive note. Every sentence earns its place with no filler or redundancy.

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?

For a tool with one optional parameter and a simple, well-defined behavior, the description fully covers what the tool does, when to use it, and what remains untouched. The absence of an output schema is fine because the tool likely returns nothing meaningful beyond a success signal, and the description is sufficient 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?

The single parameter matter_id is fully described in the schema (100% coverage), including guidance to omit it when only one case is followed. The description does not add extra param detail, but the schema already does the job, so a baseline score of 3 is appropriate.

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?

The description clearly states the verb 'stop' and the resource 'monitoring of a saved case', and it distinguishes itself from the sibling watch_case by explicitly noting that the case, docket history, Case Passport, and CaseMail address all remain. This leaves no ambiguity about the tool's function.

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?

The description provides explicit trigger phrases ('stop monitoring', 'stop alerts', 'pause watching', 'unfollow a case') and clarifies what does not happen, making it obvious when to use this tool versus watch_case. It is direct and actionable.

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

watch_caseWatch the case for new filingsA
Idempotent
Inspect

Begin continuous monitoring of a saved case, so that the user is alerted when anything new is filed. Use when the user asks to monitor, watch, track or follow a case, or to be told about future activity in it. The case must be saved first, with find_federal_case then create_case_passport. Watching is the paid part of CaseMagic: if the account has no plan this still succeeds and returns a checkout link with the prices — give the user that link and do not describe it as an error, because nothing has failed. It never charges anyone by itself.

ParametersJSON Schema
NameRequiredDescriptionDefault
matter_idNoThe CaseMagic matter id, as returned by create_case_passport or shown in an earlier result. Omit it when the account follows exactly one case and that is the one meant.

TDQS

A4.3/5.0
Behavior5/5

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

The description adds substantial behavioral context beyond the annotations: it reveals that watching is the paid part of the product, that a no-plan account still succeeds and receives a checkout link, that the checkout link should not be described as an error, and that the tool never charges by itself. This is exactly the kind of side-effect transparency an agent needs.

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 compact and front-loaded, with every sentence earning its place. It covers what the tool does, when to use it, prerequisites, and billing behavior without padding or redundancy.

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?

Given the tool's low complexity, one optional parameter, and no output schema, the description is complete: it explains the monitoring action, usage triggers, required prior steps, and the important billing edge case. An agent has sufficient information to call it correctly.

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?

The only parameter, matter_id, is fully described in the input schema, including when to omit it. Since schema description coverage is 100%, the description does not need to add parameter detail; the baseline of 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 clear, specific action: 'Begin continuous monitoring of a saved case, so that the user is alerted when anything new is filed.' This clearly identifies the verb, resource, and outcome, but it does not explicitly differentiate from sibling tools like get_case_updates or stop_watch beyond the general monitoring language.

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 gives explicit use guidance: 'Use when the user asks to monitor, watch, track or follow a case, or to be told about future activity in it.' It also correctly notes the prerequisite sequence 'find_federal_case then create_case_passport.' However, it does not mention when not to use it or name alternative tools for comparison.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 13 tool updates
    • First observedcreate_case_passport
    • First observedexplain_docket_entry
    • First observedfind_federal_case
    • First observedget_case_deadlines
    • First observedget_case_documents
    • First observedget_case_mail
    • First observedget_case_passport
    • First observedget_case_status
    • First observedget_case_updates
    • First observedget_recent_case_activity
    • First observedsend_case_mail
    • First observedstop_watch
    • First observedwatch_case

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Search and retrieve US federal court cases, dockets, claims, and documents via PACER — directly from Claude and other MCP-compatible AI assistants.
    10
    29 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables users to search and retrieve court docket records across US state, county, and federal courts, including PACER party searches, and to get full case details.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables searching and retrieving recent U.S. federal district court civil docket metadata, including parties, courts, docket numbers, filing and termination dates, and assigned judges, without an API key.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources