Skip to main content
Glama

DMD Costs legal costs tools

Judgment interest calculator (8% on judgment debts)

calculate_judgment_interest
Read-onlyIdempotent

Works out simple interest at 8% a year on a judgment debt in England and Wales, from the date of judgment (or a date the court ordered, or in the County Court a date for payment in the judgment) to the date you choose. High Court: any judgment (Judgments Act 1838 s.17); no rule fixes how part payments are applied, so the default is interest first, a rule of thumb the Court of Appeal accepted as fair, with the debt-first total alongside. County Court: only judgments of £5,000 or more or for a Late Payment Act qualifying debt, with the exceptions in the County Courts (Interest on Judgment Debts) Order 1991: consumer credit and suspended possession orders carry none, payments go to the debt first, County Court enforcement that produced a payment stops it, and an attachment of earnings or administration order suspends it while in force. Flags interest more than six years old (Limitation Act 1980 s.24(2)). Leap years per Lomas v Burlington. Not for interest on costs (use calculate_interest_on_costs) or interest before judgment.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "court": "<court>",
      "judgmentDate": "<judgmentDate>",
      "sum": "<sum>"
    },
    "name": "calculate_judgment_interest"
  }
}

Input Schema

NameRequiredDescriptionDefault
ccaNoCounty Court: the claim was under an agreement regulated by the Consumer Credit Act 1974 (no interest).
lpaNoCounty Court: the judgment is for a qualifying debt under the Late Payment of Commercial Debts (Interest) Act 1998, so it carries interest under £5,000.
spoNoCounty Court: a suspended possession order for a landlord or mortgagee of a dwelling (no interest).
sumYesThe judgment debt: everything the judgment orders to be paid as a sum, including any costs stated in it, in pounds (e.g. "12500.50").
leapNo"lomas" (default) divides a year containing 29 February by 366; "365" uses 365 throughout.
aoeToNoCounty Court: the date that order ended, if it has.
courtYesHigh Court or County Court.
payByNoCounty Court: the date for payment the judgment set, if any (1991 Order art 3(a)).
aoeFromNoCounty Court: the date an attachment of earnings order that produced nothing, or an administration order, came into force. If attachment of earnings produced a payment, give its start as enforcementFrom instead.
endDateNoThe date to calculate interest to (defaults to today).
paymentsNoPayments since the judgment, each with a date and an amount.
startDateNoWhere customStart is true: the date interest runs from.
paymentsToNoHigh Court only: apply payments to interest first (the default: no rule fixes the order, and the Court of Appeal accepted this rule of thumb as fair in Evonik UK Holdings Ltd v HMRC [2025] EWCA Civ 1392) or to the judgment debt first. County Court payments always go to the debt first.
customStartNoThe court ordered interest to run from another date.
instalmentsNoCounty Court: the judgment is payable by instalments (not calculated).
judgmentDateYesThe date judgment was given for the sum; where damages were assessed later, the date of that judgment.
enforcementFromNoCounty Court: the date enforcement proceedings in the County Court were taken, if they produced a payment.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • changedInput schema / properties / aoeFrom / description
      Previous value: -"County Court: the date an attachment of earnings order that produced nothing, or an administration order, came into force. If attachment of earnings produced a payment, give its start as enforcementFrom instead (YYYY-MM-DD)."New value: +"County Court: the date an attachment of earnings order that produced nothing, or an administration order, came into force. If attachment of earnings produced a payment, give its start as enforcementFrom instead."
    • changedInput schema / properties / aoeTo / description
      Previous value: -"County Court: the date that order ended, if it has (YYYY-MM-DD)."New value: +"County Court: the date that order ended, if it has."
    • changedInput schema / properties / endDate / description
      Previous value: -"The date to calculate interest to (defaults to today) (YYYY-MM-DD)."New value: +"The date to calculate interest to (defaults to today)."
    • changedInput schema / properties / enforcementFrom / description
      Previous value: -"County Court: the date enforcement proceedings in the County Court were taken, if they produced a payment (YYYY-MM-DD)."New value: +"County Court: the date enforcement proceedings in the County Court were taken, if they produced a payment."
    • changedInput schema / properties / judgmentDate / description
      Previous value: -"The date judgment was given for the sum; where damages were assessed later, the date of that judgment (YYYY-MM-DD)."New value: +"The date judgment was given for the sum; where damages were assessed later, the date of that judgment."
    • changedInput schema / properties / payBy / description
      Previous value: -"County Court: the date for payment the judgment set, if any (1991 Order art 3(a)) (YYYY-MM-DD)."New value: +"County Court: the date for payment the judgment set, if any (1991 Order art 3(a))."
    • changedInput schema / properties / payments / items / properties / amount / description
      Previous value: -"Amount paid, in pounds, e.g. \"12500\" or \"12,500.50\"."New value: +"Amount paid, in pounds (e.g. \"12500.50\")."
    • changedInput schema / properties / payments / items / properties / date / description
      Previous value: -"Date paid (YYYY-MM-DD)."New value: +"Date paid."
    • changedInput schema / properties / startDate / description
      Previous value: -"Where customStart is true: the date interest runs from (YYYY-MM-DD)."New value: +"Where customStart is true: the date interest runs from."
    • changedInput schema / properties / sum / description
      Previous value: -"The judgment debt: everything the judgment orders to be paid as a sum, including any costs stated in it, in pounds, e.g. \"12500\" or \"12,500.50\"."New value: +"The judgment debt: everything the judgment orders to be paid as a sum, including any costs stated in it, in pounds (e.g. \"12500.50\")."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already mark it read-only, idempotent and non-destructive, but the description adds significant behavioral detail: the 8% rate, start-date rules, payment allocation defaults, County Court exceptions, limitation flagging and leap-year treatment. There is no contradiction with 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded and every legal detail is relevant to correct calculation. However, it is a dense single paragraph with long parenthetical clauses, so it is informative rather than truly concise.

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 complex 17-parameter legal calculator with full schema coverage and annotations, the description supplies the key legal context, exclusions and calculation rules an agent needs. It also mentions the debt-first total and six-year flag despite there being no output schema.

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 schema already documents all 17 parameters in detail. The description still adds legal meaning beyond the schema by explaining the Court-specific payment rules, Consumer Credit Act and suspended possession exceptions, and attachment-of-earnings effects.

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: it works out simple interest at 8% a year on a judgment debt in England and Wales. It also explicitly distinguishes itself from sibling tools by saying it is not for interest on costs or interest before judgment.

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 explicit when-to-use rules for High Court and County Court judgments, including the £5,000 threshold and Late Payment Act exception. It names the alternative for interest on costs and excludes pre-judgment interest.

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