CalcBright Calculators
Server Details
160+ calculators: take-home pay for 166 countries, mortgage, loan, VAT, BMI, dates, units, currency.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 167 tools
Many tools target adjacent financial concepts (e.g., compound_interest vs future_value vs savings_goal, mortgage vs amortization vs mortgage_payoff), and the sheer number of calculators creates selection friction. However, descriptions are detailed enough that a careful agent can distinguish most tools by their stated purpose, so boundaries are usually clear once read.
All tool names follow a predictable snake_case pattern of subject + tool type (e.g., _calculator, _converter, _checker, _solver). The convention is applied uniformly across 167 tools, making the set easy to scan and remember.
167 tools is an extreme mismatch for a single MCP server, far exceeding the 50-tool threshold for 'extreme mismatch'. Even though each calculator is self-contained, the volume creates excessive cognitive load and makes tool selection impractical without external indexing.
The surface covers an enormous range of calculator domains—finance, health, math, dates, conversions, taxes, construction, and more—with few obvious gaps for a general-purpose calculator suite. Minor omissions may exist (e.g., specialized scientific or regional calculators), but agents can work around them easily.
Available Tools
167 tools401k_calculator401(k) CalculatorBRead-onlyIdempotentInspect
$75,000 at 10% with a 50% match up to 6% grows to $2.3 million by 65. This 401k calculator applies the 2026 $24,500 limit, catch-ups and a stop age. Web page: https://calcbright.com/401k-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Current age (years) | |
| rate | No | Expected annual return (%) | |
| match | No | Employer match (%) e.g. 50% of what you contribute… | |
| raise | No | Annual salary increase (%) | |
| salary | No | Annual salary | |
| balance | No | Current 401(k) balance | |
| stopAge | No | Stop contributing at age (years) Optional – e.g. when you move to a Gulf or other non-US employer. The balance stays invested until retirement. | |
| inflation | No | Inflation (% a year) Optional – shows the final balance in today’s dollars. | |
| retireAge | No | Retirement age (years) | |
| matchLimit | No | …up to (% of pay) | |
| contribution | No | Your contribution (% of pay) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe, idempotent, closed-world read, so the bar is low, and the description still adds real behavior: it enforces the 2026 $24,500 contribution limit, models catch-up contributions, and supports a stop age. Those are modeling assumptions not derivable from any structured field. It stops short of saying what the calculation returns (a single balance versus a year-by-year schedule).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences plus a URL is an appropriate length, but the description is front-loaded with a worked example result rather than a statement of purpose, so an agent must read to the second sentence to learn what the tool does. The calcbright.com link adds little for an agent that cannot browse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 optional parameters and no output schema, the description should say what comes back and how the stop age and inflation inputs affect the result. It covers the contribution-limit logic but leaves the return shape and the interaction between stopAge, retireAge, and inflation unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the 11 parameters are already documented with ranges and defaults, which sets the baseline at 3. The opening example usefully illustrates how contribution, match, and matchLimit combine, but the description adds no unit, format, or interaction guidance beyond what the schema already carries.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a 401(k) growth projector and names specific modeling behaviors (the 2026 $24,500 limit, catch-ups, and a stop age). It is clear what the tool computes, but it never distinguishes itself from close siblings such as retirement_calculator, roth_ira_calculator, or future_value_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no routing to or away from alternatives, despite a crowded field of adjacent retirement and savings calculators. The Gulf-employer scenario that would justify stopAge lives in the schema, not in the description, so the agent gets no help choosing this tool over a generic retirement calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
age_calculatorAge CalculatorARead-onlyIdempotentInspect
Your exact age in years, months and days from your date of birth, plus total weeks and days, the weekday you were born and how long until your next birthday. Web page: https://calcbright.com/age-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | Age on date Leave empty to use today's date. (YYYY-MM-DD) | |
| birth | No | Date of birth (YYYY-MM-DD) | 1990-01-01 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a read-only, idempotent, closed-world operation, so the safety profile is covered. The description goes beyond them usefully by listing the computed outputs, which is meaningful here since there is no output schema. It stops short of edge-case behavior (e.g. future dates, default birth date of 1990-01-01).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence carrying the full output list, with no filler. The trailing marketing URL is extraneous for tool selection but does not impede comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only calculator with no output schema and no nested objects, the description adequately conveys what the tool computes and returns. Only minor gaps remain: no alternative-tool routing and no mention of the asOf parameter or default birth date behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (birth, asOf) are documented in structured form and the baseline is 3. The description implies the birth input but never mentions the optional asOf date, adding essentially no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (computes exact age from date of birth) and enumerates the derived outputs (years/months/days, total weeks and days, birth weekday, next-birthday countdown), so its scope is unmistakable. It does not, however, draw any boundary against close siblings like date_difference_calculator or day_of_week_calculator, which share part of this surface.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance and never names an alternative, despite several near-neighbors (date_calculator, date_difference_calculator, day_of_week_calculator, countdown_calculator). An agent must infer from the tool name alone which of these date tools to select.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
amortization_calculatorAmortization CalculatorBRead-onlyIdempotentInspect
$300,000 at 6.5% for 30 years costs $382,636.71 in interest. This amortization calculator splits each payment and shows extra-payment and settlement savings. Web page: https://calcbright.com/amortization-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Interest rate (% per year) | |
| term | No | Loan term | |
| unit | No | Term in | years |
| basis | No | Rate type Gulf personal and car loans are often quoted flat – interest on the original amount for the whole term. | reducing |
| extra | No | Extra payment / month Added to principal every month from the first payment. | |
| start | No | First payment date (YYYY-MM-DD) | 2026-11-01 |
| amount | No | Loan amount | |
| settle | No | Settle after payment # Shows what is still owed at that point – the figure a settlement is worked out from. | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so the description only needs to add computational context. It does disclose what the calculation produces (payment splits, interest total, settlement figure) and gives a concrete numerical example, but says nothing about output structure, per-payment granularity, or how flat vs reducing basis alters results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no wasted words. It leads with a numeric example rather than a purpose statement, which is slightly less front-loaded for tool selection, but the second sentence immediately names the function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nine-parameter financial calculator with no output schema, the description should say more about what comes back — a schedule, a summary, one row per payment. It conveys the headline outputs and offers a documentation URL, but an agent still cannot anticipate the response shape or column set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all nine parameters are already documented in structured data, establishing a baseline of 3. The description adds nothing parameter-specific beyond mirroring the schema defaults in its example (300,000 / 6.5% / 30 years).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and what it produces: it 'splits each payment and shows extra-payment and settlement savings', which is more precise than a generic 'calculates loan payments'. It does not, however, distinguish itself from the numerous amortization-capable siblings like mortgage_calculator or loan_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to choose this over alternatives, even though the sibling list contains at least five tools that compute loan amortization. The mention of extra-payment and settlement scenarios implies use cases but never states when-not or which sibling to prefer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
annuity_calculatorAnnuity CalculatorARead-onlyIdempotentInspect
$100,000 at 5% pays $659.96 a month for 20 years. This annuity calculator also finds the lump sum for an income and the rate hidden in an insurer’s quote. Web page: https://calcbright.com/annuity-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | I want to find | payout |
| rate | No | Annual interest rate (%) Compounded at the payment frequency. | |
| quote | No | Payment the quote offers (first payment) For a life annuity, set the period to the years you expect to receive it. | |
| years | No | Payout period (years) | |
| amount | No | Lump sum (starting balance) | |
| growth | No | Payment increase each year (%) E.g. 2–3% to keep pace with inflation. | |
| timing | No | Paid at | end |
| currency | No | Currency | USD |
| frequency | No | Payments | 12 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this a read-only, idempotent, closed-world computation, so the safety profile needs no restating. The description adds genuine context by disclosing the three calculation modes and by showing a sample result, which hints at output shape. It says nothing about rounding, currency handling, or how growth and timing interact with the result, which is the remaining behavioral gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with a concrete worked example, followed by a one-line enumeration of the other two modes. No filler, and the trailing web page URL is short and clearly separable from the substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the sample result partly compensates by implying the returned figure. The real gap is mode-to-parameter routing: with 9 parameters and no required fields, the description never says that quote matters only in rate mode or that amount is irrelevant in payout mode. For a multi-mode calculator that is a meaningful omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including the mode enum already carries its own documentation. The description's contribution is limited to naming the three mode scenarios and pairing example values with amount/rate/years, which reinforces but does not extend the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (annuity) and enumerates its three outputs: periodic payout, the lump sum needed for a given income, and the implied rate in a quote. The worked example ('$100,000 at 5% pays $659.96 a month for 20 years') makes the primary payout calculation concrete. It stops short of explicitly distinguishing itself from near neighbors like compound_interest_calculator or retirement_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the three scenario phrases ('finds the lump sum for an income', 'the rate hidden in an insurer's quote'), which do map onto the mode enum values payout/needed/rate. There is no statement of when to prefer this over sibling calculators, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apr_calculatorAPR CalculatorBRead-onlyIdempotentInspect
A 2.99% flat loan with a 1.05% fee is really 6.19% APR. This APR calculator adds upfront fees, converts flat rates and shows the SAMA-style effective rate. Web page: https://calcbright.com/apr-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| fees | No | Upfront fees Processing, origination, admin fees and points – anything you must pay to get the loan. | |
| rate | No | Interest rate (%) | |
| term | No | Loan term (months) | |
| basis | No | Rate type A flat rate charges interest on the full amount for the whole term, even as you repay it. | reducing |
| amount | No | Loan amount | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so the safety profile is covered. The description adds genuine methodology context (fees are capitalized into the APR, flat rates are converted, a SAMA-style effective rate is produced), which annotations cannot express. However, it says nothing about what the response actually contains — no output schema exists, so the return shape is left unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The lead example is front-loaded and immediately conveys the value, followed by a tight sentence on capabilities. The trailing web-page URL is filler for an agent caller and slightly dilutes an otherwise efficient three-sentence structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Six optional parameters all defaulted and no output schema means the description should explain what comes back (APR only? monthly payment? total interest?) and what the defaults imply — it does neither. It is adequate for invoking the tool but leaves the agent guessing about the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with per-parameter descriptions for fees, rate, term, basis and currency, so the schema does the heavy lifting. The description adds no parameter-level detail beyond the general framing that fees and flat rates are inputs. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: converts flat rates, adds upfront fees, and reports an APR plus a SAMA-style effective rate, illustrated with a concrete worked example. It is clearly not a plain loan-payment tool, but it never names the adjacent siblings (loan_calculator, simple_interest_calculator, amortization_calculator) so the boundary is inferred rather than declared.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the example of a flat 2.99% loan with a 1.05% fee — an agent can infer this is for true-cost-of-credit comparisons. There is no explicit when-to-use, when-not-to-use, or alternative-tool routing against the many loan and interest calculators in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
area_calculatorArea CalculatorBRead-onlyIdempotentInspect
Area of a rectangle, square, triangle, circle, trapezoid, parallelogram or ellipse from your measurements, with the formula and the working shown. Web page: https://calcbright.com/area-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | Length | |
| y | No | Width | |
| z | No | ||
| unit | No | Unit | m |
| shape | No | Shape | rectangle |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, closed-world), so the bar is lower. The description adds genuine output behavior beyond annotations: it reports the formula and the working steps, which matters because there is no output schema. It stops short of describing formatting or unit handling in the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with the resource and supported shapes, then the output behavior. The documentation URL is mildly extraneous but not distracting.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly covers what comes back (formula plus working). What it omits is the shape-to-parameter mapping needed to call the tool correctly for non-rectangular shapes, and why 'z' exists and when it is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 80%, so the schema already documents x (Length), y (Width), unit, and shape; baseline is 3. The description adds nothing about which of x/y/z applies to which shape, which is the key ambiguity here (e.g., a circle needs only one dimension, but x/y/z are all free-form numbers with 'z' completely undocumented in both schema and description).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (area) and enumerates the exact shapes supported, which lets an agent know it covers rectangle/square/triangle/circle/trapezoid/parallelogram/ellipse. It does not, however, distinguish itself from overlapping siblings like circle_calculator, triangle_calculator, or square_footage_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance. Given the dense sibling set, the definition should have said whether this is the general-purpose geometry area tool that supersedes the shape-specific siblings; instead the agent must guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_loan_calculatorCar Loan CalculatorBRead-onlyIdempotentInspect
AED 96,000 at 2.49% flat over 5 years is AED 1,799.20 a month – really 4.72% APR. This car loan calculator adds VAT, trade-in and a final balloon payment. Web page: https://calcbright.com/auto-loan-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| tax | No | Sales tax (%) Use 0 if the price already includes VAT, as UAE and Saudi showroom prices do. | |
| down | No | Down payment | |
| rate | No | Interest rate (% per year) | |
| term | No | Loan term (months) | |
| basis | No | Rate type Gulf banks and dealers usually quote a flat rate: interest on the full amount for the whole term. | reducing |
| price | No | Vehicle price | |
| balloon | No | Final payment A lump sum paid with the last installment – common on Saudi lease-to-own finance. Leave 0 for none. | |
| taxBase | No | Tax charged on Most US states tax only the difference; California taxes the full price. | net |
| tradeIn | No | Trade-in value | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a read-only, idempotent calculation, so safety behavior is covered. The description adds useful context that it handles VAT, trade-in, balloon payments, and flat-rate-to-APR conversion, but it does not clarify exactly what results are returned beyond the single example.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads a concrete example before explaining the calculator's features. The web page URL is useful but slightly ancillary; overall there is little wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 optional parameters and no output schema, the description should ideally clarify the return values and usage context more fully. It gives a useful example output and mentions major features, but omits explicit description of what the calculator returns beyond the illustrative monthly payment and APR.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameter meaning is already well documented. The description reinforces a few key concepts, especially flat rate versus APR and the inclusion of VAT, trade-in, and balloon payments, but it does not add detailed semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a car loan calculator and shows a concrete payment example. It also names key features (VAT, trade-in, balloon payment), which helps distinguish it from a generic loan calculator, though it does not explicitly contrast itself with siblings like car_lease_calculator or loan_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this is for car loan calculations but gives no explicit guidance on when to use it instead of related tools. It does not mention alternatives, exclusions, or regional/use-case conditions beyond the feature list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
average_calculatorAverage CalculatorARead-onlyIdempotentInspect
Paste a list of numbers to get the mean, median, mode, range, sum and count at once – with the working for each, so you can see why mean and median differ. Web page: https://calcbright.com/average-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| numbers | No | Numbers Separate values with commas, spaces or new lines. | 4, 8, 15, 16, 23, 42 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, so safety is covered. The description adds real value beyond them by disclosing the return shape (six statistics computed at once) and that per-statistic working is shown, including an explanation of why mean and median differ — useful for a tool with no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and the payoff, and the second clause justifies the value of seeing the working. The trailing marketing URL is the only low-value element, but the definition stays to two compact sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only, idempotent calculator with no output schema, the description covers inputs, computed outputs, and the explanatory framing well enough to invoke it correctly. Edge-case behavior (invalid or empty input, very long lists) is unaddressed, which is acceptable but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema description coverage is 100%, so the separator syntax (commas, spaces, new lines) and the default list are already fully documented in the schema. The description adds nothing about input format or limits (e.g., the 100000-char cap), so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb-plus-resource: ingests a pasted list of numbers and returns mean, median, mode, range, sum and count in one pass. It enumerates the outputs, which implicitly separates it from stat siblings like standard_deviation_calculator or percentage_calculator, but it never names or contrasts an alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Paste a list of numbers" implies the input context, and the six-in-one output hints at bulk summarization rather than single-value math. However, there is no explicit when-to-use/when-not guidance and no routing to sibling calculators for related needs such as standard deviation or percentages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bmi_calculatorBMI & Calorie CalculatorBRead-onlyIdempotentInspect
70 kg at 1.75 m is a BMI of 22.9. Check your Body Mass Index in kg/cm or lb/ft, the healthy weight range for your height, your BMR and daily calorie needs. Web page: https://calcbright.com/bmi-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| age | No | Age (years) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| units | No | Units | metric |
| activity | No | Activity level | light |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral context by disclosing that the tool returns multiple derived values (BMI, healthy range, BMR, calorie needs), which matters because there is no output schema. It stops short of explaining how the metric/imperial parameters interact or which inputs drive which outputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short, but the leading sentence is a sample calculation rather than a purpose statement, so the front-loaded content does not tell the agent what the tool is or when to use it. The trailing web-page URL is promotional and consumes space without aiding invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With nine fully documented parameters, zero required inputs, and no output schema, the description does the necessary compensating work by enumerating the returned metrics (BMI, healthy weight range, BMR, daily calories). It leaves the metric-vs-imperial input convention and default behavior unexplained, which is a modest gap for a calculator with defaults pre-filled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the nine parameters and their enums are already documented by the schema, and the baseline of 3 applies. The description only gestures at parameter semantics through the 'kg/cm or lb/ft' phrasing, adding no detail beyond what the schema's units enum already conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names concrete outputs — BMI in kg/cm or lb/ft, healthy weight range, BMR and daily calorie needs — and anchors them with a worked example (70 kg at 1.75 m = BMI 22.9), so an agent knows exactly what the tool computes. However, it does not differentiate itself from close siblings like bmr_calculator, tdee_calculator, and ideal_weight_calculator, which it arguably overlaps with; it never says how it differs from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to pick this over the many adjacent health calculators (bmr_calculator, tdee_calculator, body_fat_calculator, ideal_weight_calculator, macro_calculator). Because the tool advertises overlapping outputs (BMR, calorie needs), the omission is actively confusing rather than merely absent — an agent cannot infer selection criteria from the text.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bmr_calculatorBMR CalculatorARead-onlyIdempotentInspect
Your basal metabolic rate from Mifflin–St Jeor, revised Harris–Benedict and Katch–McArdle side by side, plus daily calorie needs at five activity levels. Web page: https://calcbright.com/bmr-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| age | No | Age (years) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| units | No | Units | metric |
| bodyFat | No | Body fat (optional, for Katch–McArdle) (%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description goes beyond that by disclosing what the computation actually produces — three formula variants side by side plus calorie needs at five activity levels — which tells the agent the return shape despite there being no output schema. It stops short of noting the optional bodyFat dependency behavior or the metric/imperial parameter duplication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, the substance front-loaded and the URL relegated to the end. Every sentence carries information, though the trailing promotional web-page link is marginal for an agent's decision-making.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a stateless, read-only calculator, the description does the heavy lifting by enumerating the returned values and formulas. Combined with the fully documented schema, an agent has enough to invoke it correctly; only the unit-input interplay is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with 9 documented parameters, so the baseline is 3. The description adds a little meaning (bodyFat feeds Katch–McArdle, and calorie output is generated at five activity levels rather than via a parameter), but it does not explain the metric/imperial switch or why both cm and ft/inch and kg and lb coexist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (basal metabolic rate), the three named formulas (Mifflin–St Jeor, revised Harris–Benedict, Katch–McArdle), and the additional output (daily calorie needs at five activity levels). That is far more specific than a bare name restatement. It does not, however, distinguish itself from close siblings such as tdee_calculator, calorie_deficit_calculator, or macro_calculator, which an agent could easily confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no prerequisites, and no named alternative. With many overlapping fitness/energy siblings (tdee_calculator, calorie_deficit_calculator, calories_burned_calculator, macro_calculator), an agent gets no routing help about when BMR is the right tool versus those.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
body_fat_calculatorBody Fat CalculatorARead-onlyIdempotentInspect
Body fat % from a tape measure with the US Navy (Hodgdon–Beckett) formula: enter neck, waist and hips to get your ACE category, fat mass and lean mass. Web page: https://calcbright.com/body-fat-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| hipCm | No | Hips (widest point) (cm) | |
| hipIn | No | Hips (widest point) (in) | |
| units | No | Units | metric |
| neckCm | No | Neck (below the larynx) (cm) | |
| neckIn | No | Neck (below the larynx) (in) | |
| waistCm | No | Waist (men: at navel · women: narrowest) (cm) | |
| waistIn | No | Waist (men: at navel · women: narrowest) (in) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, so safety is covered. The description adds genuine value with no output schema present by naming what is returned (ACE category, fat mass, lean mass) and the formula used, but it omits that hips are only relevant for females in this formula and says nothing about metric/imperial switching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded single sentence delivering formula, inputs and outputs, plus a web page link. Efficient overall, though the trailing URL is promotional rather than functional.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 13-parameter tool with no required fields and no output schema, the description covers inputs and outputs but leaves real ambiguity unresolved: which units param to use, that height/weight and circumference each have metric and imperial duplicates, and that hip measurements apply only to women.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all 13 parameters with units and ranges; the description only restates neck/waist/hips. Baseline 3 is appropriate since the schema does the heavy lifting and the description adds no syntax or unit-selection guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Body fat % from a tape measure'), names the exact formula (US Navy Hodgdon–Beckett), lists the inputs (neck, waist, hips) and outputs (ACE category, fat mass, lean mass). This clearly distinguishes it from siblings like bmi_calculator, lean_body_mass_calculator and waist_to_hip_ratio_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The tool is implicitly scoped to a tape-measure method, which hints at when it applies, but there is no explicit when-to-use/when-not guidance and no reference to the alternative body-composition siblings an agent would have to choose between.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
body_surface_area_calculatorBody Surface Area CalculatorBRead-onlyIdempotentInspect
A person 170 cm tall weighing 70 kg has a body surface area of 1.82 m² by the Mosteller formula. See Du Bois and Haycock results next to it, in metric or imperial. Web page: https://calcbright.com/body-surface-area-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| units | No | Units | metric |
| height | No | Height (cm) | |
| weight | No | Weight (kg) | |
| heightIn | No | Height (inches) | |
| weightLb | No | Weight (pounds) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, and non-open-world behavior. The description adds genuine value beyond them by disclosing that three formulas (Mosteller, Du Bois, Haycock) are returned and that both unit systems are supported, which an agent cannot derive from the annotations or schema alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with the worked example front-loaded, which is efficient. However, the leading example is a weak substitute for a purpose statement, and the trailing web-page URL is promotional padding that does not help an agent invoke the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description partially compensates by showing a sample result (1.82 m²) and naming the three returned formula values, so an agent can anticipate the return shape. The remaining gap is the absence of any explicit statement of which inputs map to which units.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 five parameters and their bounds. The description only echoes units (metric/imperial) and implies height/weight, adding no syntax, ranges, or semantics beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states the verb directly; it relies on an example ('A person 170 cm tall weighing 70 kg has a body surface area of 1.82 m²') plus formula names to imply that it computes BSA. The resource is clear from the name/title, but there is no explicit statement of what the tool does and no differentiation from siblings like bmi_calculator, body_fat_calculator, or lean_body_mass_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus related body-metric calculators, nor on which formula to prefer or when to pick metric vs imperial. The reader must infer all usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
break_even_calculatorBreak-Even CalculatorBRead-onlyIdempotentInspect
How many units must you sell before you make a profit? Enter fixed costs, price and variable cost to get break-even units, revenue and contribution margin. Web page: https://calcbright.com/break-even-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| fixed | No | Fixed costs (per period) Rent, salaries, insurance… | |
| price | No | Price per unit | |
| currency | No | Currency | USD |
| variable | No | Variable cost per unit Materials, packaging, commission… |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds the return fields (units, revenue, contribution margin), which the absent output schema would otherwise hide, but says nothing about defaults being applied when inputs are omitted or about currency affecting the results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the motivating question front-loaded, followed by inputs and outputs. The trailing marketing URL is minor padding but does not obscure the core content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates what comes back, and all four parameters are covered by the schema. It stops short of explaining default-driven behavior (e.g. a call with no arguments returns the 12000/50/30 case) or how currency shapes the outputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 fixed, price, variable and the currency enum. The description merely echoes three of the four parameters and adds no format, unit or default semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific question ('How many units must you sell before you make a profit?') and names both the inputs (fixed, price, variable) and the outputs (break-even units, revenue, contribution margin). It is clearly distinct from siblings like profit_margin_calculator or markup_calculator, though it never explicitly contrasts itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the list of inputs; there is no statement of when to choose this tool over adjacent ones such as profit_margin_calculator or roi_calculator, and no prerequisites or exclusions. An agent must infer the scenario entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
btu_calculatorBTU CalculatorARead-onlyIdempotentInspect
Size an air conditioner or heater in BTU/h, tons and kW from room area, ceiling height, sun and occupants – with a Gulf climate setting for the UAE and Saudi. Web page: https://calcbright.com/btu-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| sqm | No | Room area (m²) Length × width of the room. | |
| sun | No | Sun exposure | normal |
| mode | No | Sizing for | cooling |
| sqft | No | Room area (sq ft) Length × width of the room. | |
| ceilM | No | Ceiling height (m) | |
| units | No | Units | imperial |
| ceilFt | No | Ceiling height (ft) | |
| climate | No | Climate | temperate |
| kitchen | No | Is it a kitchen? | no |
| occupants | No | People usually in the room |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and closed-world behavior. The description adds useful context by specifying output units and the Gulf climate setting for the UAE and Saudi, though it does not elaborate on calculation assumptions or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the tool's core function, supported inputs, output units, and a regional feature. The appended web page URL is minimal and useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description fully explains the return values (BTU/h, tons, kW). It also summarizes the inputs and highlights the Gulf climate specialization, making it complete enough for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameter details are already in the schema. The description names a few key inputs (area, ceiling height, sun, occupants) but adds no syntax, constraints, or defaults beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Size') and resource ('air conditioner or heater'), names the output units (BTU/h, tons, kW), and lists key inputs. It clearly distinguishes this tool from generic area or unit converters by focusing on HVAC sizing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose implies usage for sizing air conditioners or heaters, but there are no explicit when-to-use or when-not-to-use guidelines. Alternative sibling tools like area_calculator or electricity_cost_calculator are not mentioned, leaving routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
budget_calculatorBudget CalculatorCRead-onlyIdempotentInspect
AED 15,000 take-home with AED 66,000 rent and AED 4,000 of other needs is a 63/17/20 budget. Split pay by the 50/30/20 rule, real rent and remittances. Web page: https://calcbright.com/budget-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rent | No | Rent or home loan payment (optional) Leave empty for the plain 50/30/20 split | |
| bills | No | Other essential costs a month (optional) Utilities, groceries, transport, school fees, insurance, minimum loan payments | |
| remit | No | Money sent home a month (optional) | |
| income | No | Monthly take-home income After tax and deductions | |
| cheques | No | Number of rent cheques a year | 4 |
| remitAs | No | Money sent home is | need |
| currency | No | Currency | USD |
| needsPct | No | Needs (%) | |
| wantsPct | No | Wants (%) Savings get whatever is left | |
| rentPeriod | No | Rent is paid | month |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is fully covered and the description correctly does not contradict it. The example does add a small amount of behavioural signal by showing the output takes the form of a percentage split (63/17/20). However, it says nothing about how custom needsPct/wantsPct interact with actual rent and bills, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences plus a URL, so length is fine, but the structure is not front-loaded: it opens with a numeric example instead of stating what the tool does. The example itself requires the reader to reverse-engineer the inputs (which figure is income, which is annual rent) and does not earn its place without that context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 parameters and no output schema, the description carries the burden of explaining what the tool returns, and it does not do so beyond an implicit percentage split. It also omits any guidance on non-obvious inputs such as rentPeriod, cheques, and remitAs that materially change the result. For a parameter-rich calculator this leaves meaningful gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including rent, remit, remitAs, and cheques is already documented in the schema; baseline 3 applies. The description's mention of 'real rent and remittances' loosely reinforces those inputs but adds no syntax, default, or interaction detail beyond the schema. The confusing 66,000-rent-against-15,000-income example arguably muddies rather than clarifies the rent/rentPeriod and cheques parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description does convey, via 'Split pay by the 50/30/20 rule, real rent and remittances', that this tool divides income into needs/wants/savings while accounting for rent and remittances. But the leading sentence is a worked numeric example (AED 15,000 income vs AED 66,000 rent yielding 63/17/20) rather than a purpose statement, and the monthly-vs-annual framing is confusing on first read. No sibling differentiation is offered against near-neighbours like rent_affordability_calculator, take_home_pay_calculator, or savings_goal_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all: nothing says whether this is for planning a new budget, testing affordability, or evaluating a rent offer. No alternatives are named even though the sibling list contains several overlapping budgeting and affordability tools. The agent must infer the use case entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
business_days_calculatorBusiness Days CalculatorBRead-onlyIdempotentInspect
January 2026 has 22 Mon–Fri working days but 21 on Saudi Arabia’s Fri–Sat weekend. Count or add business days for any weekend, minus public holidays. Web page: https://calcbright.com/business-days-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date (YYYY-MM-DD) | 2026-01-31 |
| days | No | Business days to add Use a negative number to go back in time. | |
| mode | No | What do you want to do? | count |
| start | No | Start date (YYYY-MM-DD) | 2026-01-01 |
| weekend | No | Weekend | sat-sun |
| holidays | No | Public holidays on working days Holidays that fall on a working day inside the period – each one is skipped. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and closed-world behavior. The description adds that results vary by weekend definition and subtract holidays, but it does not explain the return value or how count/add modes interact with the date parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short and mostly wasted-motion-free, with a relevant illustrative example. The example appears before the core purpose and the web-page URL is extra, but neither is disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter calculator with no output schema, the description omits what is returned and how start, end, and days behave differently in count versus add mode. It covers the weekend and holiday concepts but leaves mode-specific parameter interaction underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reinforces weekend, holidays, and count/add semantics already present in the schema, but adds no format or edge-case detail beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific operation, 'Count or add business days,' and a specific resource, business days, with weekend and holidays context. This distinguishes it from generic date calculators, though it does not explicitly name sibling alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for business-day counting or adding with configurable weekends and public holidays. It gives no explicit when-not guidance or alternatives such as date_difference_calculator or holiday_entitlement_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cagr_calculatorCAGR CalculatorBRead-onlyIdempotentInspect
AED 1.2M to AED 1.65M in 6 years is a 5.45% CAGR, but 4.05% after buying and selling costs. Find CAGR, reverse CAGR, doubling time and real growth. Web page: https://calcbright.com/cagr-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Ending value | |
| mode | No | Calculate | rate |
| rate | No | Growth rate a year (%) Use a minus sign for a yearly decline. | |
| begin | No | Beginning value | |
| years | No | Number of years (years) Part-years as decimals: 30 months = 2.5, 3 years 9 months = 3.75. | |
| returns | No | Yearly returns in %, oldest first One figure per year, separated by commas or spaces – e.g. a fund’s calendar-year returns. | 50, -50 |
| currency | No | Currency | USD |
| inflation | No | Inflation a year (optional) (%) Adds the real growth rate after inflation. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety and determinism are covered. The description adds useful behaviour beyond that: it can invert the calculation (reverse CAGR), derive doubling time, and layers inflation on top to produce a real growth rate. It does not say anything about rounding, output shape or how costs are treated, even though the example cites a post-cost figure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, with the illustrative example front-loaded so the agent immediately sees the shape of the answer. However the example spends half the text on an unparameterised cost scenario, and the feature list is a bare enumeration with no indication of which mode value enables which output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, no required fields and no output schema, the description should at minimum map the four mode enum values (rate, end, years, returns) to the advertised outputs, and it does not. It conveys enough to know the tool is a pure read-only calculator, but an agent must open the schema to learn how to drive it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains begin, end, years, rate, returns, currency and inflation, and the baseline of 3 applies. The description adds almost nothing parametrically, and the 'buying and selling costs' in the example map to no input parameter, which risks misleading an agent into expecting a cost field.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the concrete outputs the tool computes (CAGR, reverse CAGR, doubling time, real growth) and anchors them with a worked example, so the resource is unambiguous. It stops short of differentiating from near-neighbours such as compound_interest_calculator, future_value_calculator, rule_of_72_calculator or roi_calculator, which an agent would need in order to pick correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use statement and no reference to any sibling tool. The investment example implies a growth-over-time scenario, but an agent comparing this against compound_interest_calculator or percentage_change_calculator gets no routing signal at all.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calorie_deficit_calculatorCalorie Deficit CalculatorBRead-onlyIdempotentInspect
Your maintenance calories, a daily target for losing 0.25–1 kg (0.5–2 lb) a week and the weeks to your goal weight – never set below safe minimum intakes. Web page: https://calcbright.com/calorie-deficit-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| age | No | Age (years) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| rate | No | Weight loss per week (kg) | 0.5 |
| units | No | Units | metric |
| goalKg | No | Goal weight (kg) | |
| goalLb | No | Goal weight (lb) | |
| activity | No | Activity level | moderate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so the safety profile is covered. The description does add one genuinely behavioral fact beyond the schema - results are 'never set below safe minimum intakes' - but says nothing about unit-pair resolution, rounding, or what happens when the goal weight is unreachable at the chosen rate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the opening is a verbless fragment ('Your maintenance calories, a daily target... and the weeks to your goal weight') that takes a second read to parse. Roughly half the text is a promotional 'Web page:' URL that does not help an agent decide or invoke anything.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the three returned values, which is the right move. However, for a 12-parameter tool with four metric/imperial duplicate pairs and a unit switch, it never explains how the two measurement systems interact or which inputs are ignored when a unit mode is chosen - a real gap for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (12/12 params documented), so the schema already carries parameter meaning. The description only echoes the rate range (0.25-1 kg / 0.5-2 lb) and adds nothing about the cm/ft/inch and kg/lb duplicate pairs or how `units` selects between them. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the resource and the concrete outputs (maintenance calories, a daily deficit target, weeks-to-goal), which is more specific than a bare title restatement. It does not differentiate from close siblings such as tdee_calculator or bmr_calculator, both of which also produce maintenance/calorie figures, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no sibling is named as an alternative despite a very crowded calorie/BMR/TDEE family. The only implied use case (weekly weight-loss planning) comes from the output description, not from routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calories_burned_calculatorCalories Burned CalculatorBRead-onlyIdempotentInspect
Calories burned walking, running, cycling, swimming, lifting and 20+ more activities, from Compendium MET values, your body weight and the time spent. Web page: https://calcbright.com/calories-burned-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| units | No | Units | metric |
| minutes | No | Duration (min) | |
| activity | No | Activity | run-6 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is fully covered. The description adds genuinely useful methodology context (results derive from Compendium MET values), but says nothing about output shape, precision, or how unit selection interacts with the kg/lb fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence carries the resource, method and inputs, with no redundancy. The trailing calcbright.com URL is extraneous for an agent invoking the tool but is not disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter, annotation-covered calculator with a fully documented schema, the description supplies enough to invoke it correctly, and 'calories burned' adequately signals the return value despite no output schema. Minor gap: no mention of whether the result is a single kcal total or a per-activity breakdown.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters with types, defaults, ranges and enum members. The description restates body weight and time spent but adds no syntax or interaction guidance (e.g. that units governs whether kg or lb is honored). Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (calories burned across walking, running, cycling, swimming, lifting and 20+ activities) and the computation basis (Compendium MET values, body weight, time). An agent can tell it apart from generic siblings like tdee_calculator or bmr_calculator by the activity-based framing. It stops short of explicitly naming a sibling it displaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not guidance, and no routing against the crowded fitness cluster (tdee_calculator, calorie_deficit_calculator, bmr_calculator, heart_rate_zone_calculator, pace_calculator). The agent must infer the use case purely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
canadian_mortgage_calculatorCanadian Mortgage CalculatorBRead-onlyIdempotentInspect
Canadian mortgage payments with semi-annual compounding, CMHC premiums, the minimum down payment and accelerated bi-weekly or weekly options. Web page: https://calcbright.com/canadian-mortgage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| down | No | Down payment (%) Minimum 5% of the first $500,000 and 10% of the rest; 20% from $1.5M. | |
| freq | No | Payment frequency | monthly |
| rate | No | Interest rate (fixed) (%) Compounded semi-annually, as Canadian law requires for fixed rates. | |
| buyer | No | First-time buyer or new build? Insured mortgages can be amortized over 30 years only for first-time buyers or newly built homes. | other |
| price | No | Home price | |
| years | No | Amortization | 25 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds domain behavior (semi-annual compounding per Canadian law, CMHC premium inclusion, accelerated payment options) but says nothing about the output format or how premiums are surfaced in results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the capabilities front-loaded, followed by a reference URL that is arguably useful rather than padding. No wasted words, though the URL is tangential to tool invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should indicate what the calculator returns (e.g. payment amount, CMHC premium, total interest), but it only lists features. The input side is complete via the schema; the output side is left unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 six parameters including the semi-annual compounding note on rate and the first-time-buyer rule on buyer. The description's feature list mirrors that content without adding syntax or meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (Canadian mortgage payments) and lists distinguishing features: semi-annual compounding, CMHC premiums, minimum down payment, accelerated bi-weekly/weekly. This implicitly separates it from the generic mortgage_calculator and dubai_mortgage_calculator, but it never names or contrasts those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'Canadian' implies the domain, but there is no explicit when-to-use or when-not-to-use guidance, no mention of alternatives like mortgage_calculator or down_payment_calculator, and no prerequisites. The agent must infer routing from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_gains_tax_calculatorCapital Gains Tax CalculatorARead-onlyIdempotentInspect
A $15,000 long-term gain costs a $75,000 earner $2,250 in 2026 federal tax. Short vs long term, 3.8% NIIT, home sale exclusion and the expat stacking rule. Web page: https://calcbright.com/capital-gains-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| sale | No | Sale price After selling costs. | |
| asset | No | What are you selling? | investment |
| filing | No | Filing status | single |
| income | No | Other taxable income Wages and other ordinary income for the year, before the standard deduction. Leave out salary you exclude below. | |
| holding | No | Holding period | long |
| excluded | No | Foreign earnings excluded on Form 2555 (if you live abroad) Salary and housing you exclude under the foreign earned income exclusion – up to $132,900 each in 2026. Enter 0 if you live in the US. | |
| purchase | No | Purchase price (cost basis) Include buying commissions and improvements. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so safety is covered. The description adds useful behavioral scope by identifying federal tax, the 2026 tax year, the worked example, and specific tax rules handled; it still omits assumptions such as state-tax exclusion and output breakdown.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three compact sentences with no wasted wording, and the example is front-loaded. The main weakness is that the example appears before a direct general-purpose statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter calculator with no output schema, the description gives only a single example result and a feature list. It does not specify what the response contains (tax owed, effective rate, breakdown, assumptions), leaving an output-contract gap despite rich schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all seven parameters thoroughly. The description adds no parameter-specific syntax or meaning beyond the feature list, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The concrete example ('$15,000 long-term gain... $2,250 in 2026 federal tax') and capital-gains-specific topics make clear this computes U.S. federal capital gains tax. It distinguishes itself from the generic income_tax_calculator, though it never states the overarching verb explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists scenarios the calculator handles (short vs long term, 3.8% NIIT, home sale exclusion, expat stacking rule), which implies when it is relevant. However, it gives no explicit when-to-use guidance or comparison to alternatives such as income_tax_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
car_lease_calculatorCar Lease CalculatorARead-onlyIdempotentInspect
Car lease payment from price, MSRP, residual, money factor or APR, term and sales tax – split into depreciation, finance charge and tax to check a dealer quote. Web page: https://calcbright.com/car-lease-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mf | No | Money factor APR ≈ money factor × 2,400 | |
| apr | No | APR (%) | |
| tax | No | Sales tax (%) Applied to the monthly payment, as in most US states | |
| down | No | Down payment & trade-in Capitalised cost reduction | |
| msrp | No | MSRP (sticker price) | |
| term | No | Lease term (months) | |
| price | No | Negotiated price Gross capitalised cost | |
| currency | No | Currency | USD |
| rateType | No | Interest given as | apr |
| residualPct | No | Residual value (% of MSRP) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety/behavioral profile is largely covered. The description adds that the output is split into depreciation, finance charge and tax, which is genuinely useful behavioral context beyond the annotations, but no output schema exists to specify the return shape further.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single front-loaded sentence that lists inputs and the output decomposition, followed by a short URL. Efficient and well-structured, though the lengthy input enumeration slightly crowds the sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters with full schema coverage, no output schema, and annotations declaring a safe read-only operation, the description covers the essential input semantics and output decomposition. It could better signal the rateType/mf-vs-apr relationship or clarify lease-specific behavior versus loans, but the schema carries most of the load.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 10 parameters including the mf/apr relationship and rateType enum. The description merely lists parameter names without adding syntax, defaults, or format details beyond what the schema provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (car lease payment calculation) and enumerates the exact inputs used (price, MSRP, residual, money factor or APR, term, sales tax). The tool is clearly distinguishable from auto_loan_calculator and other siblings by naming the lease-specific decomposition into depreciation, finance charge and tax.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to check a dealer quote' implies a usage scenario but does not explicitly state when to use this tool versus siblings like auto_loan_calculator or down_payment_calculator. No when-not-to-use guidance or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
case_converterCase ConverterBRead-onlyIdempotentInspect
Switch text to UPPER, lower, Title or Sentence case, or to camelCase, snake_case and kebab-case for code. It all runs in your browser; nothing is uploaded. Web page: https://calcbright.com/case-converter
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Convert to | title |
| text | No | Your text | the quick brown fox jumps over the lazy dog |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, covering the safety profile. The description adds one genuinely useful behavioral fact: processing runs locally in the browser and nothing is uploaded, which is not derivable from the annotations. It says nothing about output format or limitations beyond the 100k maxLength, which is in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: the first front-loads the transformation and modes, the second adds the privacy guarantee; the URL is extra but harmless. No filler or repetition, though the trailing link is not meaningful to an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter, zero-required, read-only text tool with full schema coverage, the basics are covered. However, with no output schema, the description never states what the tool returns (converted text? object?), and it omits which mode to choose when none is given beyond relying on the default. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the enum values and text parameter are already documented in the schema; the description merely restates the same modes. Baseline 3 applies when the schema does the heavy lifting and the description adds little beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Switch text') and enumerates the concrete output modes, so an agent knows exactly what transformations are offered. The name and mode enum corroborate it. It doesn't explicitly distinguish itself from nearby text tools like word_counter, and the sibling list mostly contains calculators, so differentiation is implicit rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any conditions or exclusions. The default mode is 'title' (also the assumed default in the description ordering) but the description never tells the agent which mode to pick for a given intent. Usage context is entirely left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cd_calculatorCD CalculatorBRead-onlyIdempotentInspect
$10,000 at 4.25% APY earns $425.00 in 12 months. This CD calculator shows interest for any term, APY vs APR, tax on interest and simple-interest deposits. Web page: https://calcbright.com/cd-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| tax | No | Tax rate on interest (%) Your marginal rate on interest (e.g. US federal + state). Leave 0 where interest is not taxed, as in the GCC. | |
| rate | No | Interest rate (%) | |
| term | No | Term (months) | |
| deposit | No | Deposit amount | |
| currency | No | Currency | USD |
| rateType | No | Rate quoted as | apy |
| compounding | No | Compounding | 365 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this is a read-only, idempotent, closed-world computation. The description adds feature-level context: it handles APY vs APR quoting, taxes interest, and covers simple-interest deposits. It stops short of saying what a result contains or how the term/compounding options interact, so the added value is real but shallow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences front-load a concrete numeric example before the capability summary. The trailing website URL is promotional and adds nothing for an agent, but overall there is little wasted prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With seven optional parameters fully documented and no output schema, the description should compensate by describing the result shape, which it only partially does ('shows interest'). It never explains how compounding, rateType, and term interact in the output or how currency affects the result, leaving a meaningful gap for a financial calculation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 seven parameters including the tax and rateType fields, making 3 the baseline. The description adds only a faint hint ('simple-interest deposits') toward the compounding='0' option and 'APY vs APR' toward rateType, without new format or constraint detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete resource ('CD calculator') and what it computes: interest for any term, APY vs APR, tax on interest, and simple-interest deposits. That is clearly more specific than the title alone, but it never distinguishes this tool from overlapping siblings such as fd_calculator, compound_interest_calculator, or simple_interest_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance. The worked example ('$10,000 at 4.25% APY earns $425.00 in 12 months') implicitly demonstrates the default inputs, but an agent gets no rule for choosing this over fd_calculator or compound_interest_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
circle_calculatorCircle CalculatorARead-onlyIdempotentInspect
Know a circle’s radius, diameter, circumference or area? Enter any one to get the other three, with the formulas, the working and answers in terms of π. Web page: https://calcbright.com/circle-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| unit | No | Unit | none |
| known | No | I know the | radius |
| value | No | Radius (r) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and closed-world behavior. The description adds useful output context by stating that results include formulas, the working, and answers in terms of pi, which is valuable given there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded and uses two efficient sentences to state the input flexibility and output style. The appended web page URL is slightly extraneous for invocation but not disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple calculator with full schema coverage and annotations, the description covers purpose, input flexibility, and expected output form. It omits unit handling details, but the schema's enum covers that sufficiently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 clarifies that any one of four measurements can be entered, but it does not explain the unit parameter or add format/detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (a circle) and the core operation: enter any one of radius, diameter, circumference, or area to get the other three. It does not explicitly distinguish this from other geometry siblings like area_calculator or volume_calculator, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening question establishes the usage condition: use this when you know one circle measurement and want the others. It gives clear context but does not name alternatives or exclusions, so it is not a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
color_converterColor ConverterARead-onlyIdempotentInspect
Convert any color between HEX, RGB, HSL, HSV and CMYK, preview the swatch, check WCAG 2 contrast on white and black, and get a palette of tints and shades. Web page: https://calcbright.com/color-converter
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | Colour Paste HEX, RGB, HSL, HSV, CMYK or a basic colour name such as “teal”. | #3B82F6 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, and closed-world behavior, so the agent knows it is safe and deterministic. The description adds that it provides previews, contrast checks, and palettes, which is useful context about outputs. However, it does not mention performance, limitations (e.g., color name support), or return format beyond what the annotations cover. With annotations covering safety, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence listing features, front-loaded with the core conversion capability. It is efficient and information-dense, though it could be slightly more structured. Every part earns its place by describing distinct outputs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's relative simplicity (color conversion with additional outputs), the description covers the main capabilities and expected outputs. It mentions contrast checking and palette generation, which might otherwise be surprising. No output schema exists, so the description adequately explains what the tool returns. The only minor gap is the lack of explicit usage scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameter is fully documented in the schema, including accepted formats and defaults. The description mentions supported formats but does not add syntax details or examples beyond the schema. Baseline 3 is correct when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the primary action (convert colors) and names the supported formats (HEX, RGB, HSL, HSV, CMYK). However, it does not distinguish itself from potential siblings that also involve conversion, though the color focus is unique. The extra capabilities (preview, WCAG contrast, palette) are listed but the core purpose is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by the listed features, but there is no explicit statement of when to use this tool versus alternatives, nor any exclusions. The sibling tools are mostly calculators, so there is no direct color-related alternative. The description does not guide the agent on when exactly to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
commission_calculatorCommission CalculatorRead-onlyIdempotentInspect
5% commission on $25,000 of sales is $1,250. Work out flat or tiered commission, the rate behind a fee you paid, and Dubai or Saudi agent fees with VAT. Web page: https://calcbright.com/commission-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| r1 | No | Rate on the first tier (%) | |
| r2 | No | Rate on the second tier (%) | |
| r3 | No | Rate above the second tier (%) | |
| t1 | No | First tier: sales up to | |
| t2 | No | Second tier: sales up to (optional) Leave empty for a two-tier plan | |
| vat | No | VAT on the commission Charged on top when a VAT-registered agent or broker invoices the fee | 0 |
| base | No | Base salary (optional) For the same period as the sales | |
| mode | No | What do you want to work out? | flat |
| rate | No | Commission rate (%) | |
| sales | No | Sale amount Sale price, contract value or rent the commission is charged on | |
| share | No | Your share of the commission (optional) (%) If the fee is split with your agency or another broker | |
| method | No | How the tiers apply | marginal |
| currency | No | Currency | USD |
| received | No | Commission paid If you choose a VAT rate below, enter the amount including VAT |
compound_interest_calculatorCompound Interest CalculatorARead-onlyIdempotentInspect
$10,000 plus $200 a month at 7% grows to $144,572.72 in 20 years, $86,572.72 of it interest. See the AER, the value after inflation and Gulf savings examples. Web page: https://calcbright.com/compound-interest-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Annual interest rate (%) | |
| years | No | Years (years) | |
| initial | No | Initial deposit | |
| monthly | No | Monthly contribution | |
| currency | No | Currency | USD |
| inflation | No | Yearly inflation (%) Optional – shows the final balance in today’s money, i.e. what it will buy at today’s prices. | |
| compounding | No | Compounding | 12 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond simple calculation by referencing 'AER' and 'value after inflation'. This informs the agent about the tool's ability to handle complex financial metrics and contextualize the output, adding behavioral depth not present in the 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is front-loaded with a highly effective calculation example, allowing the agent to immediately understand the tool's utility before even parsing the input schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich input schema, clear annotations (e.g., readOnlyHint), and the detailed illustrative example, the description provides all the necessary context for a comprehensive understanding of the tool's capability and application.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since schema coverage is 100%, the description acts as a 'proof of concept'. It demonstrates how multiple parameters (initial deposit, monthly contribution, rate, years) work together in a real-world scenario and how the 'inflation' parameter results in 'value after inflation', adding crucial semantic context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description immediately establishes the tool's purpose (calculating compound interest) and provides a concrete, realistic example of its application. This makes it distinctly clear what the tool achieves compared to simpler siblings like 'simple_interest_calculator'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While it doesn't give formal exclusions (e.g., 'do not use for...'), the description sets a high bar by demonstrating complex, real-world usage involving monthly deposits, initial sums, and inflation. This strongly implies its suitability for detailed financial planning over basic calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
concrete_calculatorConcrete CalculatorARead-onlyIdempotentInspect
Concrete for slabs, wall footings and post holes in cubic yards and cubic meters, plus how many 40, 60 or 80 lb or 25 kg premix bags to buy for the job. Web page: https://calcbright.com/concrete-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| qty | No | Quantity | |
| unit | No | Units | imperial |
| depth | No | Thickness (in) | |
| shape | No | Shape | slab |
| waste | No | Extra for waste / spillage (%) Many contractors add 5–10%. | |
| width | No | Width (ft) | |
| height | No | Height / depth (ft) | |
| length | No | Length (ft) | |
| diameter | No | Diameter (in) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is fully covered. The description adds useful behavior beyond that (dual-unit results and premix bag counts), but says nothing about edge cases, defaults, or output shape. Adequate, not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with the substantive scope statement front-loaded before the link. The trailing marketing URL is low-value filler, but the rest earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, fully-schema-documented calculator with no output schema, the description supplies the key missing piece: what the tool returns (volume in two unit systems plus bag counts). It stops short of noting that all parameters have defaults or that the schema coverage is complete, but an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all nine parameters are already documented in the schema. The description reinforces the domain meaning of the outputs (cubic yards vs cubic meters, 40/60/80 lb and 25 kg bags) but adds no format or constraint detail beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (concrete) and enumerates the scenarios it covers (slabs, wall footings, post holes) plus the exact outputs (cubic yards/meters, premix bag counts by weight). This is far more than a restatement of the name, though it does not explicitly distinguish itself from adjacent siblings such as gravel_calculator or volume_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the enumerated job types (slab, footing, post hole) and the growing-context bag-sizing output, so an agent can infer when the tool applies. There is, however, no explicit when-to-use statement and no mention of alternatives like gravel_calculator or area_calculator for related material-estimate needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
confidence_interval_calculatorConfidence Interval CalculatorARead-onlyIdempotentInspect
Confidence intervals for a mean (t or z) or a proportion (Wald and Wilson) at 80–99.9% confidence – margin of error, critical value and every step shown. Web page: https://calcbright.com/confidence-interval-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | Sample size (n) | |
| x | No | Successes (x) | |
| sd | No | Sample SD (s) | |
| conf | No | Confidence level | 95 |
| mean | No | Sample mean (x̄) | |
| type | No | Interval for | mean-t |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish the safety profile (readOnlyHint, idempotentHint, openWorldHint=false), so the bar is lower. The description adds genuine value by disclosing what the tool returns (margin of error, critical value, every step shown), which matters because no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single information-dense sentence leads with the core capability, and the trailing documentation URL is clearly segregated. Nothing is redundant, though the URL consumes space without aiding tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter, zero-required, no-output-schema tool with full schema coverage, the description is nearly sufficient: it tells the agent what inputs map to which methods and what outputs to expect. Minor gaps remain on how x/n interact for the proportion mode and how SD is handled for the z variant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and all six parameters are individually documented with ranges, defaults and enums, so the schema carries the parameter burden. The description's mention of t/z, Wald/Wilson and 80–99.9% only echoes the type and conf enums rather than adding new semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific statistical resource (confidence intervals for a mean via t/z, or a proportion via Wald/Wilson) and even enumerates the supported confidence levels and computed outputs. That specificity naturally separates it from adjacent siblings like p_value_calculator or standard_deviation_calculator, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the stated scope: use it when you need an interval for a mean or a proportion. However, there is no explicit guidance on when to prefer mean-t vs mean-z vs prop, nor any exclusion pointing to alternative tools for related statistical needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cooking_converterCooking ConverterBRead-onlyIdempotentInspect
Cups, tablespoons and teaspoons to grams or ounces by each ingredient’s density – a cup of flour is 125 g, a cup of sugar 200 g. US cups, with charts. Web page: https://calcbright.com/cooking-converter
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | To | g |
| from | No | From | cups |
| amount | No | Amount | |
| ingredient | No | Ingredient | flour |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: it discloses that results are density-dependent and that 'US cups' is the assumed convention, plus worked examples. It does not describe range limits or return format, so 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences with the conversion basis front-loaded and illustrative values that earn their place. The trailing web-page URL is mildly promotional but not disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with full schema coverage and no output schema, the description supplies the key missing context: that output depends on ingredient density and assumes US cups. An agent has enough to call it correctly; only explicit sibling routing is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and three parameters are enums, so the schema carries the parameter documentation burden. The description reinforces the from-units (cups/tbsp/tsp) and to-units (grams/ounces) and adds the ingredient-density concept, but adds no syntax or edge-case meaning beyond what the schema already lists.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific conversion direction (cups/tbsp/tsp to grams/ounces) grounded in ingredient density, which is the exact factor that separates it from the generic unit_converter sibling. It is clear and concrete, though it never names the sibling it overlaps with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance. With unit_converter, volume_calculator and fraction_calculator in the sibling list, the agent is left to infer that this tool is the density-aware one; the description states the density basis but does not frame it as a selection rule against alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
countdown_calculatorCountdown CalculatorARead-onlyIdempotentInspect
How many days until Christmas, New Year or your own date? See the days, weeks, months and hours left – or the days since a date that has already passed. Web page: https://calcbright.com/countdown-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | Count from Leave empty to count from today. (YYYY-MM-DD) | |
| label | No | Event name (optional) | |
| preset | No | Count down to | christmas |
| target | No | Target date (YYYY-MM-DD) | 2027-01-01 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint, so the safety profile is covered. The description adds real behavioral value by disclosing what it computes (days, weeks, months, hours) and that it works for past dates as well as future — information no annotation or output schema supplies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the core question and the output metrics, with no filler. The trailing marketing URL is mildly wasteful but does not dilute the operative content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly sketches the return metrics, but it never clarifies how preset and target interact (e.g., that a custom preset requires an explicit target, or that target defaults to 2027-01-01). An agent could plausibly pass a target while leaving preset at its christmas default and get unexpected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the preset, target, from and label semantics are fully documented in the schema, establishing a baseline of 3. The description reinforces the preset idea ('Christmas, New Year or your own date') but adds no syntax or precedence details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific computation (days/weeks/months/hours remaining) plus preset targets like Christmas and New Year, which distinguishes it from generic siblings such as date_difference_calculator. It does not explicitly name or contrast any sibling, so a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through examples ('until Christmas, New Year or your own date') and the note that it also handles dates already passed. However, there is no explicit when-to-use guidance versus close siblings like date_difference_calculator or ramadan_countdown_calculator, leaving the agent to infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
credit_card_payoff_calculatorCredit Card PayoffCRead-onlyIdempotentInspect
AED 10,000 at 3.25% a month on only the 5% minimum takes 9 years 9 months and AED 14,869.55 interest. Credit card payoff dates and payments for UAE, KSA, US. Web page: https://calcbright.com/credit-card-payoff-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| apr | No | Interest rate (%) | |
| mode | No | I want to | payment |
| minPct | No | Minimum payment (% of balance) 5% at most UAE banks; SAMA’s rules set 5% as the lowest allowed in Saudi Arabia. | |
| months | No | Pay off in (months) | |
| balance | No | Card balance | |
| payment | No | Monthly payment | |
| currency | No | Currency | USD |
| minFloor | No | or at least The fixed floor, e.g. AED 100 – whichever is higher is due. | |
| rateBasis | No | Rate quoted UAE cards usually quote a monthly rate – 3.25% a month is 39% a year. | year |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so the safety profile is covered. The description adds a concrete worked example (9 years 9 months, AED 14,869.55 interest) that hints at what the result contains, but says nothing about how modes change the output or what happens with edge cases like a payment below the interest charge.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences plus a URL, so it is not bloated. However, the lead position is spent on a marketing-style example rather than on stating what the tool computes, so the most important information is not front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with full schema coverage and no output schema, the description gives enough of a flavor of the result (payoff date and total interest) to call it, though it does not explain how the three modes produce different outputs. The gap is small but real.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already documents every parameter, so baseline is 3. The description's mention of '3.25% a month' and '5% minimum' loosely illustrates rateBasis and minPct but adds no syntax or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource ('credit card payoff dates and payments') and implies the calculation, but never states a verb or what the tool actually returns for a given input. It is distinguishable from generic siblings only by the 'credit card' qualifier, with no explicit contrast to debt_payoff_calculator or mortgage_payoff_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus debt_payoff_calculator, loan_calculator, or amortization_calculator, and no explanation of when each of the three 'mode' settings is appropriate. The region mention (UAE, KSA, US) hints at scope but is not tied to any selection condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
currency_converterCurrency ConverterARead-onlyIdempotentInspect
USD 1,000 is always AED 3,672.50 and AED 10,000 is SAR 10,211.03 at the Gulf pegs. Convert 39 currencies at mid-market rates refreshed several times a day. Web page: https://calcbright.com/currency-converter
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | To | EUR |
| from | No | From | USD |
| amount | No | Amount |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so safety is covered. The description adds meaningful behavioral context: rates are mid-market and refreshed several times a day, and Gulf currencies are pegged with fixed examples. It does not discuss rate source caveats or precision, but the added freshness and peg behavior go beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only three short sentences plus a URL, and each sentence contributes something (peg example, core purpose plus rate freshness, source link). It is slightly back-loaded, with the core purpose appearing after the example, but it remains efficient and free of filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple read-only calculator with no output schema needing explanation, and annotations cover the safety profile. The description supplies the essential facts: what it converts, how many currencies, rate type, refresh cadence, and a documentation link. Missing only minor details like rounding behavior or whether rates are indicative, so it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with enums for from/to and a numeric amount field bounded at 0 to 1e15. The description does not add meaning beyond the schema — e.g., it doesn't explain rounding, default behavior, or how the amount is interpreted. Baseline 3 is appropriate when the schema fully documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence clearly states a specific verb and resource: convert 39 currencies at mid-market rates. That inherently distinguishes it from unit, cooking, or fuel-economy converters in the sibling list, though no alternative is named explicitly. The first sentence about Gulf pegs is a concrete example that reinforces the fixed-rate behavior rather than clouding the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'Convert 39 currencies' — an agent can infer this is for currency exchange calculations. However, the description does not say when to choose this over a sibling like unit_converter, nor does it state any exclusions or prerequisites. No explicit when/when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
date_calculatorDate CalculatorARead-onlyIdempotentInspect
Add or subtract days, weeks, months or years from any date to get the exact date and weekday – like 90 days from today. Leap years and month ends handled. Web page: https://calcbright.com/date-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| op | No | Operation | add |
| days | No | Days | |
| start | No | Start date Leave empty to start from today. (YYYY-MM-DD) | |
| weeks | No | Weeks | |
| years | No | Years | |
| months | No | Months |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, idempotentHint, openWorldHint=false), so the description's job is to add context — and it does, disclosing that leap years and month ends are handled and that the result includes the weekday. It stops short of saying how multiple units combine or whether the calculation is calendar-based vs. fixed-length months.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the capability and an illustrative example. The trailing marketing URL is not strictly necessary for an agent to invoke the tool correctly, which costs it a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter, 6-param, no-output-schema tool, the description covers the essentials: what it computes, the units, and edge-case handling. Minor gaps remain — how multiple units combine in one call and the fact that everything defaults (op=add, start=today) — but these are covered in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 op, start, days, weeks, months and years including defaults and ranges. The description merely names the units, adding no syntax, combining rules, or explanation of the 'add'/'subtract' op beyond what is structured — the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb set (add/subtract), the units involved (days, weeks, months, years) and the output (exact date and weekday), so the core function is unambiguous. However, it never distinguishes itself from overlapping siblings such as date_difference_calculator, day_of_week_calculator or business_days_calculator, which an agent must choose between.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the example '90 days from today'; there is no explicit when-to-use statement, no negative cases, and no routing to the many date-related siblings that could plausibly handle a related request. Adequate but leaves selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
date_difference_calculatorDate Difference CalculatorARead-onlyIdempotentInspect
Days between two dates, also shown in weeks, months and years, with weekday and weekend counts. Choose whether to include the end date for event lengths. Web page: https://calcbright.com/date-difference-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date Leave empty to use today's date. (YYYY-MM-DD) | |
| start | No | Start date (YYYY-MM-DD) | 2026-01-01 |
| includeEnd | No | Include the end date? | no |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, non-open-world), so the bar is lower. The description adds genuine value by disclosing the shape of the result — days plus weeks/months/years conversions and weekday/weekend counts — which matters because no output schema exists. It still omits edge-case behavior (e.g., reversed dates, end-date-empty meaning today).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core result and with the includeEnd option called out before the reference URL. No filler, though the URL is marginally extraneous to tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter, zero-required, no-output-schema calculator, the description covers the computed outputs and the one behavioral toggle. It is nearly complete; only edge-case semantics and sibling disambiguation are missing, which is acceptable given the rich schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (start, end, includeEnd) are already documented in the schema. The description only gestures at includeEnd via "include the end date" and adds nothing about the date format or the empty-end default. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific computation (days between two dates) plus the derived outputs (weeks, months, years, weekday/weekend counts), which distinguishes it from generic siblings like date_calculator or time_duration_calculator. However, it never explicitly names which sibling to use instead, so the differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Choose whether to include the end date for event lengths" gives a hint of the use case, but there is no explicit when-to-use statement, no exclusions, and no routing to competing tools such as business_days_calculator or time_duration_calculator. Usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
day_of_week_calculatorDay of the Week CalculatorARead-onlyIdempotentInspect
What day of the week was it? Get the weekday for any date from 1000 to 9999 – birthdays, historic events, future plans – with Zeller’s working shown. Web page: https://calcbright.com/day-of-week-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Date Leave empty to use today's date. (YYYY-MM-DD) | 1969-07-20 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, closed-world behavior, so the safety profile is covered. The description adds real value beyond that: a supported date range of 1000–9999 and the fact that Zeller's working is shown in the response. It stops short of describing the exact return shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose question, followed by scope, use cases, and output detail in one tight sentence. The trailing web-page URL is promotional filler but brief enough not to bury the substantive content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter, single-input tool with rich read-only annotations and no output schema, the description supplies everything needed: what it computes, the valid range, and what the response includes. Nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema itself explains the empty-value default, so the baseline is already adequate. The description additionally constrains valid input to the years 1000–9999, which the schema's bare 'format: date' does not communicate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the weekday for any date'), which is unambiguous about the single computation performed. It does not, however, name or contrast itself with adjacent siblings like date_difference_calculator or week_number_calculator, leaving the agent to infer the split.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The examples ('birthdays, historic events, future plans') imply the intended contexts for use, which is useful framing. But there is no explicit when-not guidance and no routing to alternative date tools for adjacent needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debt_payoff_calculatorDebt Payoff CalculatorARead-onlyIdempotentInspect
$22,600 of debt, $900 a month: debt-free in 30 months, $480.21 less interest with the avalanche. A debt payoff calculator for UAE card rates and loan fees. Web page: https://calcbright.com/debt-payoff-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| debts | No | Your debts – one per line: name, balance, APR, minimum payment Example: Car loan, 12000, 6.5, 280 – no thousands separators. Card rate quoted per month? Write 3.25%m. Optional 5th value: prepayment fee, e.g. Personal loan, 40000, 7.5, 1250, 1%. | Credit card, 6500, 24.99, 195 Store card, 900, 19.99, 35 Personal loan, 4200, 12.5, 140 Car loan, 11000, 7.9, 260 |
| budget | No | Total monthly budget for debts Everything you can pay each month, including the minimums. | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safe-read behavior is covered. The description adds domain context (UAE card rates, loan fees, avalanche) and an example result, but no rate limits, auth needs, or output details beyond that example.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences: an illustrative result, a one-line purpose, and a web page reference. There is no wasted wording, though the example precedes the purpose statement rather than front-loading the definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter calculator with no output schema, the description supplies a concrete example output (30 months, $480.21 less interest), domain context, and method (avalanche). It could clarify whether it compares snowball vs avalanche or describe the full return shape, but it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already explains the debt line format, monthly-rate notation, optional prepayment fee, budget meaning, and currency enum. The description adds little parameter-specific meaning beyond 'UAE card rates and loan fees'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific calculator and scope: debt payoff with avalanche, UAE card rates, and loan fees, plus an illustrative result. It does not explicitly distinguish itself from sibling credit_card_payoff_calculator or loan_calculator, so it is clear but not fully sibling-differentiating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for multi-debt payoff planning with UAE rates and loan fees through the example and 'avalanche' mention, but it never states when to choose it over credit_card_payoff_calculator or loan_calculator, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debt_to_income_calculatorDebt-to-Income CalculatorCRead-onlyIdempotentInspect
A 35% debt-to-income ratio passes most US lenders. Gulf banks cap installments at 50% of salary in the UAE, 33.33% in Saudi Arabia and 40% in Kuwait. Web page: https://calcbright.com/debt-to-income-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| auto | No | Car loan installments | |
| cards | No | Credit card minimum payments | |
| other | No | Other debt payments Overdraft and buy-now-pay-later installments, child support, alimony. | |
| rules | No | Lender rules Gulf central banks cap the share of salary that loan installments may take; US lenders use guideline ratios. | us |
| earner | No | Income from Retirees have a lower cap: 30% of the pension in the UAE and Kuwait, 25% in Saudi Arabia. | salary |
| income | No | Gross monthly income Before tax and deductions – in Kuwait, salary after deductions. | |
| housing | No | Monthly rent Gulf banks leave rent out of the debt burden ratio; US lenders count it, or the new mortgage payment with tax and insurance. | |
| student | No | Student loan payments | |
| currency | No | Currency | USD |
| personal | No | Personal loan installments | |
| cardLimit | No | Total credit card limits Optional. Many UAE banks count 5% of every card limit, used or not, instead of the minimum payment. | |
| housingType | No | Housing payment is | rent |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, closed-world). The description adds genuine domain context — that Gulf banks cap installments at 50%/33.33%/40% of salary and retirees get lower caps — which helps interpret the result. However, it never says what the tool returns (a ratio, a pass/fail per rule, both), and there is no output schema to fall back on.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Only three sentences, but they are spent entirely on regulatory trivia and a promotional URL rather than on what the tool does. The link earns no place in a tool definition, and the core statement of purpose is missing entirely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 12 parameters, four enums, and no output schema, the description should explain the output shape and how the rules/earner switches change the result. Instead it supplies peripheral facts and a website link, leaving the agent to guess what comes back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including notes on the rules enum and the retiree cap, so the schema does the heavy lifting. The description adds nothing about which parameters to set (rules, earner, housingType) beyond loosely echoing the thresholds already in the schema text. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The reader can infer the domain (debt-to-income) from the name and from the lender-threshold facts, but the description never states the action: it never says the tool computes a DTI ratio from income and debt inputs. Nothing distinguishes it from siblings like home_affordability_calculator or loan_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no mention of alternatives, no note that this is for qualifying for a loan versus tracking payoff (debt_payoff_calculator). The thresholds hint at the use case but never state it explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
depreciation_calculatorDepreciation CalculatorCRead-onlyIdempotentInspect
$50,000 less $5,000 salvage over 5 years is $9,000 a year. Depreciation calculator for straight-line, DDB, SYD, reducing balance and Saudi tax groups. Web page: https://calcbright.com/depreciation-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cost | No | Asset cost | |
| life | No | Useful life (years) For Saudi tax: the number of years to show. | |
| rate | No | Depreciation rate (% a year) Applied to the book value at the start of each year. | |
| group | No | Saudi asset group Tax ignores salvage value; half the cost counts in the year you buy the asset. | 3 |
| units | No | Units used each year One number per year, separated by commas. | 30000, 25000, 20000, 15000, 10000 |
| method | No | Method | sl |
| salvage | No | Salvage (residual) value | |
| currency | No | Currency | USD |
| totalUnits | No | Total lifetime units Machine hours, miles, items produced… |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds the method inventory and a worked numeric example that hints at the per-year output shape, which is useful since there is no output schema. It does not state whether a full depreciation schedule is returned, how rounding or currency formatting applies, or what the Saudi group semantics produce.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and mostly front-loaded, but the opening sentence is an unlabeled arithmetic statement rather than a statement of purpose, which delays the actual tool identification. The trailing web-page URL occupies space without helping an agent decide or invoke.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With nine parameters, three enums and six methods whose relevant inputs differ, and no output schema, the description should map methods to parameters and describe the returned result. Instead it gives a single straight-line example, so an agent choosing method=uop or method=ksa gets no guidance on required inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 example figures ($50,000 cost, $5,000 salvage, 5 years, $9,000/year) mirror the schema defaults and add a little intuition about the straight-line relationship, but the description adds no meaning about the conditional parameters (rate, group, units, totalUnits) beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource and enumerates the supported methods: straight-line, DDB, SYD, reducing balance and Saudi tax groups. An agent can tell this apart from siblings like roi_calculator or capital_gains_tax_calculator. It stops short of any explicit sibling comparison, but the domain is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no routing to alternatives. More importantly for a 9-parameter tool, it never says which parameters matter for which method (units/totalUnits only for uop, group only for ksa, rate only for db/ddb), leaving the agent to infer method-dependent usage from the schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
discount_calculatorDiscount CalculatorBRead-onlyIdempotentInspect
50% off plus an extra 20% is 60% off, not 70%: AED 400 becomes AED 160. Discount calculator for the sale price, the % off between two prices and the original. Web page: https://calcbright.com/discount-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | What do you want to find? | off |
| sale | No | Sale price | |
| extra | No | Extra discount (optional) (% off) Applied to the already-reduced price | |
| price | No | Original price | |
| currency | No | Currency | USD |
| discount | No | Discount (% off) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuine behavioral value by showing that an extra 20% applies to the already-reduced price (50% then 20% = 60% total, AED 400 to AED 160), which prevents the classic additive error. However, it says nothing about output shape, rounding, or currency formatting, and there is no output schema to compensate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and free of filler, but it is not front-loaded: it opens with a numeric example before the second sentence states what the calculator actually does. The trailing URL is arguably unnecessary for tool selection. Reasonable length, suboptimal ordering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter, all-optional, read-only calculator with no output schema, the definition is close to complete: the modes are described and the compounding rule is illustrated. The one real gap is that no parameter-to-mode mapping is given (which fields are needed when mode is 'percent' versus 'original'), leaving the agent to deduce combinations from the schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, including the note that extra applies to the already-reduced price. The worked example restates that interaction with concrete numbers but adds no new information about which parameters belong to which mode. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence names the resource (discount) and enumerates the three distinct computations: sale price, percent off between two prices, and the original price. That maps cleanly onto the three enum values of the mode parameter, letting an agent distinguish it from generic siblings like percentage_calculator or markup_calculator. It stops short of naming those siblings explicitly, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the three listed computations and the stacked-discount example, which signals the tool handles successive percentage reductions. There is no explicit when-to-use versus percentage_calculator or percent_error_calculator, and no statement about what the tool does not cover. The agent must infer selection from the mode enum.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dividend_yield_calculatorDividend Yield CalculatorRead-onlyIdempotentInspect
A $50 share paying $0.50 a quarter yields 4%, but only 2.80% for a Dubai resident after 30% US withholding. Dividend yield, income and the shares you need. Web page: https://calcbright.com/dividend-yield-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| paid | No | Price you paid per share (optional) Shows your yield on cost | |
| price | No | Share price | |
| shares | No | Number of shares (optional) (shares) | |
| target | No | Income you want a month (optional) After tax withheld – shows the shares and money needed | |
| currency | No | Currency | USD |
| dividend | No | Dividend per share, per payment | |
| frequency | No | Paid | 4 |
| withholding | No | Tax withheld at source (optional) (%) US shares for Gulf residents 30% · Saudi shares for non-residents 5% · UAE and most UK shares 0% |
dld_fee_calculatorDLD Fee CalculatorBRead-onlyIdempotentInspect
A AED 2M Dubai home bought for cash costs AED 126,780 in fees (6.34%): the 4% DLD transfer fee, trustee office, title deed and 2% agent commission plus VAT. Web page: https://calcbright.com/dld-fee-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| noc | No | Developer NOC fee (if you pay it) Developers charge about AED 500–5,000 + VAT for the No Objection Certificate; the seller normally pays it. | |
| loan | No | Mortgage amount | |
| price | No | Property price | |
| split | No | Who pays the 4% DLD fee? | buyer |
| agentPct | No | Agent commission (%) Usually 2% of the price, plus 5% VAT. | |
| purchase | No | Buying with | cash |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is covered. The description adds useful context by listing which fee components are included and showing a sample total, but it does not explain output granularity, assumptions, or whether rates are configurable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, with one dense sentence plus a URL, and no obvious filler. It is slightly less front-loaded than ideal because it opens with a sample scenario rather than a direct statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter calculator with no output schema, the description provides a useful example but does not explain the return value or breakdown. The schema and annotations cover parameters and safety, but the description could do more to describe calculation output and scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 six parameters, including enums and defaults. The description does not add parameter-level meaning beyond echoing cash purchase, AED 2M price, and 2% agent commission from the example.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes clear that this is a Dubai property-purchase fee calculator by giving a concrete AED 2M example and naming the fee components: DLD transfer fee, trustee office, title deed, and agent commission plus VAT. It is clear but does not explicitly distinguish itself from nearby siblings such as dubai_mortgage_calculator or land_transfer_tax_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives no explicit when-to-use guidance, no exclusions, and no alternatives. The example implies it is for cash Dubai home purchases, but an agent must infer the trigger conditions rather than being told them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
down_payment_calculatorDown Payment CalculatorRead-onlyIdempotentInspect
AED 1.5M Dubai flat: 20% down plus AED 115,170 fees = AED 415,170 cash. Down payment calculator with US, Canada, UAE and Saudi minimums and % from amount. Web page: https://calcbright.com/down-payment-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| by | No | Enter the down payment as | pct |
| price | No | Home price | |
| rules | No | Rules to check against Sets the minimum down payment and the currency | us-conv |
| saved | No | Saved so far (optional) | |
| downPct | No | Down payment (%) | |
| monthly | No | You can save a month (optional) Shows how long until you have the cash | |
| currency | No | Currency | USD |
| downAmount | No | Down payment |
dubai_mortgage_calculatorDubai Mortgage CalculatorBRead-onlyIdempotentInspect
AED 1.6M over 25 years at 4.25% is AED 8,667.81 a month. Get your Dubai mortgage EMI, the Central Bank’s minimum down payment and the full cash needed. Web page: https://calcbright.com/dubai-mortgage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| home | No | Property | first |
| rate | No | Interest rate (%) | |
| buyer | No | Buyer | expat |
| price | No | Property price | |
| years | No | Loan term (years) Maximum 25 years (UAE Central Bank). | |
| downPct | No | Down payment (%) | |
| agentPct | No | Agent commission (%) Plus 5% VAT. | |
| valuation | No | Valuation fee | |
| arrangePct | No | Bank arrangement fee (% of loan) Usually up to 1% of the loan; 5% VAT is added. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered externally. The description contributes the expected outputs (monthly EMI, minimum down payment, full cash needed) and a numeric sanity check, which is useful, but says nothing about edge cases, rounding/currency of results, or error behavior for out-of-range input.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with zero filler; the worked example makes the output concrete. It does lead with an example rather than the purpose statement, and the raw URL at the end is of marginal value to an agent, costing it a top score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 convey what comes back, and it does: monthly EMI, regulatory minimum down payment, and total cash required. For a 9-parameter pure-computation tool with full schema coverage and read-only annotations, the only meaningful gap is the lack of sibling disambiguation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% across all 9 parameters, including the Central Bank 25-year cap and VAT notes, so the schema does the heavy lifting. The description only implicitly maps inputs through its example (price, term, rate) and adds no meaning beyond the schema, making baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States concretely what it computes: the Dubai mortgage EMI, the UAE Central Bank minimum down payment, and the total cash required, all anchored by a worked example (AED 1.6M / 25 years / 4.25% -> AED 8,667.81). The 'Dubai'/Central-Bank framing implicitly separates it from generic mortgage_calculator and canadian_mortgage_calculator, but it never names those siblings, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative-tool guidance, despite many overlapping siblings (mortgage_calculator, down_payment_calculator, dld_fee_calculator, loan_to_value_calculator). A caller has to infer applicability purely from the word 'Dubai' in the description and the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
egypt_end_of_service_calculatorEgypt End of Service CalculatorBRead-onlyIdempotentInspect
EGP 15,000 a month for 7 years: at least EGP 210,000 for an unjustified dismissal, plus EGP 45,000 if you got no notice – Egypt’s 2025 Labour Law. Web page: https://calcbright.com/egypt-end-of-service-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| wage | No | Last monthly wage Full monthly wage – basic pay plus regular allowances and fixed bonuses. | |
| start | No | Start date (YYYY-MM-DD) | 2019-01-03 |
| notice | No | Notice given by the employer (months) Months of written notice you received (the law requires 3 months). | |
| reason | No | How did the job end? | unjustified |
| insured | No | Monthly insurable wage (optional) The wage your social insurance is paid on. Leave empty to use your wage within the 2026 limits (EGP 2,700–16,700). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so safety is covered. The description adds real domain context the annotations cannot: the governing statute (Egypt's 2025 Labour Law) and a concrete output magnitude, but it says nothing about rounding, whether results are estimates, or how the optional insured-wage field affects the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence pairs an illustrative computed result with the legal basis, then a URL. Front-loaded and waste-free, though the bare link is of marginal utility to an agent and no explicit purpose sentence precedes the example.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must convey what comes back; the example gives one sample figure but not the shape of the response (breakdown by service years, notice compensation, insured-wage interaction). Adequate to identify the tool, thin for anticipating its output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including enum guidance for reason and a clear explanation of insured, so the schema carries the parameter burden and the baseline is 3. The description adds nothing per-parameter, though the example implicitly illustrates the default wage and tenure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The worked example (EGP 15,000/month for 7 years → at least EGP 210,000 for unjustified dismissal, plus EGP 45,000 for no notice) makes clear this computes Egyptian end-of-service/severance pay under the 2025 Labour Law. The jurisdiction is named, which separates it from jordan_end_of_service, saudi_end_of_service and morocco_severance siblings, but the description never states the action in a direct verb+resource sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the mention of 'unjustified dismissal' and 'no notice' hints that the reason and notice inputs drive the result. There is no explicit when-to-use guidance, no mention of the closest siblings (egypt_social_insurance_calculator, gcc_gratuity_calculator) and no statement of when this tool is the wrong choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
egypt_social_insurance_calculatorEgypt Social Insurance CalculatorARead-onlyIdempotentInspect
On an EGP 10,000 insurable wage you pay EGP 1,100 a month (11%) and your employer EGP 1,875 (18.75%). 2026 limits: EGP 2,700 to 16,700 under Law 148. Web page: https://calcbright.com/egypt-social-insurance-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| wage | No | Monthly insurable wage The wage you are registered on with social insurance. 2026 limits: EGP 2,700 minimum, EGP 16,700 maximum. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly and idempotent, so the description doesn't need to. It does add useful domain behavior: the 11% employee and 18.75% employer rates and the 2026 wage band under Law 148. It does not explain the shape of what comes back, so it stops short of full disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It leads with a concrete example, then the legal limit band, then the source URL. It is compact and says nothing that is obviously wasted, although the limit range duplicates the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only calculator with no nested objects and no output schema, the agent needs the rate split and a rough sense of the result. The example supplies both (employee and employer amounts). The description is nearly complete; the only real gap is that it doesn't describe the output fields explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter, and schema coverage is 100%; the schema even repeats the EGP 2,700–16,700 limits. The description restates those limits verbatim, so it adds essentially nothing to what the structured field already says. A 3 is the baseline here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The worked example ('On an EGP 10,000 insurable wage you pay EGP 1,100 a month (11%) and your employer EGP 1,875 (18.75%)') makes it clear this computes employee and employer Egyptian social insurance contributions, and the country plus Law 148 reference separates it from siblings like jordan_social_security_calculator or gosi_calculator. However, the description never states the action in a direct verb+resource phrase; the purpose has to be inferred from the numbers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to choose this over social_security_calculator, gosi_calculator, or egypt_end_of_service_calculator, and no exclusions or prerequisites. The reader has to infer that this is the Egypt-specific tool from the name and the Law 148 mention.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
electricity_cost_calculatorElectricity Cost CalculatorARead-onlyIdempotentInspect
A 100 W TV on 5 hours a day costs about $2.55 a month at 17¢/kWh. Turn any appliance’s watts and hours of use into kWh and running cost by day, month and year. Web page: https://calcbright.com/electricity-cost-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Days used per month (days) | |
| hours | No | Hours used per day (h) | |
| price | No | Electricity price (per kWh) | |
| watts | No | Power rating (W) Check the label on the appliance or its charger. | |
| preset | No | Appliance | tv |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and a closed-world profile, so the safety bar is low. The description adds genuine value by disclosing the output dimensions (kWh and cost per day, month and year), which is not covered by any schema. It still omits details like rounding or currency handling, so it is good but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a link; the concrete example is front-loaded and immediately conveys the computation. The URL and marketing-flavored example consume some space that could carry behavioral detail, but there is little waste overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six all-optional parameters, full schema coverage, and no output schema, the description does the important extra work of naming the outputs (kWh, daily/monthly/yearly cost). The only residual gap is the preset enum's behavior, which the schema already labels as 'Appliance.' Adequate to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 exceeds that by giving a concrete instantiation ('100 W TV on 5 hours a day ... at 17¢/kWh') that maps directly onto the watts, hours and price parameters and their units, reinforcing their meaning. It adds modest but real semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: turning an appliance's watts and hours into kWh and running cost by day, month and year. This clearly distinguishes it from most siblings (e.g., fuel_cost_calculator covers a different resource), though it never explicitly names a sibling to contrast with. Purpose is unambiguous to an agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the worked example and the phrase 'any appliance's watts and hours of use.' There is no explicit when-to-use, when-not, or alternative-tool guidance. For a standalone calculator the context is inferable, but nothing routes the agent explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
exponent_calculatorExponent CalculatorARead-onlyIdempotentInspect
Exponent calculator for 8^(2/3), 2⁻³ or 2^100: handles negative, decimal and fractional powers and nth roots, with exact big integers and the rule used. Web page: https://calcbright.com/exponent-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | Root (n) | |
| exp | No | Exponent Whole numbers, decimals, negatives and fractions like 2/3 all work. | 2/3 |
| base | No | Base | |
| mode | No | Calculate | power |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish the safe read-only, idempotent profile, so the description's added value is the precision behavior: exact big integers for large results and disclosure that 'the rule used' is reported. That is meaningful context beyond the annotations, though it doesn't cover edge cases like domain errors for negative bases with fractional exponents.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-packed sentence leads with the purpose and capability list, followed by a reference URL. No filler, no redundancy, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter, all-optional tool with no output schema, the description communicates what it computes, the input shapes it accepts, and a key output trait (exact integers, rule shown). Slightly more on the power/root mode distinction or error behavior would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 base, exp, n and the mode enum, and the description's examples (2/3 as a fraction, negative exponents) simply illustrate what the schema explains. Nothing parameter-specific is added, which is the correct baseline of 3 under full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource (exponent calculator) and enumerates concrete capabilities: negative, decimal and fractional powers plus nth roots, with worked examples (8^(2/3), 2⁻³, 2^100). It implicitly differentiates from square_root_calculator by covering general exponentiation, but never names or excludes sibling tools, keeping it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no stated prerequisites, and no routing to alternatives such as square_root_calculator for pure roots or logarithm_calculator for inverse problems. The agent must infer that this tool is the general-purpose option from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fd_calculatorFD CalculatorCRead-onlyIdempotentInspect
FD calculator after TDS: ₹10 lakh at 6.5% for 3 years matures at ₹12,13,407.58 tax-free in an NRE FD, or ₹11,85,215.56 in an NRO FD at the UAE treaty rate. Web page: https://calcbright.com/fd-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Interest rate (% p.a.) | |
| years | No | Tenure (years) | |
| payout | No | Interest | cumulative |
| treaty | No | You live in Treaty rates need a tax residency certificate from your country of residence. | none |
| currency | No | Currency | INR |
| depositor | No | Depositor and account Sets the tax deducted at source (TDS) in India. NRE and FCNR(B) interest is tax-free while you are non-resident. | resident |
| principal | No | Deposit amount | |
| compounding | No | Interest compounded | 4 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful domain context that the annotations cannot convey: NRE and FCNR(B) interest is tax-free while non-resident, NRO is taxed, and treaty rates require a tax residency certificate. It still says nothing about what the response contains (maturity value, interest, TDS breakdown) or how quarterly payout changes results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single compact sentence with no filler, but it is front-loaded with an illustrative rupee figure rather than the tool's function, so the agent reads a number before learning what the tool computes. The trailing URL is low-value for tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter tool with no output schema, the description should say what comes back — maturity amount, interest earned, TDS deducted, post-tax total — and it does not. Interactions between the payout and compounding enums, and the meaning of the treaty codes, are left entirely to the schema, so an agent cannot predict the response shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 worked example goes beyond the schema by binding concrete values to parameters (₹10 lakh principal, 6.5% rate, 3 years, NRE vs NRO depositor, UAE treaty) and showing how depositor plus treaty jointly change the result, which is meaningful semantic guidance the enum list alone does not provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'FD calculator after TDS' identifies the resource (fixed deposit) and the distinguishing tax dimension, so an agent can tell it is a maturity/proceeds calculator rather than a loan tool. However, it never states the purpose in a clean sentence and offers no differentiation from close siblings such as cd_calculator, compound_interest_calculator, or simple_interest_calculator. The opening is an example result rather than a definition of what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no sibling is named as an alternative. The NRE/NRO example implies the tool applies to non-resident Indian fixed deposits, but the agent must infer that from a worked example rather than a stated condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fha_loan_calculatorFHA Loan CalculatorRead-onlyIdempotentInspect
$350,000 home, 3.5% down at 6.25%: $2,770.78 a month with $154.80 MIP. FHA payment with 1.75% upfront MIP, 2026 loan limits and a conventional comparison. Web page: https://calcbright.com/fha-loan-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| hoa | No | HOA fees (/ month) | |
| tax | No | Property tax (/ year) | |
| down | No | Down payment (%) | |
| rate | No | FHA interest rate (%) | |
| term | No | Loan term | 30 |
| price | No | Home price | |
| credit | No | Credit score | 580 |
| pmiRate | No | Conventional PMI rate (% / year) Typically 0.3%–1.5% depending on credit score; drops off at 78% loan-to-value. | |
| convRate | No | Conventional interest rate (%) | |
| insurance | No | Homeowners insurance (/ year) |
flooring_calculatorFlooring CalculatorARead-onlyIdempotentInspect
A 12 × 12 ft room with 10% waste needs 8 boxes of 20 sq ft. Turn room size into boxes of laminate, vinyl plank, tile or hardwood to buy, and the material cost. Web page: https://calcbright.com/flooring-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| box | No | Coverage per box (sq ft) | |
| unit | No | Units | ft |
| price | No | Price per sq ft (optional) | |
| waste | No | Waste allowance (%) 10% for straight lay, 15% for diagonal or herringbone. | |
| width | No | Room width (ft) | |
| length | No | Room length (ft) | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds only a worked example; it does not mention that all inputs are optional/defaulted, that waste above ~15% is for diagonal/herringbone lay, or what the returned result contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with a concrete example, followed by the purpose and a reference URL. Little waste; the trailing URL is promotional but brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, but the description does state the two outputs (boxes to buy, material cost) and demonstrates them numerically, which is enough for a 7-parameter, fully documented, zero-required-input calculator. It could additionally note that defaults apply when inputs are omitted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter (box, unit, price, waste, width, length, currency) is already documented in-schema, including the diagonal/herringbone waste hint. The description restates only 10% waste and a box size, adding no syntax or defaulting behavior beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: converting room dimensions into boxes of flooring to purchase plus material cost. The opening worked example (12x12 ft, 10% waste, 20 sq ft boxes → 8 boxes) makes the operation concrete and separates it from generic siblings like square_footage_calculator or area_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the worked example (a room-size-to-purchase-quantity scenario), but the description never states when to use this over area_calculator or square_footage_calculator, nor any exclusions or prerequisites. Adequate context, no explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fraction_calculatorFraction CalculatorARead-onlyIdempotentInspect
Type 1/2 + 3/4 or 2 3/8 ÷ 1 1/4 and get the answer in lowest terms, as a mixed number and as a decimal, with the common-denominator steps written out. Web page: https://calcbright.com/fraction-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | First fraction | 1/2 |
| b | No | Second fraction | 3/4 |
| op | No | Operation | add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the accepted operand syntax (mixed numbers like '2 3/8') and the exact shape of the result (lowest terms, mixed number, decimal, worked steps), which tells the agent what it will get back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence carries the operation, the input syntax, and the three output forms with no filler. The trailing web-page URL is mildly promotional but costs almost nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly takes on the burden of describing return values and does so explicitly. It stops short of covering edge cases such as invalid input or division by zero, but nothing essential for a correct call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, but the description goes beyond the bare schema labels 'First fraction'/'Second fraction'/'Operation' by demonstrating the accepted string format, including mixed-number input, which the schema does not convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific operation (fraction arithmetic with mixed-number operands) and the exact output forms: lowest terms, mixed number, decimal, and common-denominator steps. No sibling tool performs this function, so it is implicitly distinct, but the description never names an alternative the way the highest-scoring definitions do.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives such as scientific_calculator, percentage_calculator, or ratio_calculator, and no exclusions or prerequisites. The input examples hint at the domain but give no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fuel_cost_calculatorFuel Cost CalculatorBRead-onlyIdempotentInspect
250 miles at 30 mpg and $3.50 a gallon is $29.17 in gas. Price any one-way or round trip in mpg, L/100 km or km/L, and split the cost between passengers. Web page: https://calcbright.com/fuel-cost-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| price | No | Fuel price | |
| people | No | Split cost between (people) | |
| economy | No | Fuel economy | |
| currency | No | Currency | USD |
| distUnit | No | Distance unit | miles |
| distance | No | Trip distance (one way) | |
| econUnit | No | Economy unit | mpg |
| priceUnit | No | Price per | gallons |
| roundTrip | No | Round trip? | no |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and closed-world, so the safety profile is covered. The description adds an example of the output but no behavioral context beyond what the annotations provide, such as output format or edge-case behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a helpful example, followed by a compact capability statement, and ends with a URL. It is appropriately sized, though the URL is non-essential for tool invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given nine optional parameters with full schema coverage and no output schema, the description supplies a concrete example of the returned value and covers the core features (units, split, round trip). It leaves minor ambiguities, such as whether the output is total or per-person, but is otherwise complete enough for a calculator.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all nine parameters are self-documented. The description loosely maps some parameters to real-world meaning (economy units, cost splitting, round trip) but is largely redundant with the schema and does not add syntax or format details beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Price') and resource ('one-way or round trip') and illustrates with a concrete example, making the calculation purpose clear. It does not explicitly name or distinguish itself from the sibling fuel_economy_converter, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool can compute but gives no explicit when-to-use guidance, no prerequisites, and no mention of alternatives such as fuel_economy_converter. It is a capability statement rather than usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fuel_economy_converterFuel Economy ConverterBRead-onlyIdempotentInspect
Convert mpg to L/100km, km/L or UK mpg in one step: 30 mpg (US) is 7.84 L/100 km and 36.03 imperial mpg. Includes a reference chart for 4–12 L/100 km. Web page: https://calcbright.com/fuel-economy-converter
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | Unit | mpg-us |
| value | No | Fuel economy |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds useful output context that annotations cannot convey – the returned value includes a reference chart for 4–12 L/100 km – but says nothing about rounding, precision, or the result payload shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence delivers the conversion scope, a concrete example, and the returned chart in sequence. It is efficient, though the trailing URL is low-value for an agent deciding whether to call the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the necessary work of signaling what comes back (a converted value plus a reference chart). For a two-parameter, zero-required, read-only conversion tool this is close to sufficient, with only precision/rounding behavior left unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 worked example ('30 mpg (US) is 7.84 L/100 km and 36.03 imperial mpg') incidentally illustrates the 'mpg-us' vs 'mpg-uk' enum semantics, but it does not explain the 'l100'/'kml' options or the valid range of 'value' beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Convert mpg to L/100km, km/L or UK mpg') and enumerates the exact supported target units, so an agent knows precisely what the tool computes. It does not, however, distinguish itself from the sibling unit_converter, which also handles unit conversions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no prerequisites, and no statement of when a different tool (e.g., unit_converter or fuel_cost_calculator) would be preferable. Usage is only implied by the conversion example.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
future_value_calculatorFuture Value CalculatorBRead-onlyIdempotentInspect
$10,000 plus $200 a month at 6% grows to $50,969.84 in 10 years. Future value calculator with present value, annuity due and an inflation-adjusted figure. Web page: https://calcbright.com/future-value-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Solve for | fv |
| rate | No | Annual interest rate (%) | |
| years | No | Number of years (years) | |
| amount | No | Present value (starting amount) | |
| timing | No | Contributions made at | end |
| currency | No | Currency | USD |
| frequency | No | Contribution frequency | 12 |
| inflation | No | Inflation (optional) (%) Shows the future value in today’s money as well. | |
| compounding | No | Compounding | 12 |
| contribution | No | Periodic contribution |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this as a read-only, idempotent, closed-world computation, so safety behavior needs no elaboration. The description adds genuine context by revealing that inflation produces a second 'today's money' figure and that the timing option corresponds to annuity due. It says nothing about how mode='pv' behaves or what the response contains, leaving the edge of behavior undocumented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but it opens with a worked-dollar example rather than stating what the tool does, and closes with a promotional web URL that adds nothing for an agent. The middle sentence carries the real information; the framing around it is not optimally front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With ten parameters, five enums, and no output schema, the description does only partial work: it names the headline outputs (future value plus inflation-adjusted value) and hints at the return shape via the example figure. It does not cover the mode='pv' branch, the frequency/compounding relationship, or what the tool actually returns as structured output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all ten parameters are already self-documenting and the baseline is 3. The description adds marginal meaning by mapping 'annuity due' to the timing option and clarifying the inflation parameter's second output, but it does not explain how contribution, frequency, and compounding interact.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource ('Future value calculator') and adds capability detail: it solves for future value, can solve for present value, supports annuity-due timing, and produces an inflation-adjusted figure. That is a specific computation, not a tautology. It stops short of distinguishing itself from close siblings like compound_interest_calculator, annuity_calculator, or savings_goal_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives, and none of the many overlapping finance siblings (compound interest, annuity, savings goal, retirement) are mentioned. The only implicit cue is the 'annuity due' and 'inflation-adjusted' phrasing, which an agent must infer as differentiators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gcc_gratuity_calculatorGCC Gratuity CalculatorBRead-onlyIdempotentInspect
QAR 10,000 basic for 7 years earns QAR 49,000 in Qatar. End-of-service gratuity for Qatar, Kuwait, Bahrain and Oman, each under its own Labour Law article. Web page: https://calcbright.com/gcc-gratuity-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Last working day Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| wage | No | Last basic monthly salary Qatar, Bahrain and Oman: basic wage only. Kuwait: the last remuneration (basic plus regular allowances). | |
| start | No | Joining date (YYYY-MM-DD) | 2019-01-03 |
| reason | No | How did employment end? | ended |
| country | No | Country of employment | QA |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, closed world), so the bar is lower. The description adds a worked example (QAR 10,000 basic, 7 years → QAR 49,000) that lets an agent sanity-check a result, and notes each country follows its own Labour Law article, but it never mentions that the resignation vs termination choice materially changes entitlement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler, but the order is backwards: a specific numeric result leads, the actual purpose statement comes second, and the URL trails. Leading with the worked example rather than the tool's job hurts front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the example partially compensates by showing the shape of a result. However, the description is silent on how the 'reason' parameter (ended vs resigned) alters the payout and on the fact that results differ per country statute, leaving an agent with material behavioral gaps despite the full schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the important Kuwait distinction about basic wage vs full remuneration, so the schema already carries parameter meaning. The worked example reinforces that 'wage' means basic salary in Qatar, but adds nothing beyond that. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence states the specific resource and scope: end-of-service gratuity for Qatar, Kuwait, Bahrain and Oman under each country's Labour Law article. It is clear what is computed, but it never names nearby siblings like uae_gratuity_calculator or saudi_end_of_service_calculator, so differentiation from those is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: naming the four covered countries plus the country enum (QA/KW/BH/OM) suggests UAE/Saudi/Egypt users should go elsewhere, but no alternative tool is named and there is no explicit when-to-use or when-not statement. An agent must infer routing from the country list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gosi_calculatorGOSI CalculatorBRead-onlyIdempotentInspect
SAR 12,500 basic + housing costs a Saudi SAR 1,218.75 a month in GOSI (9.75%). See the July 2026 new-entrant rate, the 2% for expats and the SAR 45,000 cap. Web page: https://calcbright.com/gosi-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| basic | No | Monthly basic salary | |
| phase | No | Contribution period Under the new law the pension rate rises by 0.5% each July until 2028. | 2026 |
| system | No | First registered with GOSI | old |
| housing | No | Monthly housing allowance Cash housing allowance – GOSI wage = basic + housing. | |
| nationality | No | Employee | saudi |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so safety is covered. The description adds genuine domain facts beyond the annotations (9.75% Saudi rate, 2% expat rate, SAR 45,000 cap, July 2026 phased rate), but it never states what the response contains (monthly total? employee vs employer split?).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single compact sentence, but it leads with a numeric example rather than a statement of purpose, and the trailing URL is low-value for tool selection. The key framing is buried in the middle clause about the July 2026 rate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should describe the shape of the result; the worked example hints at a monthly contribution figure but not whether it is the total, the employee share, or both, and the SAR 45,000 cap's effect on the result is unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 nonetheless adds interpretive value by supplying the actual rate values behind the 'nationality' and 'phase' enums (2% for non-Saudis, phased rate through 2028) and the cap that applies to the wage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description anchors the tool with a concrete worked example ('SAR 12,500 basic + housing costs a Saudi SAR 1,218.75 a month in GOSI (9.75%)'), which makes it obvious this computes Saudi GOSI contributions. It does not explicitly name what distinguishes it from near-neighbours like saudi_end_of_service_calculator, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use / when-not-to-use statement and no named alternative. The mention of the new-entrant rate and expat rate implies the domain without telling the agent which scenario selects this tool over the sibling social-insurance calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gpa_calculatorGPA CalculatorBRead-onlyIdempotentInspect
Letter grades A to F with plus and minus, weighted by credit hours, for up to 8 courses. Get this term’s GPA on the 4.0 scale and your new cumulative GPA. Web page: https://calcbright.com/gpa-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| c1 | No | Credits | |
| c2 | No | Credits | |
| c3 | No | Credits | |
| c4 | No | Credits | |
| c5 | No | Credits | |
| c6 | No | Credits | |
| c7 | No | Credits | |
| c8 | No | Credits | |
| g1 | No | Course 1 grade | A |
| g2 | No | Course 2 grade | B+ |
| g3 | No | Course 3 grade | A- |
| g4 | No | Course 4 grade | B |
| g5 | No | Course 5 grade | |
| g6 | No | Course 6 grade | |
| g7 | No | Course 7 grade | |
| g8 | No | Course 8 grade | |
| gpa0 | No | Current GPA | |
| credits0 | No | Credits completed |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, so the safety profile is covered. The description adds real behavioral context (max 8 courses, credit-hour weighting, 4.0 scale, cumulative requires prior GPA), but says nothing about omitted-grade handling, default-filled courses, or output shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, with the computational semantics front-loaded and the reference URL trailing. Nothing is bloated, though the URL contributes little to invocation decisions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 18-parameter tool with no output schema, the description covers inputs and results at a high level but omits how many courses must be supplied, how blank grades are treated, and what the response contains. Adequate, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaning to the credit parameters (weighting) and implies gpa0/credits0 feed the cumulative result, but adds no formatting or edge-case guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource and rich scope: letter grades A–F with plus/minus, credit-hour weighting, up to 8 courses, 4.0-scale term GPA plus new cumulative GPA. It does not distinguish itself from the sibling grade_calculator, which is the main gap keeping it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use, when-not-to-use, or alternative tool is named, despite a closely related sibling (grade_calculator). The agent must infer applicability from the computation described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
grade_calculatorFinal Grade CalculatorARead-onlyIdempotentInspect
At 88% with a final worth 25%, you need 96% on the final to finish with an A. Enter your grade, the exam weight and your target to see the score you need. Web page: https://calcbright.com/grade-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| target | No | Grade you want (%) | |
| weight | No | Final exam weight (%) Share of the overall grade the final is worth. | |
| current | No | Current grade (%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description adds no further behavioral context (e.g., that it is a pure stateless computation returning a required score, or edge cases like unreachable targets), so it merely meets the lower bar set by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with a leading worked example that conveys the calculation immediately. The trailing 'Web page: https://calcbright.com/grade-calculator' link does not help an agent invoke the tool and is mild promotional filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 100% schema coverage, three optional defaulted parameters, and readOnly/idempotent annotations, the definition covers what the agent needs. Since no output schema exists, the phrase 'see the score you need' adequately signals the return value, though it does not clarify formatting or failure cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and all three parameters carry their own descriptions, so the baseline would be 3. The description adds real meaning beyond the schema by demonstrating how current, weight, and target combine into the output ('At 88% with a final worth 25%, you need 96%'), clarifying the relationship between inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('see the score you need' on the final), with a concrete worked example (88%, 25% weight, 96% needed). It is distinguishable from gpa_calculator in inferring the goal is a required final-exam score rather than a GPA, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is only implied through the example scenario; there is no explicit 'use this when...' statement, no prerequisites, and no pointer to the closely related gpa_calculator to help an agent choose between them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gravel_calculatorGravel CalculatorARead-onlyIdempotentInspect
A 10 × 10 ft bed 3 in deep takes 0.93 cubic yards of gravel – about 1.31 tons. Size gravel, stone, sand, topsoil or mulch orders in yards, m³, tons or bags. Web page: https://calcbright.com/gravel-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Depth (in) 2–3 in (5–8 cm) for paths, 4–6 in (10–15 cm) for driveways. | |
| price | No | Price (optional) | |
| shape | No | Area shape | rectangle |
| units | No | Units | imperial |
| width | No | Width (ft) | |
| length | No | Length (ft) | |
| currency | No | Currency | USD |
| diameter | No | Diameter (ft) | |
| material | No | Material | gravel |
| priceUnit | No | Priced | yd3 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, closed-world behavior, so safety disclosure is covered. The description adds useful context by showing the output magnitude (0.93 cubic yards / 1.31 tons) and the output unit options (yards, m³, tons, bags), but does not describe return structure or how pricing/currency feeds the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very compact: a concrete worked example first, then a one-line scope statement, then a link. Front-loaded and waste-free, though the URL adds little for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-param, zero-required calculator with no output schema, the worked example substitutes reasonably for describing output. It omits that the tool also performs cost estimation via price/priceUnit/currency and says nothing about shape handling, but the schema covers those gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with enums and defaults documented per parameter, so the schema carries the load. The description's material list and unit mentions (yards, m³, tons, bags) loosely mirror the material and priceUnit enums without adding new semantics, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Size gravel, stone, sand, topsoil or mulch orders in yards, m³, tons or bags'), making clear it computes material quantities. It does not explicitly name a sibling like concrete_calculator or volume_calculator to route between them, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the worked example (a 10x10 ft bed 3 in deep) rather than stated: it never says when to pick it over concrete_calculator or square_footage_calculator, and gives no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gst_calculatorGST CalculatorBRead-onlyIdempotentInspect
18% GST on ₹10,000 is ₹1,800 – ₹900 CGST + ₹900 SGST. This GST calculator adds or removes tax at the 5%, 18%, 40% and 3% slabs, IGST and zero-rated exports. Web page: https://calcbright.com/gst-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Calculation | add |
| rate | No | GST rate | 18 |
| amount | No | Amount excluding GST | |
| supply | No | Type of supply Billing a client in the UAE, Saudi Arabia or elsewhere abroad? Choose export. | intra |
| currency | No | Currency | INR |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description does add genuine behavioral context beyond that: the CGST/SGST split for intra-state supply and the existence of IGST and zero-rated export handling, which tells the agent the output is a tax breakdown rather than a single number. It stops short of describing the response shape or how the currency parameter affects rounding and presentation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The worked example is front-loaded and immediately concrete, followed by a one-sentence scope statement. Every sentence carries information, though the trailing promotional URL ('Web page: https://calcbright.com/gst-calculator') is the least essential element and the rate list would have been better presented as a complete, ordered enumeration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five optional parameters, full schema coverage, no output schema and no nested objects, this is a simple tool and the description covers the core cases. However, the omission of the 12% and 28% slabs and the absence of any note on what the result contains (base, tax split, total, currency handling) leave gaps an agent would have to discover by calling it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already carries the parameter burden and a 3 is the baseline. The description contributes meaning by linking the supply parameter to IGST and zero-rated exports, but it never mentions the 12% and 28% slabs that are valid in the rate enum, leaving an agent with a misleading picture of supported rates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource and operation ('This GST calculator adds or removes tax'), which maps cleanly to the add/remove mode parameter, and the worked example makes the arithmetic intent unambiguous. It loses a point because the enumerated rate list ('5%, 18%, 40% and 3%') is incomplete and unordered relative to the schema's 3/5/12/18/28/40 enum, so the stated scope does not match the tool's actual scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'adds or removes tax' hints at the add-vs-remove decision, and the example supplies context for a standard intra-state calculation. There is no explicit guidance on when to pick this over the sibling vat_calculator or sales_tax_calculator, and no statement of when the inter-state (IGST) or export path should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
heart_rate_zone_calculatorHeart Rate Zone CalculatorARead-onlyIdempotentInspect
Zone 2 for a 30-year-old is 114–133 bpm by 220 − age. Get all five training zones from your age, using 220 − age or Tanaka, or personalise them with resting HR. Web page: https://calcbright.com/heart-rate-zone-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Age (years) | |
| formula | No | Max heart rate formula | fox |
| resting | No | Resting heart rate (optional) (bpm) Add it to use the Karvonen (heart-rate reserve) method. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, closed-world), so the bar is lower. The description adds genuine context beyond them: it names the competing formulas, notes that supplying resting HR switches to the Karvonen method, and shows a concrete worked value, which tells the agent the result is deterministic bpm ranges.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example followed by the method options, then a reference URL — no filler. The second sentence carries three distinct ideas (formula choice, personalisation, HR-reserve), which is dense but still readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 signal the return value, and 'all five training zones' plus the numeric example does that. For a three-parameter, zero-required calculator the remaining gap is minor — it doesn't specify whether personalisation changes all five zones or only the boundaries.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description adds real meaning the schema lacks: it maps the opaque enum 'fox' to '220 − age' and explains that the optional resting parameter activates the Karvonen/heart-rate-reserve method. It does not, however, state the behavior when resting is supplied (replaces vs. augments the age-based zones).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb+resource: 'Get all five training zones from your age', and the opening example ('Zone 2 for a 30-year-old is 114–133 bpm') makes the output shape immediately unambiguous. It is clearly a fitness/HR tool distinct from the many finance/conversion siblings, but it never explicitly distinguishes itself from adjacent health calculators like bmr_calculator or tdee_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains the three computational paths ('220 − age or Tanaka, or personalise them with resting HR'), which is really guidance for choosing among parameters rather than when to pick this tool over a sibling. No statement of when-not-to-use or of a preferred alternative, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
height_converterHeight ConverterARead-onlyIdempotentInspect
Convert cm to feet and inches, or feet and inches to cm, using the exact 2.54 cm inch: 175 cm is 5 ft 8.9 in. Includes a height chart from 150 cm to 200 cm. Web page: https://calcbright.com/height-converter
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| feet | No | Feet (ft) | |
| mode | No | Convert | cm2ft |
| inches | No | Inches (in) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint=false). The description adds genuine context by disclosing the exact 2.54 cm/inch factor and that a 150-200 cm chart is included, but says nothing about return format or edge handling, so a middling score fits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core conversion in one sentence, followed by a concrete example, the chart note, and a URL. Efficient and scannable, though the trailing web-page link is marginal value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple math converter with a fully documented 4-parameter schema and safety annotations, the description is essentially complete. No output schema exists, but the description notes the chart output, so an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are documented in the schema and baseline is 3. The description reinforces the directionality that the 'mode' enum encodes (cm2ft vs ft2cm) with a worked example, but adds no syntax or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (convert) and resource (height between cm and feet/inches) with both directions named, so an agent can immediately tell it apart from unit_converter or shoe_size_converter. Lacks any explicit sibling reference, keeping it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the conversion description but there is no explicit when-to-use or when-not-to-use guidance, nor any pointer to the closely related unit_converter sibling. The agent can infer purpose but must guess at boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
heloc_calculatorHELOC CalculatorBRead-onlyIdempotentInspect
$50,000 on a HELOC at 7.5% costs $312.50 a month interest-only, then $402.80 – a 28.9% jump. See your credit limit, both payments and a rate-rise test. Web page: https://calcbright.com/heloc-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cltv | No | Lender's max CLTV (%) Combined loan-to-value limit – most lenders allow 80%–90%; Texas caps it at 80%. | |
| draw | No | Amount you plan to borrow | |
| home | No | Home value | |
| rate | No | HELOC interest rate (%) Usually variable: prime rate (7.00% in November 2026) + a margin. | |
| extra | No | Principal you pay during the draw period (optional) A monthly amount on top of the interest – it shrinks the later payment jump | |
| mortgage | No | Mortgage balance owed | |
| rateRise | No | Test a rate rise of (points) Shows both payments if the variable rate goes up | |
| drawYears | No | Draw period (years) | |
| repayYears | No | Repayment period (years) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint=false), so the description's added value is the output preview: credit limit, both payments, and a rate-rise stress test — genuinely useful since no output schema exists. It also implies the two-phase draw/repayment structure through the two dollar figures, though it doesn't state currency or that all inputs default when omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a reference URL, with no filler. The leading dollar example is engaging but delays the actual statement of purpose, which only arrives in the second sentence; front-loading the function would be tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nine-parameter, fully-optional calculator with no output schema, the description adequately conveys what comes back and the core mechanic. It omits that every parameter has a default (so it can be called with no arguments), the currency assumption, and any note that results are illustrative estimates rather than lender quotes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every one of the nine parameters is documented with ranges and defaults, so the schema carries the load and baseline 3 applies. The description adds only conceptual framing — that the draw period is interest-only and the repayment period drives the 'jump' — rather than any per-parameter detail like how 'extra' principal or 'rateRise' points are applied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes clear what is computed — HELOC interest-only and repayment payments plus a credit-limit check — via a concrete worked example ($50,000 at 7.5% → $312.50 then $402.80). It does not explicitly differentiate from nearby siblings such as interest_only_mortgage_calculator, loan_to_value_calculator, or home_affordability_calculator, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance: nothing says to pick this over loan_calculator, interest_only_mortgage_calculator, or refinance_calculator, nor any mention of prerequisites (e.g., needing home value, mortgage balance, and lender CLTV cap). Usage can only be inferred from the tool name and the sample numbers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hijri_date_converterHijri Date ConverterARead-onlyIdempotentInspect
1 Ramadan 1448 AH is Monday, 8 February 2027. Convert dates Hijri ↔ Gregorian on Saudi Arabia’s official Umm al-Qura calendar, with the weekday and Eid dates. Web page: https://calcbright.com/hijri-date-converter
| Name | Required | Description | Default |
|---|---|---|---|
| hd | No | Hijri day | |
| hm | No | Hijri month | 9 |
| hy | No | Hijri year (AH) | |
| mode | No | Convert | g2h |
| gdate | No | Gregorian date Years 1902–2076 (Umm al-Qura calendar). (YYYY-MM-DD) | 2026-10-11 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely non-obvious context: the conversion uses Saudi Arabia's official Umm al-Qura calendar (Hijri dates vary by convention, so this matters) and that results include the weekday and Eid dates. It does not disclose output shape or edge cases beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences plus an attribution URL; nothing is padded. The leading worked example ('1 Ramadan 1448 AH is Monday, 8 February 2027') usefully previews the output format including the weekday, though it is not labeled as an example and slightly precedes the actual statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the burden of saying what comes back — it does so briefly (converted date, weekday, Eid dates). With five all-optional, fully documented parameters and complete annotation coverage, only the direction-selection mechanics remain underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 implies bidirectional conversion via 'Hijri ↔ Gregorian', which helps interpret the terse 'mode' enum labels (g2h/h2g, schema-described only as 'Convert'), but it adds no guidance on which parameter set to populate for each direction.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Convert dates Hijri ↔ Gregorian') and scopes it to the Umm al-Qura calendar, which no sibling tool covers. It stops short of explicitly distinguishing itself from nearest neighbors like date_calculator or ramadan_countdown_calculator, but the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the stated scope: this is the tool for Hijri↔Gregorian conversion. There is no explicit when-to-use/when-not guidance and no mention of the adjacent siblings (date_calculator, day_of_week_calculator, ramadan_countdown_calculator) that could plausibly be confused with it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
holiday_entitlement_calculatorHoliday Entitlement CalculatorRead-onlyIdempotentInspect
28 days on a 5-day week, 16.8 on 3 days: UK statutory holiday by days or hours, pro-rata for starters and leavers, untaken days, and 12.07% irregular hours. Web page: https://calcbright.com/holiday-entitlement-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Leaving date Leave blank if staying. (YYYY-MM-DD) | |
| days | No | Days worked per week (days) | |
| basis | No | How do you work? | days |
| hours | No | Hours worked per week (hours) | |
| start | No | Start date Leave blank if before the leave year. (YYYY-MM-DD) | 2026-07-01 |
| taken | No | Holiday already taken this leave year In days, or in hours if you chose fixed hours. Shows what is left – or what must be paid when you leave. | |
| period | No | Employed for | full |
| worked | No | Hours worked in the pay period (hours) Holiday accrues at 12.07% of hours actually worked (leave years from 1 April 2024). | |
| yearStart | No | Leave year starts Often 1 January or 1 April – check your contract. (YYYY-MM-DD) | 2026-01-01 |
home_affordability_calculatorHome AffordabilityARead-onlyIdempotentInspect
$100,000 a year buys about a $337,657 home under the 28/36 rule. This home affordability calculator also applies UAE limits: 50% of salary and an 80% loan. Web page: https://calcbright.com/home-affordability-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| dti | No | Total DTI limit (back-end) (%) | |
| hoa | No | HOA dues / month | |
| pmi | No | PMI rate (under 20% down) (% / yr) Yearly % of the loan; ask your lender for a quote. 0 to ignore. | |
| down | No | Down payment | |
| rate | No | Mortgage rate (%) | |
| buyer | No | Buyer and home | expat |
| debts | No | Monthly debt payments Car, personal and student loans, card minimums – not rent. | |
| front | No | Housing ratio (front-end) (%) | |
| rules | No | Lender rules UAE banks cap all installments at 50% of salary and the loan at a share of the price; US lenders use DTI guidelines and PMI. | us |
| years | No | Loan term (years) | |
| income | No | Gross annual income Before tax – in the UAE, gross monthly salary × 12. | |
| costsPct | No | Purchase costs paid in cash (%) DLD 4%, agent 2% + VAT, bank and registration fees – about 7.5% of the price with a mortgage. | |
| currency | No | Currency | USD |
| insurance | No | Home insurance / year | |
| propertyTax | No | Property tax (% / yr) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, so safety is covered. The description adds some genuine methodology context (the 28/36 rule and the UAE 50%-of-salary / 80%-LTV caps), but it omits how the two 'rules' modes diverge in output, that every parameter is optional and defaulted, and the trailing web-page URL is inert for an agent under openWorldHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the most concrete signal (the worked example), with no filler prose. The calcbright.com URL is the one element that does not earn its place for an agent that cannot browse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The worked example effectively communicates the return value (a maximum affordable home price) despite there being no output schema. With all 15 parameters optional, defaulted and fully described in the schema, and safety covered by annotations, nothing critical is missing. A worked example plus rule framing is right-sized for a calculator of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 15 parameters thoroughly, including the 'rules' enum's US vs UAE meaning. The 28/36 and 50%/80% phrasing in the description merely echoes what the schema's own 'rules', 'front' and 'dti' descriptions already state, so it adds little beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (home affordability calculator) and anchors it with a concrete input→output example ('$100,000 a year buys about a $337,657 home'), which makes the tool's function unmistakable. It also hints at scope via the two rule regimes, though it never explicitly distinguishes itself from close siblings like rent_affordability_calculator, dti or down_payment_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer you supply income plus loan assumptions to get a max purchase price. There is no explicit 'use this when…' statement, no mention of prerequisites, and no routing to or away from alternatives such as mortgage_calculator or rent_affordability_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hours_calculatorHours CalculatorARead-onlyIdempotentInspect
An hours calculator laid out as a weekly time card: start, end and unpaid break per day, totalled as h:mm and decimal hours, with hours over 40 flagged. Web page: https://calcbright.com/hours-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Hourly rate (optional) | |
| friEnd | No | End (HH:MM, 24-hour) | 17:30 |
| monEnd | No | End (HH:MM, 24-hour) | 17:30 |
| satEnd | No | End (HH:MM, 24-hour) | |
| sunEnd | No | End (HH:MM, 24-hour) | |
| thuEnd | No | End (HH:MM, 24-hour) | 17:30 |
| tueEnd | No | End (HH:MM, 24-hour) | 17:30 |
| wedEnd | No | End (HH:MM, 24-hour) | 17:30 |
| currency | No | Currency | USD |
| friBreak | No | Break (min) | |
| friStart | No | Friday start (HH:MM, 24-hour) | 09:00 |
| monBreak | No | Break (min) | |
| monStart | No | Monday start (HH:MM, 24-hour) | 09:00 |
| satBreak | No | Break (min) | |
| satStart | No | Saturday start (HH:MM, 24-hour) | |
| sunBreak | No | Break (min) | |
| sunStart | No | Sunday start (HH:MM, 24-hour) | |
| thuBreak | No | Break (min) | |
| thuStart | No | Thursday start (HH:MM, 24-hour) | 09:00 |
| tueBreak | No | Break (min) | |
| tueStart | No | Tuesday start (HH:MM, 24-hour) | 09:00 |
| wedBreak | No | Break (min) | |
| wedStart | No | Wednesday start (HH:MM, 24-hour) | 09:00 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-open-world, so the safety profile is covered. The description usefully adds what the computation produces (totals in h:mm and decimal hours, and an overtime flag above 40 hours), which the agent cannot get from the schema. It does not mention the pay/rate output even though a rate and currency parameter exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the calculation model is front-loaded and the URL is appended last. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 23-parameter tool with no output schema, the description explains the weekly-card model and the shape of the results (h:mm, decimal, overtime flag), which is the key missing context. It omits any indication of the rate/currency pay output, a minor gap given the rich schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents every parameter including the HH:MM format and break minutes. The description's mention of start/end/unpaid break per day loosely maps to the params but adds no syntax or default detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific resource (weekly time card) plus the calculation mechanics: start, end, unpaid break per day, totalled as h:mm and decimal hours, with overtime over 40 flagged. This is far more concrete than a restated name. It does not explicitly name the sibling it differs from (e.g. overtime_calculator or time_duration_calculator), so it lands at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no routing to alternatives such as time_duration_calculator (single span) or overtime_calculator. An agent must infer from the mechanics that this is the multi-day weekly option. The usage context is only implied, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ideal_weight_calculatorIdeal Weight CalculatorBRead-onlyIdempotentInspect
At 175 cm, the Devine formula puts a man’s ideal weight at 70.5 kg. Compare Robinson, Miller, Devine and Hamwi with the healthy BMI range for your height. Web page: https://calcbright.com/ideal-weight-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| units | No | Units | metric |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so safety and repeatability are covered. The description adds the calculation methods (four formulas) and mentions a BMI-range comparison, which is useful context. However, it does not clarify how metric/imperial inputs are handled or what the returned result looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a URL, with a concrete example followed by the core comparison. It is front-loaded and free of fluff. The web page link is mildly extraneous, keeping it short of a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only calculator with a rich schema and annotations, the description names the formulas and BMI comparison, which is helpful. But with no output schema, it still omits the result shape and does not explain how cm, ft/inch, and the units parameter interact. It is adequate but leaves clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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. The description gives a single example using cm and male but adds no syntax, default, or unit-handling meaning beyond the schema. The baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific formulas (Robinson, Miller, Devine, Hamwi) and a healthy BMI range comparison, with a concrete example at 175 cm. It never explicitly states the core verb 'calculates ideal weight', relying on the title and example to convey that. It is clear but not maximally crisp or sibling-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention bmi_calculator or any other sibling, nor does it state exclusions or preferred scenarios. The use case is only implied by the example and formula comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
income_tax_calculatorIncome Tax CalculatorBRead-onlyIdempotentInspect
$100,000 single owes $13,170 in 2026 federal tax – 13.17%, not 22%. IRS brackets, $16,100 standard deduction, $2,200 child credit and the 65+ deductions. Web page: https://calcbright.com/income-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| aged | No | Aged 65 or older Adds the extra standard deduction and the 2025–2028 senior deduction of up to $6,000 each. | 0 |
| state | No | State | TX |
| filing | No | Filing status | single |
| income | No | Gross annual income Wages, self-employment profit, interest and other ordinary income. | |
| pretax | No | Pre-tax deductions 401(k), traditional IRA, HSA, etc. | |
| children | No | Children under 17 Qualifying children with a Social Security number – $2,200 child tax credit each. | |
| itemized | No | Total itemized deductions Mortgage interest, state & local taxes (SALT), charity, medical above 7.5% of AGI. | |
| deduction | No | Deduction | standard |
| stateRate | No | State effective tax rate (%) Your state has progressive rates – enter your approximate effective rate. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and closed-world, so the safety profile is covered. The description adds model-year anchoring (2026 brackets, 2025–2028 senior deduction), which is useful context. It does not disclose that state tax is only an approximate effective rate or that the output is an estimate rather than filing-grade — gaps the schema hints at but the description ignores.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, but the opening worked example plus the 'not 22%' framing reads as marketing rather than specification, and the trailing URL consumes space without aiding invocation. The core mechanics list does earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with 100% schema coverage and no output schema, most of the burden is already carried by structured fields. Still, the presence of state and stateRate parameters with no explanatory mention in the description leaves an agent unsure whether the result includes state tax or is federal-only.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so every parameter including the aged enum and stateRate is documented in the schema; baseline is 3. The description adds no parameter meaning beyond the schema, and notably never mentions the state/stateRate inputs even though it otherwise enumerates the tax components.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description leads with a concrete worked example and names the specific mechanics (IRS brackets, $16,100 standard deduction, $2,200 child credit, 65+ deductions), so the resource is unambiguously US federal income tax. It never states a verb+resource directly and does nothing to distinguish it from siblings like take_home_pay_calculator or salary_calculator, which also return post-tax figures.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance at all. An agent is given no basis for choosing this over take_home_pay_calculator, salary_calculator, or capital_gains_tax_calculator; nothing indicates which income types belong here.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inflation_calculatorInflation CalculatorBRead-onlyIdempotentInspect
At 3% a year, $100 of shopping costs $134.39 in a decade. This inflation calculator projects prices in any currency and shows if your savings or salary keep up. Web page: https://calcbright.com/inflation-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Average inflation rate (% / yr) Leave empty to use the latest official annual inflation for your currency’s country. | |
| years | No | Years ahead (years) | |
| amount | No | Amount | |
| growth | No | Your money grows at (optional) (% / yr) A deposit rate, investment return or yearly pay rise – shows what the amount is really worth after inflation. | |
| currency | No | Currency | USD |
| direction | No | Calculate | future |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this as a safe, idempotent, closed-world read, so the description does not need to carry the safety profile. It adds modest context about projecting prices across currencies and comparing against savings or salary growth, but says nothing about what the result contains or how the default-rate fallback behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Only three sentences, but the leading worked example ($100 shopping → $134.39) precedes the actual purpose statement, so the definition is not front-loaded. The trailing webpage URL is a promotional element that does not help an agent decide or invoke.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six all-optional parameters, no output schema, and a results-oriented purpose, the description should say what comes back (projected price, real value after inflation). It does not, leaving the agent to infer the return shape, though the annotations and complete schema cover the rest adequately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including rate, growth, direction and currency is already documented in the schema. The description echoes 'any currency' and gestures at the growth comparison but adds no formatting, range, or interpretation detail beyond that baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource ('inflation calculator') and the operation ('projects prices in any currency'), plus a secondary capability ('shows if your savings or salary keep up'). That is enough to separate it from most siblings, though it never explicitly contrasts with close neighbours like compound_interest_calculator or future_value_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the savings/salary framing, which hints at the growth-vs-inflation use case. There is no explicit statement of when to pick this over compound_interest_calculator or currency_converter, and no mention of when it is not appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interest_only_mortgage_calculatorInterest-Only Mortgage CalculatorBRead-onlyIdempotentInspect
A $300,000 loan at 6.5% costs $1,625 a month interest-only, then $2,236.72 once repayment starts. Compare it with a standard mortgage and see the extra interest. Web page: https://calcbright.com/interest-only-mortgage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| loan | No | Loan amount | |
| rate | No | Interest rate (%) | |
| term | No | Total loan term (years) | |
| ioYears | No | Interest-only period (years) | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so safety is covered. The description adds value beyond that by disclosing the tool's core two-phase behavior (interest-only payment, then a higher amortized payment) and, with no output schema present, embedding concrete sample figures that convey the shape of the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences plus a source URL, with the illustrative numbers front-loaded. Every element earns its place, though leading with a numeric teaser rather than a one-line statement of purpose slightly delays orientation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 carry return-value burden, and the example partially does so (monthly interest-only cost, post-IO cost, comparative interest). It does not explain how term and ioYears interact (e.g., that repayment amortizes over the remaining years) or what currency affects, leaving gaps for a calculator with five inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and all five parameters (loan, rate, term, ioYears, currency) are documented in the schema. The description's example mirrors the schema defaults but adds no semantics for term, ioYears, or currency, so it neither compensates nor detracts; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The worked example ('$300,000 loan at 6.5% costs $1,625 a month interest-only, then $2,236.72') makes it clear this computes interest-only mortgage payments and the subsequent repayment phase. However, it never names or distinguishes itself from close siblings like mortgage_calculator, loan_calculator, or amortization_calculator, so an agent must infer the distinction from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Compare it with a standard mortgage and see the extra interest' describes an output capability, not a selection rule. There is no statement of when to choose this tool over the many mortgage/loan calculators in the sibling list, nor any prerequisite or exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_subnet_calculatorIP Subnet CalculatorARead-onlyIdempotentInspect
Paste 192.168.1.10/24 or any IPv4 CIDR to get the network, broadcast, usable host range, subnet and wildcard masks in binary – then split it into equal subnets. Web page: https://calcbright.com/ip-subnet-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| ip | No | IPv4 address You can also type CIDR notation, such as 10.0.0.0/16. | 192.168.1.10 |
| cidr | No | Prefix length (CIDR) | |
| split | No | Split into subnets (optional) Rounded up to a power of two – e.g. 4 subnets of a /24 are four /26 networks. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so safety is covered. The description adds genuine value by naming the computed outputs (network, broadcast, usable host range, binary masks) and the subnet-splitting behavior. It omits invalid-input handling and output formatting, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a web-page link, with the input format front-loaded before the outputs. The trailing URL earns little for an agent, but nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly enumerates what the call returns and describes the optional split behavior, which is what an agent needs to decide the tool is right. It would be complete with a note on invalid-CIDR behavior or the shape of the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 ip, cidr, and split including the power-of-two rounding rule. The description's '192.168.1.10/24' example and 'split it into equal subnets' only lightly reinforce what the schema states, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (IPv4 CIDR → network, broadcast, usable host range, masks in binary, subnet split) and shows the exact input format. It is clearly distinguishable from every sibling in the list, none of which do subnetting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the example input '192.168.1.10/24 or any IPv4 CIDR', but there is no explicit when-to-use statement, prerequisites, or exclusion. There is no overlapping sibling to route against, so the gap is mild but real.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jordan_end_of_service_calculatorJordan End of Service CalculatorCRead-onlyIdempotentInspect
JOD 600 a month for 7 years outside social security earns a JOD 4,200 end-of-service bonus in Jordan (Labour Law Art. 32) – even if you resign. Web page: https://calcbright.com/jordan-end-of-service-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| wage | No | Last monthly wage The last wage you were paid. For commission or piece-rate pay, use the average of the last 12 months. | |
| start | No | Start date (YYYY-MM-DD) | 2019-01-03 |
| notice | No | Did the employer give one month’s written notice? | yes |
| reason | No | How did the job end? | ended |
| covered | No | Were you covered by social security? | no |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that the tool is read-only, idempotent, and closed-world, so the safety profile is covered. The description adds no behavioral context such as how the calculation treats notice, social security coverage, or termination reason, and it does not describe output or limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with an example, but it leads with a specific scenario rather than a general purpose statement. The URL is potentially useful but occupies space that could have clarified the tool's behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six parameters, no required fields, and no output schema, the description should explain what the tool returns and how the result is derived. Instead it provides only a single anecdotal example, leaving the agent to infer the full calculation behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 six parameters in detail. The description echoes a few inputs (monthly wage, years, social security coverage, resignation) but adds no format or interpretation guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a worked example that implies this tool computes a Jordanian end-of-service bonus under Labour Law Art. 32, but it never states the tool's purpose directly. An agent can infer the resource from the example, yet the description does not clearly distinguish this from sibling tools like jordan_social_security_calculator or gcc_gratuity_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool, when not to use it, or which sibling alternative applies. The phrase 'even if you resign' hints that resignation scenarios are supported, but this is not framed as usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jordan_social_security_calculatorJordan Social Security CalculatorARead-onlyIdempotentInspect
7.5% from you, 14.25% from your employer: a JOD 800 wage costs JOD 60 + JOD 114 a month. 2026 SSC ceiling: JOD 3,733 (JOD 5,000 if covered before May 2010). Web page: https://calcbright.com/jordan-social-security-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| wage | No | Monthly wage Gross monthly wage subject to social security, including fixed allowances. Capped at JOD 3,733 in 2026. | |
| covered | No | First covered by social security | after |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. Beyond that, the description supplies substantive domain behavior: the 7.5%/14.25% split, the JOD 3,733 ceiling and the JOD 5,000 legacy ceiling, plus a worked example. It does not state what the response actually contains, which keeps it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences front-loaded with the rate/example, which is the highest-value information, followed by the ceiling rule and a reference URL. No filler, though the promotional URL is the only marginal sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter calculator with no output schema and full annotation coverage, the description provides the rates, ceilings, and a worked example that implies the return values. It could go slightly further by stating explicitly what the tool returns (employee share, employer share, total), but nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 earns extra by giving the consequence of the 'covered' enum ('JOD 5,000 if covered before May 2010') and showing how wage maps to concrete contribution amounts (JOD 60 + JOD 114). This adds meaning beyond the schema's terse parameter text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The concrete example ('a JOD 800 wage costs JOD 60 + JOD 114 a month') makes clear this computes Jordanian social-security employee/employer contributions, and the country scope is unambiguous. It never states the verb explicitly ('calculates') nor distinguishes itself from the generic social_security_calculator or egypt_social_insurance_calculator siblings, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no mention of alternative sibling tools (e.g. the generic social_security_calculator). The closest thing to guidance is the note that the higher ceiling applies to those covered before May 2010, which is implied usage at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
land_transfer_tax_calculatorLand Transfer Tax CalculatorBRead-onlyIdempotentInspect
A $700,000 Ontario home owes $10,475 in land transfer tax – double in Toronto. 2026 rates for every province, BC PTT, Quebec welcome tax and buyer rebates. Web page: https://calcbright.com/land-transfer-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| price | No | Purchase price | |
| nsRate | No | Municipal deed transfer tax rate (%) Halifax: 1.5%. Check your municipality’s rate. | |
| region | No | Province | CA-ON |
| toronto | No | Property in the City of Toronto? | no |
| assessed | No | Assessed value (if higher) Tax is charged on the greater of price and assessed value. | |
| montreal | No | Property in Montréal? | no |
| firstTime | No | First-time home buyer? | no |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuine context beyond that: the rate year (2026), the Toronto doubling effect, and buyer rebates. It does not describe the return format, but the annotations lower the burden enough that this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with a headline example that reads as marketing rather than functional guidance. The $700,000/$10,475 hook and the trailing URL consume space without helping an agent select or invoke the tool. It is compact but not every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with no required params and no output schema, the description covers domain scope but omits what the calculation returns and how outputs are structured. The schema fully documents inputs, and annotations cover safety, so the gaps are moderate rather than severe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 loosely connects to several parameters (Toronto doubling to the 'toronto' flag, provincial rates to 'region', rebates to 'firstTime'), but it adds no syntax, units, or conditional logic beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this computes land transfer tax for Canadian property purchases, with concrete scope details (2026 rates for every province, BC PTT, Quebec welcome tax, buyer rebates). It names no sibling, but the province-specific Canadian scope implicitly separates it from stamp_duty_calculator (UK) and dld_fee_calculator (Dubai). The purpose is delivered via example and scope rather than an explicit verb+resource statement, keeping it below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no alternatives are named. The agent must infer from the example (Ontario home) that this applies to Canadian real-estate purchases, and nothing tells it when to prefer this over canadian_mortgage_calculator or stamp_duty_calculator. Scope statements imply applicability but do not route usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lcm_gcd_calculatorLCM & GCD CalculatorARead-onlyIdempotentInspect
For 12, 18 and 30 the GCD is 6 and the LCM is 180. Get both for up to 20 whole numbers, with each prime factorization shown – GCF and HCF are the same thing. Web page: https://calcbright.com/lcm-gcd-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| numbers | No | Whole numbers 2 to 20 positive whole numbers, separated by commas or spaces. | 12, 18, 30 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world, so the safety profile is covered. The description adds real behavioral value beyond that: the output includes each prime factorization, and there is a 20-number input ceiling not visible from 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Roughly three short sentences, no padding. Leading with the worked example is slightly indirect for an agent scanning for the verb, but it is compact and informative. The trailing web-page URL is promotional rather than operational and is the only dispensable element.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, no-output-schema tool this is nearly complete: it describes what is computed and that prime factorizations are returned. It omits behavior on malformed input (non-integers, duplicates, out-of-range values), which is the main remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema coverage, the baseline is 3. The description's 'up to 20 whole numbers' restates what the schema already says ('Whole numbers 2 to 20...'), and the comma/space delimiter guidance is also in the schema, so little is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific computation (GCD/GCF and LCM/HCF) and reinforces it with a worked example, so an agent knows exactly what the tool produces. It does not explicitly contrast with near-neighbors like prime_number_checker or fraction_calculator, but the resource is distinctive enough to stand apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the nature of the tool; there is no statement of when to prefer it over alternatives (e.g., prime_number_checker when you only need factor structure). It does communicate scope ('up to 20 whole numbers') and the GCF/HCF synonym, which gives the agent some selection context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lean_body_mass_calculatorLean Body Mass CalculatorARead-onlyIdempotentInspect
A 70 kg, 175 cm man has about 56 kg of lean mass by the Boer formula. Enter your height, weight and sex to estimate lean and fat mass in kg or pounds. Web page: https://calcbright.com/lean-body-mass-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| units | No | Units | metric |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and a closed-world profile, so the safety burden is light. The description adds genuinely useful context beyond that: the named Boer formula, that both lean AND fat mass are returned, and that output is expressible in kg or pounds. It omits that all seven inputs are optional and defaulted, but that lives in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences plus a reference URL; the concrete example is front-loaded and the operational instruction follows immediately. The trailing webpage link adds little for an agent and is the only filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and seven parameters, the description does a fair job by showing a sample result magnitude, but it never explains how the metric and imperial parameter families interact (which fields to populate under which 'units' value). Adequate, but not fully sufficient for a 7-param tool with a dual-unit input design.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 every parameter, making 3 the baseline. The description only loosely implies the unit dimension ('in kg or pounds') and never clarifies the metric/imperial parameter split (cm/ft/inch, kg/lb) that the schema exposes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource (estimate lean and fat mass) and even anchors it with a worked example (70 kg, 175 cm, Boer formula), so the purpose is unambiguous. It does not, however, differentiate itself from close siblings like body_fat_calculator, bmi_calculator, or ideal_weight_calculator, which an agent must choose among.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Enter your height, weight and sex' implies the input conditions, but there is no explicit when-to-use guidance and no exclusion relative to the many body-composition siblings. Usage is inferable but the agent gets no routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
loan_calculatorLoan & EMI CalculatorBRead-onlyIdempotentInspect
AED 100,000 at 3.99% flat over 4 years is AED 2,415.83 a month – really 7.46% reducing. Get the EMI, interest and schedule, with UAE and Saudi limits. Web page: https://calcbright.com/loan-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Interest rate (% per year) | |
| basis | No | Rate type Flat rates charge interest on the original loan for the whole term – common for Gulf personal and car loans. | reducing |
| extra | No | Extra payment / month Optional prepayment added to every installment. | |
| years | No | Term (years) | |
| amount | No | Loan amount | |
| months | No | + months | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe, deterministic read-only computation, so the description only needs to add context — and it does: it names the outputs (EMI, interest, schedule), which is the one thing an absent output schema cannot convey, and warns that flat-quoted Gulf loans are materially more expensive at 7.46% reducing. No contradiction with readOnlyHint/idempotentHint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short and every clause carries information, but it opens with a numeric anecdote rather than the purpose, so the actual capability statement is buried mid-passage. The trailing marketing URL is filler for an agent choosing a tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With all seven parameters documented in the schema and safety covered by annotations, the remaining burden is the return shape — and the description names the three outputs (EMI, interest, schedule). Only the schedule's granularity and the interaction of extra/months are left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains amount, rate, basis, years, months, extra and currency. The description reinforces the meaning of "flat" through a worked example but says nothing about "extra" prepayment, "months", or "currency" behaviour, so it adds only marginal semantics over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Get the EMI, interest and schedule" names a specific verb and concrete outputs, and the flat-vs-reducing example pins down the calculation domain. It does not, however, distinguish this from near neighbours like amortization_calculator, auto_loan_calculator or simple_interest_calculator that appear in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to choose this over the many loan/mortgage/interest siblings, and no exclusions. "With UAE and Saudi limits" hints at a regional scope but never says what those limits are or when the tool is inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
loan_to_value_calculatorLoan-to-Value (LTV) CalculatorRead-onlyIdempotentInspect
AED 1.6M owed on a AED 2M Dubai flat is 80% LTV – an expat’s first-home cap. See your LTV, CLTV and equity against UAE, Saudi and US limits. Web page: https://calcbright.com/loan-to-value-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| loan | No | Loan / mortgage balance | |
| rules | No | Check against Sets the maximum loan-to-value and the currency | none |
| value | No | Property value Bank valuation, or the price if lower | |
| second | No | Other loans secured on the property (optional) Second mortgage or home equity line – gives the combined LTV | |
| currency | No | Currency | USD |
logarithm_calculatorLogarithm CalculatorARead-onlyIdempotentInspect
Log calculator for common log (base 10), natural log (ln), log base 2 or any custom base like log₃(81) = 4, with the change-of-base division written out. Web page: https://calcbright.com/logarithm-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | Number (x) | |
| base | No | Base | 10 |
| custom | No | Custom base (b) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation as read-only, idempotent, and closed-world. The description adds useful behavioral context by noting that the change-of-base division is written out, which tells the agent what the output will include. It still omits domain constraints such as x needing to be positive, but the core behavioral gap beyond annotations is small.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded and compact: a single informative sentence followed by a short web-page link. The link is not essential for tool invocation, but it is brief and does not detract from the core content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple calculator with rich annotations and a full schema, the description covers the main operation and output detail. However, it does not warn that x must be positive for a logarithm or that a custom base must be greater than 0 and not equal to 1, despite schema ranges that permit invalid inputs. These edge-case gaps matter for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 semantic meaning beyond the schema's terse labels by mapping the base enum values to 'common log (base 10)', 'natural log (ln)', and 'log base 2', and by giving a worked example log₃(81) = 4 that clarifies the custom-base use case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the tool as a log calculator and enumerates the supported bases (10, e, 2, custom), which clearly identifies the operation and distinguishes it from most siblings. It does not explicitly differentiate itself from the scientific_calculator, which can also compute logarithms, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says what the tool computes but gives no guidance on when to choose it over alternatives such as exponent_calculator or scientific_calculator. No prerequisites, exclusions, or when-not-to-use conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
macro_calculatorMacro CalculatorBRead-onlyIdempotentInspect
Protein and carbs have 4 kcal per gram, fat 9. Turn your Mifflin–St Jeor calorie target into daily grams for fat loss, maintenance or gain in three splits. Web page: https://calcbright.com/macro-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| age | No | Age (years) | |
| sex | No | Sex | male |
| diet | No | Diet style | balanced |
| goal | No | Goal | maintain |
| inch | No | (in) | |
| units | No | Units | metric |
| activity | No | Activity level | moderate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, idempotent, closed-world read (readOnlyHint, idempotentHint, openWorldHint=false), lowering the burden. The description adds useful domain constants (4 kcal/g for protein and carbs, 9 kcal/g for fat) but says nothing about the return structure, units handling, or that all 11 inputs are optional and defaulted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences plus a reference URL; no filler. It is slightly front-loaded with a nutrient constant rather than the primary action, but the tool's function is still apparent by the second clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter calculator with no output schema and no required fields, the description covers the intent but not the mechanics: it never explains that body metrics drive an internally computed calorie target (the text implies the user supplies one), nor how the three-split output is shaped. Adequate but with real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 some meaning — the kcal-per-gram model behind the conversion and the three goal modes — but leaves the metric/imperial duality (cm vs ft/inch, kg vs lb) and the role of `units`, `activity`, and `diet` entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete transformation (a Mifflin–St Jeor calorie target → daily macro grams) and scopes it to fat loss, maintenance or gain across three diet styles, so the agent knows exactly what the tool produces. It does not, however, position itself against the crowded sibling set (protein_calculator, bmr_calculator, tdee_calculator), which share the same nutrition domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: mentioning 'your Mifflin–St Jeor calorie target' hints that a calorie target is the input context, and the goal/split language maps to the goal and diet enums. There is no explicit when-to-use vs when-not, and no guidance on choosing this over protein_calculator or tdee_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
markup_calculatorMarkup CalculatorARead-onlyIdempotentInspect
A 50% markup on a $40 cost sells at $60 – a 33.33% margin, not 50%. Find the price from a markup, the markup from a price, or the markup a target margin needs. Web page: https://calcbright.com/markup-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| vat | No | VAT on the selling price Markup is always on the price before VAT – a shelf price you enter has its VAT taken out first | 0 |
| cost | No | Cost per unit Without any VAT you can reclaim | |
| mode | No | What do you want to find? | price |
| price | No | Selling price | |
| margin | No | Target margin (%) | |
| markup | No | Markup (%) | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, and closed-world behavior, so the bar is lower. The description adds a concrete markup-vs-margin example and mode-oriented behavior, but does not discuss output format, rounding, VAT handling, or other behavioral details beyond the example.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three compact sentences: a clarifying example, a list of supported calculations, and a reference URL. It is mostly front-loaded and has little waste, though the URL is optional rather than essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple calculator with all-optional parameters, full schema coverage, and no output schema, the description provides enough context to understand the tool's three modes and markup-vs-margin distinction. It could say more about returned values or VAT interaction, but the schema covers most input details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 seven parameters. The description adds some conceptual mapping for the three modes, especially 'markup a target margin needs,' but does not add parameter-level syntax or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific calculation capability: finding price from markup, markup from price, or markup needed for a target margin. The opening example clearly distinguishes markup from margin, which helps separate it conceptually from profit-margin tools, though it does not name any sibling tool explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies when to use the tool by listing the three calculation directions, but gives no explicit when-not guidance or named alternatives such as profit_margin_calculator or discount_calculator. The usage context is adequate but not fully directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
morocco_severance_calculatorMorocco Severance Pay CalculatorBRead-onlyIdempotentInspect
MAD 8,000 a month for 10 years earns MAD 50,261.78 severance in Morocco (Labour Code Art. 53) – plus notice pay, and court damages if the dismissal is abusive. Web page: https://calcbright.com/morocco-severance-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| wage | No | Average gross monthly wage Average over the last 52 weeks, including bonuses and benefits that are part of your pay (Labour Code Art. 55 and 57). | |
| start | No | Start date (YYYY-MM-DD) | 2016-01-04 |
| notice | No | Did the employer give the notice period? | yes |
| reason | No | Type of dismissal | dismissal |
| category | No | Job category Sets the minimum notice period. | employee |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations establish this as a safe, idempotent, closed-world read, so the safety burden is lifted. The description does add useful domain behavior — the payout concept includes notice pay and possible court damages for abusive dismissal — but it never says what the response looks like (breakdown lines, currency, whether notice/damages are separate fields), which matters since no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is compact, but it front-loads an example output rather than the tool's function, and appends a promotional web page URL that doesn't help the agent decide or call. Every idea appears once, but the ordering is not ideal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six optional parameters, three enums, and no output schema, the description should clarify what the result contains and how `notice`/`category`/`reason` affect it. It only hints at these through the example, leaving the response shape undocumented for a tool with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 worked example goes beyond the schema by binding concrete values to `wage` and the start/end dates and showing the resulting figure, giving an agent a sanity check; mentioning notice pay and abusive dismissal also implicitly maps to the `notice` and `reason` parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description concretely demonstrates what the tool does through a worked example ('MAD 8,000 a month for 10 years earns MAD 50,261.78 severance in Morocco, Labour Code Art. 53'), so an agent can immediately infer it computes Moroccan statutory severance. It never states the verb explicitly and doesn't distinguish itself from conceptually similar siblings like egypt_end_of_service or gcc_gratuity, relying on the jurisdiction name to differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the other end-of-service/gratuity calculators, nor any stated preconditions (e.g., employment contract governed by Moroccan Labour Code). The example implies usage but nothing is excluded or clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mortgage_calculatorMortgage CalculatorBRead-onlyIdempotentInspect
$400,000 home, 20% down at 7.32%: $2,198.18 a month before tax and insurance. Add escrow, PMI and extra payments, and see when PMI can be cancelled. Web page: https://calcbright.com/mortgage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| hoa | No | HOA fees / month | |
| pmi | No | PMI rate (if down < 20%) (%) | |
| tax | No | Property tax / year | |
| down | No | Down payment (%) | |
| rate | No | Interest rate (%) | |
| extra | No | Extra payment / month Extra principal paid every month. | |
| price | No | Home price | |
| years | No | Loan term (years) | |
| currency | No | Currency | USD |
| insurance | No | Home insurance / year |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description adds some useful context about escrow, PMI, extra payments, and PMI cancellation, but it does not describe the precise return shape or whether results include amortization schedules or only summary figures.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads a concrete example before listing additional capabilities. The URL is somewhat promotional, but overall there is little wasted text and the main idea is easy to grasp.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter calculator with no output schema, the description should clarify what the tool returns beyond the single monthly-payment example. It mentions PMI cancellation and extra payments, but does not explain whether the output includes total interest, payoff timing, amortization details, or just summary payment figures.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema. The description's example illustrates price, down payment, and rate, but it does not add meaning beyond the schema for parameters like HOA, tax, insurance, currency, or extra payment.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a concrete example and names the key capabilities: monthly payment, escrow, PMI, extra payments, and PMI cancellation. It is clear this is a mortgage payment calculator, but it does not explicitly distinguish itself from sibling mortgage tools such as canadian_mortgage_calculator, fha_loan_calculator, or interest_only_mortgage_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives, nor any when-not-to-use conditions. The feature list implies typical mortgage payment scenarios, but the large set of sibling mortgage calculators makes the lack of routing guidance a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mortgage_payoff_calculatorMortgage Payoff CalculatorBRead-onlyIdempotentInspect
$200 extra a month on $250,000 at 6.5% saves $64,927 and 5½ years. This mortgage payoff calculator adds lump sums, biweekly, UAE fees and a payoff goal. Web page: https://calcbright.com/mortgage-payoff-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| fee | No | Prepayment fee on the lump sum (%) UAE home loans: at most 1%, capped at AED 10,000. | |
| lump | No | One-time lump sum | |
| rate | No | Interest rate (%) | |
| extra | No | Extra payment / month | |
| start | No | Next payment date (YYYY-MM-DD) | 2026-11-01 |
| years | No | Remaining term (years) | |
| target | No | Goal: mortgage-free in (years) Shows the extra monthly payment that clears the balance in that many years. | |
| balance | No | Current loan balance | |
| biweekly | No | Biweekly payments | no |
| currency | No | Currency | USD |
| afterLump | No | After the lump sum | term |
| lumpMonth | No | Paid with payment # | |
| extraMonths | No | plus months (months) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds some behavioral value by showing the kind of result produced (interest saved and time saved), but it does not describe output fields, how the 'target' mode differs from the 'extra' mode in returned values, or any assumptions in the amortization model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short and front-loads a concrete numeric payoff example before stating capabilities. The trailing web page URL contributes little to an agent deciding how to call the tool, but it is only one clause and does not obscure the core message.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 13-parameter calculator with no output schema, the definition should clarify what the result contains. The example hints at savings in money and time, but it never states the return structure or how results change when 'target' is supplied instead of 'extra', leaving a meaningful gap against the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including fee, biweekly, afterLump and target is already documented in the schema. The description only restates that these features exist (lump sums, biweekly, UAE fees, payoff goal) without adding syntax, units, or interaction rules beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the tool's function and its distinctive capabilities (lump sums, biweekly payments, UAE prepayment fees, payoff goal) via the sentence 'This mortgage payoff calculator adds lump sums, biweekly, UAE fees and a payoff goal.' That differentiates it from generic siblings like mortgage_calculator or amortization_calculator, though it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use / when-not-to-use guidance and no routing to the many neighboring payoff-related tools (debt_payoff_calculator, credit_card_payoff_calculator, amortization_calculator). The opening example implicitly shows a scenario ('$200 extra a month on $250,000 at 6.5%'), but the agent must infer the selection criteria itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
number_base_converterNumber Base ConverterARead-onlyIdempotentInspect
Decimal 255 is 11111111 in binary, 377 in octal and FF in hex. Convert between any bases from 2 to 36, paste 0x or 0b values, and handle 64-bit+ integers. Web page: https://calcbright.com/number-base-converter
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | Input base | 10 |
| value | No | Number to convert | 255 |
| custom | No | Custom base Used for custom input and shown as an extra result. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, closed-world behavior, so the bar is lower. The description adds real behavioral detail beyond them: arbitrary bases 2–36, acceptance of 0x/0b-prefixed input, and 64-bit+ integer support, which signals string-based big-integer handling rather than ordinary numeric limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The middle sentence carries the actual tool definition and is well-scoped. It is not front-loaded, however — the definition opens with a worked example, and the trailing web-page URL adds nothing an agent can act on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, annotated, read-only conversion tool with full schema coverage and no output schema, the description covers input forms, base limits, and integer magnitude adequately. The only soft spot is that it never indicates what the response contains (e.g., results in multiple bases), though the opening example implies it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 'from', 'value', and 'custom' with ranges and defaults. The description adds only the 0x/0b input convention and the 2–36 base range, which are modest gains over structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Convert between any bases from 2 to 36') and immediately scopes the domain with binary/octal/hex examples. The base-range constraint cleanly separates it from adjacent numerics siblings such as roman_numeral_converter, scientific_notation_converter, and number_to_words_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the nature of the tool and the accepted-input note ('paste 0x or 0b values'), which tells the agent what input forms work. However, there is no explicit when-to-use guidance, no exclusions, and no alternative tool named for related conversions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
number_to_words_converterNumber to Words ConverterARead-onlyIdempotentInspect
Writing a check? Get the amount line in words, such as “and 45/100 dollars”, or spell out any number up to 999 trillion – including Indian lakh and crore. Web page: https://calcbright.com/number-to-words-converter
| Name | Required | Description | Default |
|---|---|---|---|
| unit | No | Currency for cheques | dollars |
| value | No | Number | 1234.45 |
| system | No | Numbering system | international |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world behavior, so the safety profile is covered. The description adds genuinely new behavioral context: the supported magnitude (up to 999 trillion), support for the Indian lakh/crore system, and a sample of the output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the use case and the core capability in two efficient clauses with a helpful example. The trailing web-page URL adds little operational value but is minor.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 the return-value burden and does so via the 'and 45/100 dollars' example plus the stated numeric range. Coverage is strong for a simple three-parameter converter, though a fuller output example would close the remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 further by tying parameters to meaning: 'and 45/100 dollars' illustrates the unit/currency output for cheques, and 'Indian lakh and crore' explains what the system enum actually changes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific transform ('spell out any number up to 999 trillion') with a concrete output example ('and 45/100 dollars'), making the verb+resource unmistakable. An agent can distinguish it from siblings like roman_numeral_converter or number_base_converter without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Opens with a clear situational trigger ('Writing a check?') that tells the agent exactly when this tool is relevant, and notes the Indian numbering scope. However, it names no alternative tools or exclusions, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ohms_law_calculatorOhm’s Law CalculatorBRead-onlyIdempotentInspect
Enter any two of volts, amps, ohms and watts to get the other two. Also converts watts to amps for DC, single-phase and three-phase AC with power factor. Web page: https://calcbright.com/ohms-law-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| i | No | Current (I) (A) | |
| p | No | Power (P) (W) | |
| r | No | Resistance (R) (Ω) | |
| v | No | Voltage (V) (V) | |
| pf | No | Power factor 1 for heaters and incandescent lamps; about 0.8–0.95 for motors and electronics. | |
| amps | No | Current (A) | |
| mode | No | Calculate | ohm |
| phase | No | Circuit | ac1 |
| solve | No | Find | amps |
| volts | No | Voltage (V) | |
| watts | No | Power (W) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety and determinism are covered by structured data. The description adds the genuine behavioral fact that the tool serves two distinct calculation regimes (Ohm's law pair-solving and AC watts-to-amps), but does not state that inputs are pure computation with no side effects or how the two regimes are selected. Modest added context over annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences: primary function first, secondary AC capability second, reference link last. Nothing is padded or repeated. The trailing marketing URL is the only low-value element, so it stops short of a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Eleven optional parameters, three enums (mode, phase, solve), duplicated quantity parameters and no output schema make this a genuinely complex call, yet the description never explains the mode switch, the phase/pf inputs, or the 'solve' selector. An agent must reverse-engineer the parameter subsets from the schema alone, which is a meaningful completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the per-parameter descriptions (e.g. 'Current (I) (A)', 'Power factor...0.8-0.95 for motors') carry the baseline burden and the score floors at 3. The description adds the real semantic rule that any two of V/I/R/P determine the rest, but it never resolves the schema's duplication problem: 'i' vs 'amps', 'p' vs 'watts', and 'v' vs 'volts' are never mapped to the ohm/power modes, and 'ohms' in the description does not match the 'r' parameter name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific computation clearly: 'Enter any two of volts, amps, ohms and watts to get the other two,' plus a second capability (watts-to-amps for DC/1-phase/3-phase AC). That is far more specific than 'Ohm's law calculator' alone. It does not differentiate itself from nearby siblings such as scientific_calculator or electricity_cost_calculator, which keeps it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Enter any two of volts, amps, ohms and watts' implicitly tells the agent what inputs to supply for the primary calculation. However, it gives no guidance on when to choose mode='ohm' versus mode='power', when phase/pf matter, or what to do if the caller has only one known quantity. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
one_rep_max_calculatorOne Rep Max CalculatorARead-onlyIdempotentInspect
Estimate your bench, squat or deadlift max from a submaximal set: Epley, Brzycki and Lombardi 1RM side by side, plus a % of 1RM table for programming. Web page: https://calcbright.com/one-rep-max-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| reps | No | Reps completed (reps) Most accurate with 2–10 reps taken close to failure. | |
| unit | No | Unit | kg |
| weight | No | Weight lifted |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context by disclosing what the calculation returns (three formulas side by side plus a % of 1RM table), which matters because there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence front-loads the purpose and output composition, followed by a short link line. The marketing URL is mild filler but the definition is otherwise compact and well-ordered.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, idempotent calculator with full schema coverage, the description is complete enough: it conveys inputs (submaximal set), methods, and deliverable (1RM values plus a programming table). No output schema exists, and the description compensates by describing the return content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so reps, weight and unit are all documented in the schema itself (including the accuracy caveat for reps). The description adds no parameter-level detail beyond what the schema already provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Estimate") and resource (bench/squat/deadlift one-rep max) and names the exact methods used (Epley, Brzycki, Lombardi). No sibling tool covers 1RM estimation, so an agent can select it unambiguously from the large calculator family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"From a submaximal set" implies the usage context and the schema further notes the 2–10 rep accuracy window, but the description gives no explicit when-to-use guidance or exclusions (e.g. not for true max attempts or >15 reps). Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
overtime_calculatorOvertime CalculatorCRead-onlyIdempotentInspect
Saudi overtime on SAR 6,000 basic plus SAR 3,000 allowances is SAR 50 an hour, not SAR 37.50. Get UAE, Saudi and US overtime pay from your real salary. Web page: https://calcbright.com/overtime-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Hourly rate | |
| basic | No | Basic monthly salary Basic salary only, before housing, transport and other allowances. | |
| otDay | No | Overtime hours (hrs) Hours beyond your normal hours in the period. | |
| rules | No | Overtime rules | hourly |
| total | No | Total monthly wage Basic plus fixed allowances – Saudi law pays the full hourly wage plus 50% of the basic. | |
| otNight | No | Of which 10 pm – 4 am (hrs) Night overtime earns +50% instead of +25% (not for shift workers). | |
| regular | No | Regular hours (hrs) | |
| restDay | No | Hours worked on rest days / holidays (hrs) UAE: paid +50% unless you get a substitute day off. Saudi Arabia: all such hours are overtime. | |
| currency | No | Currency | USD |
| dayHours | No | Normal hours a day (hrs) Usually 8; 6 for Muslim workers in Ramadan in Saudi Arabia, 2 fewer in the UAE. | |
| overtime | No | Overtime hours (hrs) | |
| multiplier | No | Overtime rate | 1.5 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint and idempotentHint already establish that this is a safe, repeatable computation, so the description owes little on the safety front. It does add genuine domain context via the Saudi example (allowances count toward the hourly wage), but it says nothing about the response shape or which parameters each rules mode consumes. The stated US support conflicts with the rules enum, which is a schema inconsistency rather than an 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with little wasted text, though the trailing website URL is pure promotion and the leading example is a poor front-load for a purpose statement. The useful routing information, if any, is buried at the end.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 12 parameters, three mutually exclusive rule regimes and no output schema, the description should explain which inputs each mode needs and what the result contains; instead it offers one illustrative number. An agent cannot tell from this text whether rate, multiplier, otNight or regular are relevant under uae versus ksa.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every one of the 12 parameters is already documented in the schema, which sets the baseline at 3. The worked example (SAR 6,000 basic + SAR 3,000 allowances = SAR 50/hr) does concretely illustrate how basic and total interact under Saudi rules, adding modest value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence gives a concrete verb and resource ("Get UAE, Saudi and US overtime pay from your real salary"), but the description opens with a bare worked example rather than stating what the tool does. It also fails to distinguish itself from nearby siblings like salary_calculator, hours_calculator or gcc_gratuity_calculator, and it advertises "US" overtime although the rules enum only offers hourly/uae/ksa.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no help choosing among the three rules modes (hourly vs uae vs ksa), which is the single most important decision an agent must make here. The only implied usage cue is the mention of country names in passing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ovulation_calculatorOvulation CalculatorARead-onlyIdempotentInspect
Pinpoint your likely ovulation day and six-day fertile window from your last period and cycle length, with the dates mapped out for your next four cycles. Web page: https://calcbright.com/ovulation-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | First day of your last period (YYYY-MM-DD) | 2026-10-01 |
| cycle | No | Average cycle length (days) | |
| luteal | No | Luteal phase length (days) Days from ovulation to your next period – 14 for most people. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so safety is covered. The description adds genuine output scope ('dates mapped out for your next four cycles', six-day fertile window), which is useful since no output schema exists, but it discloses nothing further about assumptions or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight, front-loaded sentence that leads with the deliverable and then the inputs. The trailing web page URL is mildly extraneous but standard and harmless.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter calculator with fully documented schema and no output schema, the description covers what is computed and how far ahead. Nothing an agent needs to invoke it correctly appears to be missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with defaults and ranges documented for date, cycle and luteal. The description only restates the period and cycle-length inputs and omits the luteal phase entirely, so it adds little beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (pinpoint) and resource (ovulation day and six-day fertile window) with scope (next four cycles). The resource is naturally distinct from the closest siblings period_calculator and pregnancy_due_date_calculator, but the description never names or contrasts them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the described inputs ('from your last period and cycle length'), so an agent can infer applicability. However there is no explicit when-to-use guidance, no exclusion of similar date/pregnancy tools, and no stated prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pace_calculatorPace CalculatorARead-onlyIdempotentInspect
10 km in 50 minutes is 5:00 per km or 8:03 per mile. Get running pace and speed from any distance and time, or your finish time for a 5K to a marathon. Web page: https://calcbright.com/pace-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| h | No | Time (h) | |
| m | No | (min) | |
| s | No | (s) | |
| pm | No | Pace (min) | |
| ps | No | (s) | |
| mode | No | Calculate | pace |
| preset | No | Distance | 10k |
| distUnit | No | Unit | km |
| distance | No | Custom distance | |
| paceUnit | No | Per | km |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint=false, and idempotentHint, so safety is covered. The description adds value beyond them by showing a concrete worked result ("10 km in 50 minutes is 5:00 per km or 8:03 per mile"), which reveals the dual-unit output format that no structured field provides. It stops short of disclosing the two-mode behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The worked example is front-loaded and immediately grounds the tool's purpose, followed by a compact scope sentence and a reference URL. All three sentences carry weight with no padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 10 parameters spanning two calculation modes, the description never explains how mode toggles between pace calculation and finish-time calculation, nor how preset vs custom distance interact. The schema descriptions carry that burden, leaving the prose merely adequate for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 10 parameters, making 3 the baseline. The description's example loosely illustrates pace/speed output but adds no syntax or meaning beyond the schema for the mode, preset, distUnit, or paceUnit enums.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource ("Get running pace and speed from any distance and time, or your finish time for a 5K to a marathon") and scopes it to running pace, which is clearer than a generic calculator. It does not, however, differentiate itself from the closely overlapping sibling speed_distance_time_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Two usage contexts are implied (derive pace from distance+time, or derive finish time from a target pace), but there is no explicit when-to-use/when-not framing and no named alternative. The agent must infer from the prose which case applies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paint_calculatorPaint CalculatorARead-onlyIdempotentInspect
A 12 × 12 ft room needs about 2 gallons for two coats. Enter room size, doors, windows and coats to get the wall area and the gallons or liters to buy. Web page: https://calcbright.com/paint-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| unit | No | Units | ft |
| coats | No | Coats | |
| doors | No | Doors | |
| width | No | Room width (ft) | |
| height | No | Wall height (ft) | |
| length | No | Room length (ft) | |
| ceiling | No | Paint the ceiling too? | no |
| windows | No | Windows | |
| coverage | No | Coverage (sq ft per gallon) Leave blank for a typical 350 sq ft per gallon (10 m² per liter). Check the paint can. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered and the bar is lower. The description adds only the worked example and a hint at the returned values; it does not disclose rounding behavior, unit handling, or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example, then a compact statement of inputs and outputs. The trailing web-page URL is promotional filler rather than functional information, but overall it is tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by naming the outputs (wall area and gallons/liters). It leaves unaddressed the possible tension between the 'unit' parameter and the '(ft)' parameter descriptions, a minor gap for a 9-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description echoes a subset of parameters (room size, doors, windows, coats) without adding syntax or semantics, and omits ceiling/coverage/unit, which the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete function: compute wall area and the gallons/liters to buy from room size, doors, windows and coats. The resource (paint quantity) is specific enough to distinguish it from area_calculator or flooring_calculator, though no sibling is explicitly named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by listing the inputs to enter and the outputs to expect, but gives no when-to-use/when-not guidance and does not point to related calculators like flooring_calculator. Usage is inferable, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
password_generatorPassword GeneratorARead-onlyIdempotentInspect
Make a random 8–64 character password from letters, digits and symbols and see its entropy in bits. Created on your device with crypto.getRandomValues. Web page: https://calcbright.com/password-generator
| Name | Required | Description | Default |
|---|---|---|---|
| lower | No | Lowercase (a–z) | yes |
| upper | No | Uppercase (A–Z) | yes |
| digits | No | Numbers (0–9) | yes |
| length | No | Password length (characters) | |
| similar | No | Exclude look-alike characters (I l 1 | O 0 o) | no |
| symbols | No | Symbols (!@#…) | yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-open-world behavior; the description adds genuinely new behavioral context by disclosing that generation happens client-side via crypto.getRandomValues (the secret never leaves the device) and that the response includes an entropy figure. Minor tension worth noting: the emphasis on randomness sits awkwardly with idempotentHint=true, since repeated calls yield different passwords.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with purpose and range, followed by the generation method. The trailing web-page URL is mildly promotional but short and harmless; nothing else is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter, all-optional tool with full schema coverage and no output schema, the description covers purpose, parameter bounds, generation environment, and hints at the returned payload ('entropy in bits'). The exact return shape (string vs. object with entropy) is not spelled out, which is the only real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – every parameter (lower, upper, digits, symbols, similar, length) is documented in the schema with enums and a default. The description only restates the length bounds and character categories already present, adding no syntax or interaction detail (e.g. behavior when all character classes are set to 'no'). Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Make a random ... password') plus scope (8–64 characters, letters/digits/symbols) and a secondary output (entropy in bits). An agent can distinguish it from generic siblings like random_number_generator or word_counter, though the description never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the tool's obvious domain: generate a password. There is no statement of when to prefer this over e.g. random_number_generator, no prerequisites, and no exclusions. Adequate but leaves the agent to infer intent from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_raise_calculatorPay Raise CalculatorBRead-onlyIdempotentInspect
A 5% pay raise on $60,000 is $63,000 – only 1.25% more after 3.7% US inflation. See a raise per year, month and hour, what it is worth net and in the Gulf. Web page: https://calcbright.com/pay-raise-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Hours per week (hrs) Used to convert between hourly and annual pay (52 weeks) | |
| raise | No | Raise (%) | |
| method | No | Raise given as | percent |
| newPay | No | New annual salary | |
| current | No | Current annual salary | |
| payType | No | Pay is | annual |
| currency | No | Currency | USD |
| inflation | No | Inflation over the year (%) Optional – your country’s latest 12-month consumer price inflation. Shows what the raise is worth after rising prices. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is already covered. The description adds a concrete numeric example and mentions output dimensions (year/month/hour, net, Gulf) but does not disclose limits, rounding, or how the 'Gulf' comparison works.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and includes a useful concrete example, but it leads with the example rather than stating the tool’s purpose, and the web page URL is promotional rather than operational. Nothing is verbose, but the structure is not optimally front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With eight optional parameters, no output schema, and annotations covering read-only/idempotent behavior, the description does enough to indicate the calculation’s scope. However, it leaves unclear how method, payType, and newPay/raise interact, and the 'net and in the Gulf' claim is not elaborated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all eight parameters are documented in the schema. The description adds only an example using default-like values and does not clarify interactions such as method versus raise/newPay or payType behavior, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes clear this tool computes pay raise outcomes, listing outputs like per year/month/hour, net worth, and Gulf context. It does not explicitly differentiate itself from siblings such as salary_calculator or inflation_calculator, but the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. The description is purely illustrative and does not tell an agent how to decide between this and sibling calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
percentage_calculatorPercentage CalculatorARead-onlyIdempotentInspect
What is 15% of 200? What percent is 30 of 200? Solve percent-of, percentage change, increase and decrease questions, with the working shown for each step. Web page: https://calcbright.com/percentage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | Percent (X) | |
| b | No | Of number (Y) | |
| mode | No | Calculation | of |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/openWorld=false, so the bar is low, and the description clears it by disclosing that results include the 'working shown for each step' — genuine output-behavior context the annotations do not cover. It stops short of describing error handling or precision behavior, but this is a solid addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with concrete examples that immediately anchor the tool's use, followed by a single purpose sentence and a short URL. The example questions arguably repeat the same pattern twice, but nothing is seriously wasted and the shape is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description rightly mentions step-by-step working as the returned content, which is the key gap it fills. However, with three defaulted parameters and no required fields, it never explains default behavior or the mode-to-parameter mapping, leaving the agent to infer how modes drive a/b interpretation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 schema's labels ('Percent (X)', 'Of number Y') are terse, and the description's examples only partially disambiguate how a and b re-map under 'what' versus 'of' versus 'change' modes, so it adds marginal rather than decisive meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete verb ('Solve') and enumerates the exact question types handled (percent-of, change, increase, decrease), so the resource is unambiguous. It does not, however, distinguish itself from siblings like percentage_change_calculator or percent_error_calculator, whose domains visibly overlap with the 'change'/'increase'/'decrease' modes here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The two worked examples ('What is 15% of 200?', 'What percent is 30 of 200?') demonstrate intended input shapes and imply usage, but there is no explicit when-to-use routing or when-not guidance, and no mention of when to pick a more specialized sibling calculator instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
percentage_change_calculatorPercentage Change CalculatorARead-onlyIdempotentInspect
80 to 100 is a 25% increase but only a 22.22% difference. Get percent change, the percentage difference, or reverse a % change back to the original value. Web page: https://calcbright.com/percentage-change-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | Old (starting) value | |
| b | No | New (final) value | |
| dir | No | Direction | increase |
| pct | No | Percentage (%) | |
| mode | No | Calculate | change |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is fully covered and the description correctly does not contradict it. The description adds the conceptual distinction between percent change and percentage difference, which is real value, but says nothing about output format, rounding, or error behavior for out-of-range inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example that earns its place by teaching the key distinction, followed by a compact capabilities sentence. No filler beyond the trailing web-page URL, which is boilerplate but not harmful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, 0 required, all defaulted, and no output schema, the description never states what result is returned or which parameters each mode actually consumes (e.g., that 'apply'/'original' need pct and dir rather than a and b). For a multi-mode calculator that will happily run on defaults, that leaves a meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents a/b/pct/dir/mode, making 3 the baseline. The description goes beyond by illustrating that the same two numbers yield 25% change but 22.22% difference, which disambiguates the most confusable mode values. It still does not explain how pct and dir feed the 'apply' and 'original' modes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Get percent change, the percentage difference, or reverse a % change back to the original value' enumerates the three capabilities. The 80->100 example sharpens what 'change' versus 'difference' means. It does not name or distinguish itself from close siblings such as percentage_calculator, percent_error_calculator, or markup_calculator, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The three stated capabilities loosely map to the mode enum (change/difference/original), which implies when each mode is appropriate. However, there is no explicit when-to-use, no when-not-to-use, and no routing to alternative percentage tools in the sibling list. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
percent_error_calculatorPercent Error CalculatorARead-onlyIdempotentInspect
Measured 9.6 when the accepted value is 9.81? That is a 2.14% error. Get percent, absolute, relative and signed error for lab reports and experiments. Web page: https://calcbright.com/percent-error-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| actual | No | Theoretical (true) value | |
| measured | No | Experimental (measured) value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so safety and reproducibility are covered. The description usefully enumerates the four returned error variants (percent, absolute, relative, signed) in the absence of an output schema, but says nothing about edge cases such as actual=0 or sign conventions, which matter for an error calculator.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences; the concrete example is front-loaded and immediately conveys the tool's behavior. The trailing URL is promotional rather than task-relevant, a minor deduction.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With two fully documented and defaulted numeric params and no output schema, the description carries the main remaining burden by enumerating the approved return values and giving an example. It would be fully complete if it noted the default inputs or how zero/degenerate denominators are handled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, and the worked example ('Measured 9.6 when the accepted value is 9.81') usefully disambiguates the otherwise confusingly named actual vs measured parameters - actual is the theoretical/accepted value, measured is the experimental one. It stops short of noting defaults (9.81/9.6) or the numeric bounds.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get percent, absolute, relative and signed error', which is concretely different from the sibling percentage_calculator and percentage_change_calculator. It never names or contrasts those siblings, so an agent must infer the distinction from the name alone, which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'For lab reports and experiments' gives a usage context but no when-to-use rule, no exclusions, and no pointer to the closest alternative (percentage_calculator, percentage_change_calculator) for non-error percentage math. Usage is implied from the framing rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
period_calculatorPeriod CalculatorARead-onlyIdempotentInspect
Predict your next six periods from the date your last one started and your cycle length, with ovulation days and fertile windows on the same calendar. Web page: https://calcbright.com/period-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | First day of your last period (YYYY-MM-DD) | 2026-10-01 |
| cycle | No | Average cycle length (days) From the first day of one period to the first day of the next – 28 on average. | |
| length | No | Period length (days) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered without description help. The description adds useful output-shape context (six periods plus ovulation and fertile windows) but says nothing about defaults, edge cases, or error behavior, so it earns only modest extra credit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is front-loaded and dense with useful information, and the second sentence is a short external URL. The URL is not essential to invoking the tool but is harmless and does not undermine the overall concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-optional-parameter calculator with no output schema, the description sufficiently explains what the tool returns: six predicted periods, ovulation days, and fertile windows. Annotations cover the read-only/idempotent safety profile, and the schema covers defaults and ranges, leaving no major agent-facing gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and all three parameters have descriptions plus defaults, ranges, and formats, so the schema carries the parameter burden. The description mentions the date and cycle length inputs but omits the period-length parameter and adds no format or range detail beyond the schema, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: it predicts the next six periods from the last period start date and cycle length, and adds ovulation days and fertile windows. This clearly tells an agent what the tool computes. It does not, however, distinguish itself from the sibling ovulation_calculator, whose scope overlaps with the ovulation/fertile-window output mentioned here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the stated computation, so an agent can infer this is the right tool for menstrual-cycle forecasting. There is no explicit when-to-use guidance, no exclusions, and no comparison to related siblings such as ovulation_calculator or pregnancy_due_date_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permutation_combination_calculatorPermutation & CombinationARead-onlyIdempotentInspect
Choosing 3 from 10 items gives 720 ordered arrangements (nPr) or 120 combinations (nCr). Get both, plus repetition cases and n factorial, with exact big numbers. Web page: https://calcbright.com/permutation-combination-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | Total items (n) | |
| r | No | Items chosen (r) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context beyond them: it returns exact big-number results and covers repetition cases plus factorial, which tells the agent about precision and scope. It stops short of describing the actual return shape, keeping it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a reference URL; the concrete example is front-loaded and every clause conveys either an output or a capability. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 convey return content, and it does: both nPr and nCr, repetition variants, and factorial, with exact precision. It does not specify field names or result structure, which leaves a small gap for a calculator whose output format is otherwise undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (n and r are both documented with type, bounds, and defaults), so the schema carries the parameter semantics. The worked example (3 from 10) illustrates the n/r roles but adds little syntax or constraint detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and its outputs: ordered arrangements (nPr), combinations (nCr), repetition cases, and n factorial. The worked example (3 from 10 -> 720 / 120) makes the function unmistakable. However, it does not differentiate itself from nearby siblings such as scientific_calculator or lcm_gcd_calculator, so it falls short of the 5-level bar for sibling routing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the example rather than stated: an agent infers it should call this when it needs permutation/combination/factorial results. There is no explicit when-to-use, when-not, or named alternative, so it stays at the minimum-viable level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pregnancy_due_date_calculatorPregnancy Due Date CalculatorARead-onlyIdempotentInspect
Your due date is 280 days from your last period, adjusted here for cycle length. Also works from a conception or IVF transfer date, with weeks pregnant today. Web page: https://calcbright.com/pregnancy-due-date-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | First day of last period (YYYY-MM-DD) | 2026-06-01 |
| cycle | No | Average cycle length (days) | |
| method | No | Calculate from | lmp |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-open-world), so the bar is lower. The description adds genuine behavioral context beyond them: the underlying 280-day rule, that cycle length shifts the result, the supported alternate bases, and that output includes weeks pregnant as of today.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences front-load the core rule, then the alternate methods, with no filler in the body. The trailing URL is mildly promotional and adds no invocation value, which keeps it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with zero required parameters, full schema coverage, and no output schema, the description's coverage of the calculation rule and alternate inputs is close to sufficient. A brief note on what the result contains beyond 'weeks pregnant today' would close the remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (date, cycle, method) are already documented, establishing a baseline of 3. The description restates the calculation logic that gives those parameters meaning but adds no format, range, or edge-case detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific computation (due date 280 days from the last period, adjusted for cycle length) and names the alternate input bases (conception, IVF transfer), so the resource is unmistakable. It does not explicitly differentiate itself from adjacent siblings like ovulation_calculator or period_calculator, which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the domain (pregnancy due dating) and the alternate methods hint at which input basis to pick, but there is no explicit when-to-use vs when-to-use-another-tool guidance (e.g., versus ovulation_calculator or period_calculator). The method choice itself is documented in the schema enum, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prime_number_checkerPrime Number CheckerARead-onlyIdempotentInspect
Is 91 prime? No – it is 7 × 13. Test any whole number up to one trillion, see its smallest factor and prime factorization, and find the nearest primes. Web page: https://calcbright.com/prime-number-checker
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | Whole number Any whole number from 0 to 1,000,000,000,000. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnly/idempotent/openWorld=false, so they say nothing about output. The description fills that gap by disclosing the three things returned: primality, smallest factor plus full factorization, and nearest primes. It does not discuss the 1e12 cutoff behavior or performance, so it stops short of a full behavioral picture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The 'Is 91 prime? No – it is 7 × 13' opener front-loads the core behavior vividly and the capability list follows efficiently. The trailing URL is housekeeping rather than task information, which slightly dilutes density but costs little.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 the return-value burden and does so, naming the three results an agent can expect from a one-parameter read-only math tool. Remaining gaps (behavior above 1e12, how 'nearest primes' is scoped) are minor for an idempotent calculator.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter n (0 to 1,000,000,000,000 with a default of 97), so the schema already carries the semantics. The description's phrase 'any whole number up to one trillion' merely restates the documented bounds and adds no format detail. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific capabilities with a concrete verb set: test any whole number's primality, see its smallest factor and prime factorization, and find the nearest primes. That breadth distinguishes it from near-neighbors like square_root_calculator, lcm_gcd_calculator, or exponent_calculator, which do not expose factor structure or nearby primes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the stated domain ('any whole number up to one trillion') but the description never says when to prefer this over siblings that also take a number (lcm_gcd_calculator, scientific_calculator) or what happens outside the range. There is context but no explicit when/when-not routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profit_margin_calculatorProfit Margin CalculatorCRead-onlyIdempotentInspect
A SAR 115 price with 15% VAT on a SAR 60 cost is a 40% profit margin, not 47.83%. See gross and operating margin, markup and target prices, VAT taken out. Web page: https://calcbright.com/profit-margin-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| vat | No | Does the selling price include VAT? Margin is always measured on the price without VAT | 0 |
| cost | No | Cost Direct cost of what you sold, without VAT you can reclaim | |
| revenue | No | Revenue (selling price) | |
| currency | No | Currency | USD |
| overheads | No | Overheads on the same sales (optional) Rent, salaries, marketing – gives operating margin |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and closed-world behavior, so safety is covered. The description adds one genuinely useful behavioral rule — margin is always computed on the VAT-exclusive price — with a numeric illustration of why the naive 47.83% answer is wrong, but it does not describe output format, rounding, or how overheads changes the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a URL: the concrete example is front-loaded and the feature list is compact. Nothing is redundant, though the worked example is somewhat cryptic without setup and the trailing web link is promotional padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description partially compensates by naming the returned figures (gross margin, operating margin, markup, target prices). However, for a five-parameter financial tool with several overlapping siblings, it leaves the agent without guidance on parameter interaction or which calculator to choose for a markup-driven question.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters including vat enum, cost, revenue, currency, and overheads are already documented, which sets the baseline at 3. The description reinforces the VAT treatment conceptually but adds no parameter-level detail such as default assumptions or constraints beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys the resource obliquely through a worked example (SAR 115 with 15% VAT on SAR 60 cost = 40%, not 47.83%) and a feature list ('gross and operating margin, markup and target prices'), rather than a direct verb+resource statement. It never distinguishes itself from close siblings like markup_calculator, vat_calculator, or gst_calculator, so an agent must infer the boundary from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance. Given that markup_calculator, vat_calculator, roi_calculator, and break_even_calculator all exist in the sibling set and this tool explicitly outputs markup, the absence of any routing statement is a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prorated_rent_calculatorProrated Rent CalculatorRead-onlyIdempotentInspect
Moving in on 11 March at $1,500 a month costs $1,016.13 by actual days, $1,050 on a 30-day month. Prorated rent for any dates, monthly or annual leases. Web page: https://calcbright.com/prorated-rent-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | To (last day charged) Both dates are counted (YYYY-MM-DD) | |
| date | No | Move date (YYYY-MM-DD) | 2026-03-11 |
| mode | No | Calculate for | in |
| rent | No | Monthly rent | |
| method | No | Daily rate method Use the method in your lease; actual days is the most common | actual |
| period | No | Rent is quoted | month |
| currency | No | Currency | USD |
protein_calculatorProtein CalculatorARead-onlyIdempotentInspect
How many grams of protein a day? From the 0.8 g/kg RDA to 2.2 g/kg for muscle gain, see your daily range for your body weight and activity or training goal. Web page: https://calcbright.com/protein-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| level | No | Activity / goal | sedentary |
| units | No | Units | metric |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety and determinism need no description support. The description adds a mild behavioral fact — the result is a range derived from RDA-to-muscle-gain coefficients — but says nothing about output shape or how the level selection shifts the number. Acceptable but thin against an already-covered annotation set.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a reference URL, with the core question ('How many grams of protein a day?') front-loaded so the purpose lands immediately. The trailing web-page link is the only element that is not strictly task-relevant, but it costs almost nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity, zero-required-parameter calculator with a fully documented schema and no output schema, the description supplies enough to call it correctly: body weight plus an activity/goal level yields a daily range. Only the unit-handling nuance (kg vs lb vs units) is left entirely to the schema, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so kg, lb, level and units are already documented in the schema, and the enums for level and units are self-explanatory. The description's 'activity or training goal' loosely maps to level but adds no format, unit-selection or default guidance beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (daily protein intake in grams) and states the output form ('see your daily range for your body weight and activity or training goal'), so an agent knows it computes a protein target rather than a general calorie or macro figure. It does not name a competing sibling (e.g., macro_calculator, tdee_calculator) to sharpen the boundary, which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through 'for your body weight and activity or training goal' and the 0.8-2.2 g/kg framing, giving the agent a sense of when the tool applies. There is no explicit when-not or alternative-tool routing, so nothing tells the agent to prefer this over macro_calculator or bmi_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
p_value_calculatorP-Value CalculatorARead-onlyIdempotentInspect
Turn a z, t, chi-square or F statistic into a left-, right- or two-tailed p-value, with critical values and whether it is significant at 0.05 and 0.01. Web page: https://calcbright.com/p-value-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| df1 | No | Degrees of freedom (df) | |
| df2 | No | Denominator df (df₂) | |
| dist | No | Test statistic | z |
| stat | No | z value | |
| tail | No | Tail | two |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so the safety profile is covered. The description adds real value beyond them by disclosing what the tool returns: critical values and significance determination at the 0.05 and 0.01 thresholds, which is not captured anywhere else since there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the core transformation front-loaded and the threshold details second; nothing is wasted. The appended web page URL is extraneous but negligible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, all-optional tool with no output schema, the description covers the operation, supported distributions, tails and return highlights adequately. The remaining gap is the per-distribution relevance of df1/df2, which an agent must guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 distribution and tail vocabulary that matches the enums, but it does not clarify the non-obvious mapping of df1 vs df2 to the F distribution or that df is irrelevant for z, leaving the one genuinely ambiguous parameter relationship undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: converting a z, t, chi-square or F statistic into a p-value. It also enumerates the exact outputs (tail-specific p-value, critical values, significance flags), which clearly separates it from sibling z_score_calculator and confidence_interval_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: an agent can infer this is for hypothesis-testing significance, and the description lists supported distributions and tails. But there is no explicit when-to-use vs alternatives (e.g. z_score_calculator, confidence_interval_calculator) and no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pythagorean_theorem_calculatorPythagorean Theorem CalcARead-onlyIdempotentInspect
Legs of 3 and 4 give a hypotenuse of 5. Solve a² + b² = c² for any side of a right triangle, with exact radicals like 5√2, the angles, area and full working. Web page: https://calcbright.com/pythagorean-theorem-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | Leg a | |
| b | No | Leg b | |
| c | No | Hypotenuse c | |
| solve | No | Solve for | c |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and a closed-world scope, so the safety profile is covered. The description goes beyond them by disclosing what the tool produces — exact radicals like 5√2, angles, area and 'full working' — which is meaningful because no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences front-load the concrete example before the general formula, and nothing is redundant with the schema. The trailing marketing URL is mildly extraneous but does not obstruct selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 the burden of describing returns and does so (radicals, angles, area, full working). Combined with 100% parameter coverage in the schema and annotations that cover safety, an agent has what it needs to invoke it correctly; only explicit sibling routing is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 a, b, c and the solve enum. The description reinforces the relationship between the inputs via the 3-4-5 example and the phrase 'any side', but adds no format or defaulting detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: solving a² + b² = c² for any side of a right triangle, plus the extras computed (radicals, angles, area). It does not explicitly distinguish itself from nearby siblings like triangle_calculator or square_root_calculator, but the formula-level specificity makes the tool's scope unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the worked example (legs 3 and 4 → hypotenuse 5) and the 'solve for any side' phrasing, but there is no explicit when-to-use guidance, no exclusions, and no named alternative for non-right triangles or general triangle solving.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quadratic_equation_solverQuadratic Equation SolverARead-onlyIdempotentInspect
Solve ax² + bx + c = 0 with the quadratic formula: the discriminant, real or complex roots and the vertex of the parabola, with every step written out. Web page: https://calcbright.com/quadratic-equation-solver
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | a (x² coefficient) | |
| b | No | b (x coefficient) | |
| c | No | c (constant) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, idempotentHint, openWorldHint=false), so the bar is lower. The description nonetheless adds real behavioral context by disclosing what is returned (discriminant, real or complex roots, vertex) and that every step is written out. It omits edge behavior such as a=0 degenerating to a linear equation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with the core operation and output list. The trailing web-page URL is mildly promotional but plausibly useful and not disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 the return-value burden and does so, naming discriminant, roots, and vertex. For a simple three-parameter calculator this is nearly complete; only edge cases like a=0 are unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with a, b, c documented and defaulted in the schema itself, so the baseline is 3. The description's equation form implies the mapping of a/b/c to their coefficients but adds no format, range, or validity detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Solve') and resource ('ax² + bx + c = 0 with the quadratic formula') and even enumerates the outputs (discriminant, real/complex roots, vertex). This is far more specific than the many generic siblings (scientific_calculator, square_root_calculator), though it never explicitly names an alternative to contrast against.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent infers 'use when you have a quadratic equation.' There is no statement of when to use this versus scientific_calculator or any other math sibling, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ramadan_countdown_calculatorRamadan CountdownBRead-onlyIdempotentInspect
Ramadan 2027 (1448 AH) is expected on Monday 8 February on the Umm al-Qura calendar. Live count of the days to Ramadan, Eid al-Fitr and Eid al-Adha. Web page: https://calcbright.com/ramadan-countdown-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | From date Leave empty to count from today. (YYYY-MM-DD) | |
| event | No | Count down to | ramadan |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, closed-world behavior. The description adds useful calendar context (Umm al-Qura, expected 2027 date) but omits return behavior, timezone assumptions, and what happens when the from date is after the event.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but front-loads a specific 2027 date rather than the tool's general purpose, and includes a promotional web page URL. It is not bloated, but the ordering is suboptimal for tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what the count result looks like. It says 'live count' but does not specify units, format, handling of past dates, or all supported events, leaving meaningful gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are fully documented in the schema. The description mentions only three of the six enum events and adds no further parameter semantics beyond the schema, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it calculates a live countdown to Ramadan and two Eids, with a specific calendar basis. It is distinguishable from generic siblings like countdown_calculator and hijri_date_converter, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the Islamic holiday focus, but the description gives no explicit when-to-use guidance versus countdown_calculator or hijri_date_converter, and no exclusions. An agent can infer the domain but must decide selection on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
random_number_generatorRandom Number GeneratorARead-onlyIdempotentInspect
Draw one number or up to 1,000 from any range – whole or decimal, with or without repeats. Useful for raffles, lottery picks, dice rolls and classroom draws. Web page: https://calcbright.com/random-number-generator
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | Maximum | |
| min | No | Minimum | |
| kind | No | Type | integer |
| sort | No | Order | none |
| count | No | How many numbers | |
| unique | No | Allow duplicates? | no |
| decimals | No | Decimal places |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is covered. The description adds useful capability context such as range, count up to 1,000, whole/decimal output, and repeat behavior, but it does not explain randomness quality, seeding, return shape, or retry behavior. With annotations carrying the safety burden, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded and efficient, leading with the core action and scope before giving examples. The trailing web page URL does not help an agent select or invoke the tool, but it adds only minor noise. Overall structure is strong.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter tool with full schema descriptions and read-only annotations, the description covers the main operation and output quantity. It does not explain sort or decimal-place behavior, but those are documented in the schema, and no output schema exists to require return-value explanation. It is complete enough for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 seven parameters. The description restates some of those semantics in natural language, such as count up to 1,000, range, whole/decimal kind, and repeats, but adds no syntax or format guidance beyond the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: draw one number or up to 1,000 random numbers from any range. It also specifies key capabilities such as whole or decimal values and repeats, making the tool's purpose immediately clear. The sibling list contains calculators and utilities, but no close alternative that would cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage contexts: raffles, lottery picks, dice rolls, and classroom draws. It does not explicitly state when to avoid this tool or name an alternative, but the intended scenarios are concrete enough for an agent to recognize appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ratio_calculatorRatio CalculatorARead-onlyIdempotentInspect
Solve A:B = C:D for the missing value or reduce a ratio to lowest terms – 1920:1080 becomes 16:9. Handy for recipes, screen sizes, map scales and mixes. Web page: https://calcbright.com/ratio-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | A | |
| b | No | B | |
| c | No | C | |
| d | No | D | |
| mode | No | Calculation | solve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and closed-world, so the safety profile is covered. The description usefully adds that one value is solved for and that ratios can be reduced, but does not state how the missing value is chosen or which of A/B/C/D is optional.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core operation and a concrete example in two tight clauses. The trailing web-page URL is extraneous filler but minor.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the worked example (16:9) conveys the return format, and both modes are named. Adequate for a 5-param calculator, though it could clarify how an omitted value (all params optional) is handled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% but the parameter descriptions are bare letters ('A','B','C','D'). The description supplies the crucial A:B = C:D relationship that gives those letters meaning, adding real value over the schema, though it doesn't map each letter to its role explicitly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific verbs (solve, reduce) and the exact resource/relationship A:B = C:D, with a worked example (1920:1080 → 16:9). An agent can distinguish it from fraction_calculator or percentage_calculator without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Offers use cases (recipes, screen sizes, map scales, mixes) that imply when it applies, but gives no explicit when-not guidance or alternatives for overlapping tools. The two modes are only surfaced in the schema enum, not routed in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
redundancy_pay_calculatorRedundancy Pay CalculatorBRead-onlyIdempotentInspect
10 years’ service at age 45 on £800 a week pays £9,012 in 2026/27. Statutory redundancy pay with the age bands, 20-year limit and £751 cap (£783 in NI). Web page: https://calcbright.com/redundancy-pay-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Age at redundancy (years) | |
| pay | No | Weekly pay (before tax) Average gross weekly pay over the last 12 weeks. | |
| years | No | Full years of service (years) Only complete years count; the last 20 are used. | |
| region | No | Where do you work? | GB-ENG |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only/idempotent/closed-world profile, so the description's job is statutory context — and it delivers: it discloses the age-band formula basis, the 20-year service limit, the weekly-pay cap and its NI variation, and the applicable tax year (2026/27). The worked example ('10 years at 45 on £800/week pays £9,012') conveys the return shape concretely. It does not state the full age-band multipliers, but that is a detail the calculator handles.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler, but the ordering is backwards: a specific numeric example occupies the prime front-loaded position while the actual definition of what the tool computes comes second. The trailing URL is a citation, not guidance, though it is short enough not to be harmful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 carry return-value semantics, and the worked example does that in one figure. However, for a 4-parameter statutory calculator it omits the jurisdictional scope statement and regional differences beyond NI, leaving the agent to infer when this tool applies at all.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter carries its own description, so the baseline is 3. The description adds some regulatory meaning — the £751 cap implies pay above that is truncated, and the 20-year limit mirrors the 'years' constraint — but it never explains the region enum (GB-ENG/GB-SCT/GB-WLS/GB-NIR) beyond flagging NI as the £783 outlier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (statutory redundancy pay) and its defining mechanics: age bands, 20-year limit, and the £751 cap (£783 in NI). The £/NI framing implicitly separates it from the many foreign severance/gratuity siblings (UAE, Saudi, Egypt, Jordan), though it never states the UK-only scope outright. It leads with a worked example rather than a verb, which dampens the opening slightly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to pick this over alternatives, despite a crowded family of severance and pay siblings (gcc_gratuity, saudi_end_of_service, salary_calculator, take_home_pay_calculator). No exclusions, prerequisites, or jurisdictional caveats are given — the agent must infer UK applicability from the currency symbols.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refinance_calculatorRefinance CalculatorCRead-onlyIdempotentInspect
7% to 6% on $250,000 saves $220.66 a month, but a fresh 30 years cuts the gain to $12,535. Refinance calculator with true break-even and UAE/Saudi buyout fees. Web page: https://calcbright.com/refinance-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| fee | No | Early settlement fee on the old loan (%) UAE home loans: at most 1%, capped at AED 10,000. Saudi: at most 3 months’ profit. | |
| rate | No | Current interest rate (%) | |
| stay | No | Years you expect to keep the loan (years) Shows whether you are ahead if you sell or refinance again by then. | |
| costs | No | Pay the costs | upfront |
| balance | No | Current loan balance | |
| closing | No | Closing costs New lender’s fees, valuation, title and registration (Dubai: 0.25% of the new mortgage). | |
| newRate | No | New interest rate (%) | |
| newTerm | No | New loan term (years) | |
| currency | No | Currency | USD |
| remaining | No | Years remaining (years) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and closed-world, so the safety profile is covered. The description adds domain behavior beyond that: it accounts for break-even over the stay period and models regional buyout/settlement rules, which affects how results should be read. It stops short of saying what the calculation returns or what assumptions (e.g. amortizing the old loan) are baked in.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loading is inverted: a marketing-style numeric example leads, the actual identity of the tool arrives second, and the trailing URL is filler that costs tokens without aiding invocation. Two of the three sentences do little work for an agent choosing a tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Ten parameters with no required fields and no output schema means the description should say what comes back (monthly saving, break-even months, total interest difference) and that all inputs are optional defaults. Neither is covered, so an agent cannot anticipate the result shape for a fairly complex calculator.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so every parameter is already documented, and the description adds no syntax or interpretation beyond illustrating typical values (7% to 6%, $250,000, 30 years) that mirror the defaults. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the domain (refinancing) and two differentiators (true break-even, UAE/Saudi buyout fees), but the actual purpose sentence is a near-restatement of the name and title. The opening worked example ('7% to 6% on $250,000 saves $220.66 a month...') consumes the most prominent position without stating what the tool computes, and no sibling is named to distinguish it from mortgage_calculator, loan_calculator, or break_even_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to pick this over the many sibling loan/mortgage tools, nor any preconditions (e.g. that it compares an existing loan against a replacement loan rather than pricing a new purchase). The example implies a comparison scenario but the agent must infer it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rent_affordability_calculatorRent AffordabilityRead-onlyIdempotentInspect
AED 25,000 a month affords AED 90,000 a year – AED 22,500 a cheque. Rent affordability with the 30% rule, 40× test, your debts and Dubai move-in costs. Web page: https://calcbright.com/rent-affordability-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rent | No | Monthly rent you are considering (optional) Checks a real listing against your income | |
| debts | No | Monthly debt payments Car, student loan, card minimums. | |
| dubai | No | Dubai move-in costs | flat |
| lease | No | Rent is quoted | month |
| income | No | Gross income (before tax) Your whole package, including any housing allowance | |
| period | No | Income is | year |
| cheques | No | Number of cheques a year | 4 |
| currency | No | Currency | USD |
| allowance | No | Housing allowance a month (optional) |
rent_vs_buy_calculatorRent vs. Buy CalculatorBRead-onlyIdempotentInspect
An AED 2M Dubai flat kept 7 years beats renting by AED 290,524. This rent vs buy calculator finds your break-even year with DLD fees and service charges. Web page: https://calcbright.com/rent-vs-buy-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| fees | No | Service charges / HOA per year Fixed yearly building or community fees – in Dubai, the RERA-approved service charge | |
| rate | No | Mortgage rate (%) | |
| rent | No | Monthly rent | |
| term | No | Loan term (years) | |
| price | No | Home price | |
| years | No | Years you plan to stay (years) | |
| invest | No | Investment return / year (%) What the upfront cash – and any monthly saving – could earn invested | |
| taxPct | No | Property tax / year (%) % of home value | |
| downPct | No | Down payment (%) | |
| sellPct | No | Selling costs (%) Agent fees, transfer tax, etc. | |
| currency | No | Currency | USD |
| maintPct | No | Maintenance / year (%) % of home value | |
| insurance | No | Home insurance / year | |
| buyCostPct | No | Buying closing costs (%) | |
| investDiff | No | Monthly cost difference | yes |
| appreciation | No | Home price growth / year (%) | |
| rentIncrease | No | Rent increase / year (%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint, idempotentHint and closed-world, so the safety profile is fully covered. The description adds that the model accounts for DLD fees and service charges and reports a break-even year, which is genuine value. It does not disclose the other comparison outputs (net cost difference, total outlay), nor that results depend on appreciation/rent-increase assumptions, so it remains mid-tier.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler, and the URL is a compact single clause. The opening statistic is front-loaded but functions as a hook rather than operational information, so it earns less of its place than the purpose sentence that follows. Still tight overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 17-parameter, zero-required calculator with no output schema, the description does identify the headline return value (break-even year) and two cost inputs. But it never enumerates what else comes back, what the default USD currency means for a Dubai-oriented example, or which of the many percentage parameters dominate the result. Adequate but leaves an agent guessing at the response shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 17 parameters including the two enums (currency, investDiff) are already documented in the schema; baseline 3 applies. The description adds only that DLD fees and service charges are consumed, without mapping to the specific fields. Note the description's Dubai/AED framing sits oddly against the currency default of USD.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the specific tool (rent vs buy calculator) and its concrete output — the break-even year — plus the cost components it models (DLD fees, service charges). That distinguishes it reasonably from mortgage_calculator or rent_affordability_calculator, though those siblings are never named. The leading AED 2M anecdote is a marketing hook rather than a purpose statement, which slightly blurs the opening.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: you use this when weighing renting against buying a home over a holding period. There is no explicit 'use this instead of X when Y', no note that a mortgage-only analysis belongs in mortgage_calculator, and no stated preconditions. An agent can infer the scenario but gets no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
retirement_calculatorRetirement CalculatorBRead-onlyIdempotentInspect
$800 a month from 35 at 7% gives $1.38 million at 65. Our retirement calculator shows how long it lasts once inflation, gratuity and a pension count. Web page: https://calcbright.com/retirement-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Current age (years) | |
| rate | No | Expected return (before retiring) (%) | |
| years | No | Years in retirement (years) | |
| lumpSum | No | Lump sum at retirement Optional – e.g. your end-of-service gratuity, or a pension lump sum, paid on retirement day. | |
| monthly | No | Monthly contribution | |
| savings | No | Current retirement savings | |
| currency | No | Currency | USD |
| inflation | No | Inflation (% a year) Optional – income amounts are then in today’s money and rise with inflation every year. | |
| retireAge | No | Retirement age (years) | |
| retireRate | No | Return during retirement (%) | |
| withdrawal | No | Monthly income you want in retirement | |
| otherIncome | No | Pension or Social Security a month Optional – income you will get anyway; only the rest is drawn from savings. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint, idempotentHint and openWorldHint=false, so safety and determinism are covered structurally. The description adds little beyond that: the example figure and the URL are promotional rather than behavioral, and it says nothing about what the result contains (a balance, a depletion age, a shortfall), how defaults interact, or how the inflation toggle changes the meaning of the numbers returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Only three short fragments, so nothing is bloated, but the structure is backwards: a marketing worked example leads, the actual purpose arrives second, and the URL trails as a third element. The example consumes a third of the text without helping an agent decide or invoke.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 12 optional parameters, all defaults, and no output schema, the description should at least characterize the return values and note that everything is optional with sensible defaults. It gestures at the modeling dimensions but leaves an agent unsure what result shape to expect from a relatively complex projection tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the correct baseline is 3. The description's references to inflation, gratuity and pension loosely map to the inflation, lumpSum and otherIncome parameters but add no syntax, units or edge-case meaning beyond what the schema already states in detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence states the function concretely: it projects retirement savings and shows how long they last while accounting for inflation, gratuity (lump sum) and pension income. That is enough to separate it from a pure savings-goal or compound-interest tool. It never names or contrasts with close siblings such as 401k_calculator, roth_ira_calculator or savings_goal_calculator, and the opening sentence is a worked example rather than a purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the mention of inflation, gratuity and pension signals that this is for post-retirement drawdown planning rather than accumulation-only math. There is no explicit when-to-use, no conditions, and no pointer to alternatives like 401k_calculator or annuity_calculator for other retirement questions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
roi_calculatorROI CalculatorCRead-onlyIdempotentInspect
An AED 1.2M Dubai flat sold for AED 1.45M is a 20.83% gain on price but a 38.46% ROI once DLD fees, agents, rent and service charges count. Total and yearly. Web page: https://calcbright.com/roi-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| years | No | Investment length (optional) (years) Needed for annualized ROI. | |
| income | No | Income received (optional) Total rent, dividends or interest over the whole period, after any tax withheld | |
| running | No | Running costs paid (optional) Total service charges, maintenance, platform fees | |
| buyCosts | No | Costs to buy (optional) Fees, commission, transfer and registration fees | |
| currency | No | Currency | USD |
| invested | No | Amount invested (price paid) | |
| returned | No | Amount returned (final value or sale price) | |
| sellCosts | No | Costs to sell (optional) Agent commission, exit fees |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds real value by naming the cost components it nets out and by stating that results are both total and yearly (annualized). It says nothing, however, about currency handling, how zero/omitted optional inputs are treated, or how the default invested/returned values affect results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler; the cost-inclusive nature of the calculation is front-loaded. The number-heavy example is an efficient way to show that headline price gain and true ROI diverge, though the trailing URL adds little for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 all-optional parameters and no output schema, the description carries the burden of explaining the result shape. It partially does so ('Total and yearly'), but leaves open what happens when years is omitted, whether currency conversion is applied, and what the response contains, which matters for a tool whose inputs are all optional.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, and the baseline of 3 applies. The description does map its narrative terms onto parameters (DLD fees and agents onto buyCosts/sellCosts, rent onto income, service charges onto running), which helps an agent connect the real-world example to the inputs, but it adds no constraint or format detail beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys what the tool computes (ROI including DLD fees, agent commissions, rent and service charges, reported as total and yearly) but does it obliquely through a worked Dubai-flat example rather than a direct verb+resource statement. It also offers no differentiation from near siblings such as dld_fee_calculator, rent_vs_buy_calculator, cagr_calculator or profit_margin_calculator, so an agent must infer that this is the general net-ROI tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance and no named alternative. The real-estate framing is only implied by the example, leaving the agent to guess whether this is the right tool for a stock dividend return or an annualized investment comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
roman_numeral_converterRoman Numeral ConverterARead-onlyIdempotentInspect
MCMXCIX is 1999 and 2026 is MMXXVI. Convert any number from 1 to 3999 into Roman numerals, or decode a numeral back to a number, with each symbol explained. Web page: https://calcbright.com/roman-numeral-converter
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Convert | toRoman |
| roman | No | Roman numeral | MMXXVI |
| number | No | Number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered structurally. The description adds only the 1–3999 domain limit (already in the schema bounds) and the note that 'each symbol is explained', which hints at output richness but is not elaborated. No output schema exists, so return shape remains thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a URL, with a concrete example leading to make the domain instantly recognizable. Efficient and front-loaded, though the leading examples delay the actual capability statement by one clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trivial two-way converter with 3 optional, defaulted parameters and full schema coverage, the description supplies domain, directionality and range. The only real gap is the response shape ('with each symbol explained' is vague), which matters slightly more because no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the schema's own parameter descriptions are near-useless ('Convert', 'Roman numeral', 'Number'). The description compensates by mapping the two directions to the toRoman/toNumber modes and restating the valid numeric range, which is genuinely additive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific bidirectional operation (number → Roman numeral and Roman numeral → number) and names the exact domain, with worked examples ('MCMXCIX is 1999 and 2026 is MMXXVI'). An agent can immediately distinguish this from neighbors like number_base_converter, number_to_words_converter, or scientific_notation_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the two usage directions (encode a number, decode a numeral) and bounds the input to 1–3999, but it never states when to pick this tool over sibling converters or any prerequisites/exclusions. Usage is inferable from the mode enum rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
roth_ira_calculatorRoth IRA CalculatorARead-onlyIdempotentInspect
$7,500 is the 2026 Roth IRA limit ($8,600 at 50+). This Roth IRA calculator applies the MAGI phase-out and the FEIE rule for expats, then projects growth. Web page: https://calcbright.com/roth-ira-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Current age (years) | |
| magi | No | Modified AGI (MAGI) Living abroad? Add back any foreign earned income or housing amounts you exclude on Form 2555. | |
| rate | No | Expected annual return (%) | |
| filing | No | Filing status | single |
| balance | No | Current Roth IRA balance | |
| taxRate | No | Tax on gains in a taxable account (%) Applied to growth each year – e.g. 15% long-term capital-gains rate. | |
| retireAge | No | Retirement age (years) | |
| compensation | No | Earned income that counts (optional) Wages or self-employment income you are taxed on – salary excluded under the FEIE does not count. Joint filers: both spouses’ combined. Leave blank if it is above the limit. | |
| contribution | No | Annual contribution 2026 limit: $7,500, or $8,600 at 50+. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is fully covered. The description adds real value beyond that by disclosing the computational model (MAGI phase-out, FEIE add-back, growth projection), but it never explains the return shape or that the taxRate parameter implies a taxable-account comparison, which matters because there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences with the most decision-relevant fact (the contribution limit) front-loaded, followed by scope and then a source URL. No filler and no repetition. The URL is marginally promotional but also serves as provenance, so it earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With nine optional parameters, sensible defaults, and complete schema descriptions, an agent can call this without further help. However, for a computation tool with no output schema, the description should say roughly what comes back (contribution eligibility, limit, projected balance, taxable-account comparison); 'projects growth' alone leaves that to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so a baseline of 3 applies, and the description goes slightly beyond by stating the 2026 contribution limits ($7,500 / $8,600 at 50+) that anchor the 'contribution' parameter. It does not add semantics for the less obvious parameters like taxRate or the optional compensation, which the schema carries alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (Roth IRA) and states what the tool computes: applying the MAGI phase-out, the FEIE rule for expats, and projecting growth. That is a specific, non-tautological purpose. It does not differentiate itself from plausible siblings like 401k_calculator or retirement_calculator, which is the only gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: the mention of the MAGI phase-out and FEIE rule signals this is for Roth IRA eligibility and contribution scenarios, including expats. There is no explicit when-to-use, no when-not conditions, and no pointer to sibling calculators such as 401k_calculator or retirement_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rrsp_calculatorRRSP CalculatorARead-onlyIdempotentInspect
New 2026 RRSP room is 18% of 2025 earned income, up to $33,810. See your room, the tax refund a contribution earns in your province and growth to retirement. Web page: https://calcbright.com/rrsp-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| pa | No | Pension adjustment (PA) Box 52 of last year’s T4, if you have a workplace pension. | |
| age | No | Current age (years) | |
| rate | No | Expected annual return (%) | |
| earned | No | Earned income 2025 Last year’s earned income sets this year’s new room (18%). | |
| income | No | Taxable income 2026 Used to work out your tax refund. | |
| region | No | Province / territory | CA-ON |
| unused | No | Unused room carried forward From your CRA notice of assessment. | |
| balance | No | Current RRSP balance | |
| retireAge | No | Retirement age (years) RRSPs must be converted by the end of the year you turn 71. | |
| contribution | No | RRSP contribution |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and a closed-world nature, so the safety profile is covered. The description does add real domain context — the 18%/$33,810 room formula and the provincial-refund scope — which goes beyond structured fields. It still says nothing about estimation caveats, rounding, or what the response contains, so it is not rich enough for 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, with the most decision-relevant fact (the 2026 room formula and cap) front-loaded. The trailing web-page URL is useful for verification but is the one element that does not help an agent invoke the tool. Otherwise zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With ten optional, defaulted parameters and no output schema, the description does the necessary work of naming the three result classes (room, refund, growth), so an agent knows what it will get back. Missing are any note that results are estimates and how defaults behave, but the tool's computational nature makes that a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each of the ten parameters carries its own domain-specific note (PA as Box 52 of last year's T4, unused room from the CRA notice of assessment, the 71-year conversion limit). The description adds only the $33,810 cap and 18% rate, which lightly reinforces `earned` but does not extend the schema. Baseline 3 is correct when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (RRSP) and enumerates the three concrete outputs: contribution room, provincial tax refund from a contribution, and growth to retirement. That is far more than a restatement of the name. It does not explicitly contrast itself with close siblings such as tfsa_calculator or retirement_calculator, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the domain rule (new 2026 room = 18% of 2025 earned income). There is no statement of when to prefer this over tfsa_calculator, retirement_calculator, or income_tax_calculator, and no prerequisites or exclusions are given. Adequate-but-thin context for a heavily overlapping sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rule_of_72_calculatorRule of 72 CalculatorARead-onlyIdempotentInspect
At 8% a year, money doubles in 72 ÷ 8 = 9 years. Enter any rate to compare the Rule of 72, the Rule of 69.3 and the exact compound-growth answer. Web page: https://calcbright.com/rule-of-72-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Annual rate of return (%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds real value by disclosing that the tool returns three comparison figures rather than a single number, which is important given there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete 8% example that immediately conveys the concept, followed by a compact statement of what is computed. The trailing web-page URL is marginally promotional but the content is tight overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, no-output-schema tool, the description is nearly sufficient: it explains the concept, the computation variants, and implies the return contents. Only the absence of any guidance on when this beats the general compound-interest calculator leaves a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'rate' parameter, so the schema carries the semantics (annual rate of return in %). The description's 'Enter any rate' adds no format or range detail beyond what the schema already provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific computation ('compare the Rule of 72, the Rule of 69.3 and the exact compound-growth answer') plus a worked example, so an agent knows exactly what the tool returns. It hints at differentiation from compound-interest siblings by offering the 'exact' answer alongside the rule approximations, though it never names those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Enter any rate to compare...' implies how to invoke it but gives no when-to-use versus alternatives, despite close siblings like compound_interest_calculator, cagr_calculator and future_value_calculator existing. There are no exclusions or routing cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
salary_calculatorSalary ConverterBRead-onlyIdempotentInspect
$25 an hour is $52,000 a year; AED 6,000 a month is AED 200 a day under Gulf labour rules. Convert pay between hourly, daily, weekly, monthly and annual. Web page: https://calcbright.com/salary-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| tax | No | Estimated tax rate (%) Optional: your approximate total tax & deduction rate. | |
| days | No | Days per week | |
| hours | No | Hours per week | |
| weeks | No | Paid weeks per year | |
| amount | No | Pay amount | |
| period | No | Per | hourly |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds useful examples and scope, but does not explain what the returned conversion includes, how tax is applied, or how hours/days/weeks affect the result. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads concrete examples before the conversion statement. The promotional URL is not harmful but slightly reduces efficiency; otherwise every sentence contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter calculator with no output schema, the description does not explain what the return value contains or whether all periods are returned. It is adequate given the strong schema coverage and annotations, but it leaves the output shape and tax/hours behavior unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already carries parameter meaning. The description reinforces amount/period with examples but omits several enum periods such as biweekly, semimonthly, and quarterly, and adds no detail about tax, hours, days, or weeks beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action (convert pay) and resource (salary/pay periods), with concrete examples. It does not contrast itself with sibling tools such as take_home_pay_calculator or overtime_calculator, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the phrase 'Convert pay between hourly, daily, weekly, monthly and annual.' There is no explicit guidance on when to use this versus take_home_pay_calculator, income_tax_calculator, or overtime_calculator, and no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sales_tax_calculatorSales Tax CalculatorRead-onlyIdempotentInspect
A $1,000 laptop in New York City costs $1,088.75 at 8.875%. Add or remove US state + local sales tax, or Canada’s GST, PST, QST and HST, from any price. Web page: https://calcbright.com/sales-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Calculation | add |
| rate | No | Your rate (optional) (%) Leave empty for the state/province rate, or enter your combined state + local rate. | |
| local | No | Local rate – county + city (optional) (%) Added to the state rate: 2 for Houston (8.25% in all), 3 for Los Angeles (10.25%), 4.875 for New York City (8.875%), 4 for Chicago (10.25%). | |
| amount | No | Price before tax | |
| region | No | State / province | US-TX |
| currency | No | Currency | USD |
sample_size_calculatorSample Size CalculatorARead-onlyIdempotentInspect
385 responses give ±5% at 95% confidence. Get the survey sample size for any confidence level, margin of error and proportion, with small-population correction. Web page: https://calcbright.com/sample-size-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| p | No | Expected proportion (%) Use 50% if unsure – it gives the largest, safest sample. | |
| conf | No | Confidence level | 95 |
| margin | No | Margin of error (±%) | |
| population | No | Population size Optional – leave blank for a large or unknown population. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered structurally. The description adds one genuinely useful behavioral note — that small-population correction is applied — but says nothing about the return format or what the result represents, leaving the mutation-free read behavior largely to 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete numeric example, followed by the capability statement and a link. Three short sentences with no bloat, though the trailing web-page URL does not help an agent decide or invoke and could be dropped.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deterministic, side-effect-free calculator with a fully documented schema and read-only annotations, the description supplies what an agent needs: the output's meaning, the input concepts, and the population-correction behavior. No output schema exists, but the return value (a sample size) is self-evident from the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already documents p (with the 50%-if-unsure heuristic), conf enum, margin and population. The description's mention of 'confidence level, margin of error and proportion, with small-population correction' maps to all four parameters but adds no syntax, units, or constraints beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the survey sample size') and pins it down with a concrete worked anchor ('385 responses give ±5% at 95% confidence'). This is clearly separable from near siblings like confidence_interval_calculator or z_score_calculator, which answer a different question.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description names the inputs it accepts and the small-population correction, which implies when the tool is applicable, but never says when to prefer it over confidence_interval_calculator or what happens if the population is left blank (that detail lives only in the schema). Usage is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
saudi_end_of_service_calculatorSaudi End of Service CalculatorARead-onlyIdempotentInspect
SAR 12,000 a month for 7 years earns SAR 54,000 – or SAR 36,000 if you resign. Saudi end-of-service award under Labour Law Articles 84–85, part-years included. Web page: https://calcbright.com/saudi-end-of-service-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End date Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| wage | No | Last monthly wage Basic salary plus fixed allowances such as housing (as defined in your contract). | |
| start | No | Start date (YYYY-MM-DD) | 2019-01-03 |
| reason | No | How did employment end? | ended |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this as a safe, read-only, idempotent calculation, so the description's job is to add domain behavior. It does: part-years are included in the calculation, and the award is materially smaller if the employee resigned (SAR 54,000 vs SAR 36,000), which is the single most important behavioral fact an agent needs. It stops short of noting that results are estimates or whether the law version/year matters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a URL, no wasted words. The minor weakness is ordering: it leads with a numeric example rather than stating what the tool is, so the purpose arrives after the illustration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter, annotation-covered calculator with no output schema, the description supplies the legal basis, the scope rule (part-years counted), and the key output intuition. A brief note on what the returned figure represents (total award vs per-year breakdown) would close the remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with wage, dates, and the ended/resigned enum all documented in the schema itself, so the baseline is 3. The worked example indirectly illustrates that the reason parameter changes the payout, but no additional syntax or input constraints are added beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific computation (Saudi end-of-service award) and grounds it in Labour Law Articles 84-85, which clearly separates it from the many country-specific severance siblings such as egypt_end_of_service_calculator or uae_gratuity_calculator. It never explicitly names those siblings, so the differentiation is implied by jurisdiction rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: Saudi employment terminations, with resignation handled as a distinct case. There is no explicit statement of when to use this versus gcc_gratuity_calculator or the neighbouring-country severance tools, and no mention of eligibility caveats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
savings_goal_calculatorSavings Goal CalculatorARead-onlyIdempotentInspect
$50,000 in 5 years with $5,000 saved at 4% takes $662.08 a month. This savings goal calculator finds the deposit for any target in USD, AED, SAR and more. Web page: https://calcbright.com/savings-goal-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | Savings goal | |
| rate | No | Annual interest / return (%) | |
| years | No | Time to reach goal (years) | |
| current | No | Already saved | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds that the returned figure is a monthly deposit and that currency handling spans many codes, but it never says whether currency converts values or merely formats them, nor whether payment frequency is fixed at monthly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no filler. The leading worked example is more illustrative than a purpose statement would be, but it does push the actual 'what this does' sentence into second position; the URL is defensible as a verification source rather than bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 carry the return-value burden, and it does so only partially — one number is shown in the example, but the response shape, whether a schedule or breakdown is returned, and the fact that all five inputs are optional with defaults are all unstated. Adequate for a simple calculator, but not fully self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 earns an extra point because the worked example concretely shows how goal, current, rate and years combine to produce the output, which is meaning beyond the terse schema labels like 'Savings goal'. It still leaves the currency parameter's effect (formatting vs. conversion) unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource: 'finds the deposit for any target' in multiple currencies, backed by a fully worked numeric example ($50,000 in 5 years at 4% → $662.08/month). The function is unmistakable, though it never names the near-siblings (compound_interest_calculator, future_value_calculator, retirement_calculator) that an agent would need to choose against.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the example scenario — an agent can infer 'use when you want the periodic contribution needed to reach a target.' There is no explicit when-to-use, no when-not-to-use, and no routing to alternative finance calculators that solve overlapping problems.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scientific_calculatorScientific CalculatorARead-onlyIdempotentInspect
Type 2^10 + √144 × sin(30) the way you would write it and get each step back. Handles powers, roots, trig, logs, factorials, nCr and π in degrees or radians. Web page: https://calcbright.com/scientific-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| expr | No | Expression Use + − × ÷ ^ ( ) ! %, π, e and functions like sin, cos, tan, sqrt, ln, log, nCr(5, 2). 2π and 3(4+1) multiply automatically. | 2^10 + sqrt(144) × sin(30) |
| angle | No | Angle unit | deg |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds two genuinely useful behavioral facts — results are returned step by step, and trig honors a degrees/radians mode — but says nothing about error handling for malformed expressions or the 500-char input limit's consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example and the capability list in two tight sentences. The trailing website URL is promotional padding that serves no invocation purpose, but the rest earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the return-value burden — and 'get each step back' is an adequate if brief account of the step-by-step result. With a trivial two-parameter schema and full annotation coverage, what remains missing (error behavior, precision/rounding) is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both `expr` (with its operator/function syntax) and the `angle` enum are already documented in the schema. The description restates the same example expression and mentions degrees or radians, adding no syntax detail beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb (evaluate/type an expression) plus the resource (scientific expression) and enumerates the covered operation families — powers, roots, trig, logs, factorials, nCr, π — which implicitly separates it from the narrower siblings like exponent_calculator, square_root_calculator and logarithm_calculator. An agent can tell what this does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the worked example and the operation list, so an agent can infer this is the general-purpose expression evaluator. However, it never explicitly says when to prefer it over the single-purpose siblings (exponent_calculator, logarithm_calculator, square_root_calculator) or states any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scientific_notation_converterScientific Notation ConverterARead-onlyIdempotentInspect
299,792,458 is 2.99792458 × 10⁸. Convert any number to scientific, E- or engineering notation and back to standard form, digit-exact even at 10⁻³⁰⁰. Web page: https://calcbright.com/scientific-notation-converter
| Name | Required | Description | Default |
|---|---|---|---|
| sig | No | Significant figures Optional – round the mantissa | |
| number | No | Number Enter a standard number, E-notation (1.5E-7) or scientific notation (1.5 × 10^-7). | 299792458 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety is covered. The description adds genuine behavioral context beyond them: bidirectional conversion, supported notation formats, and a precision claim (digit-exact even at 10⁻³⁰⁰).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded with an illustrative example before the functional statement, then a reference URL. Every element is relevant, though leading with the example rather than the purpose is slightly unconventional.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only converter with full schema coverage and annotations, the description is sufficient: it covers directions, formats, and precision, and the example implicitly shows the output shape. Nothing critical for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 both 'number' (accepted formats) and 'sig' (mantissa rounding), making 3 the baseline. The description's example value reinforces what 'number' expects but adds no new syntax or semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Convert) and resource (numbers between scientific, E-, engineering, and standard form) with a concrete worked example (299,792,458 → 2.99792458 × 10⁸). The purpose is unambiguous, though it does not distinguish itself from nearby siblings like significant_figures_calculator or scientific_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description never says when to choose this tool over alternatives such as scientific_calculator, significant_figures_calculator, or number_base_converter, nor does it state any exclusions. Usage is only implied by the verb 'Convert'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
self_employment_tax_calculatorSelf-Employment Tax CalculatorRead-onlyIdempotentInspect
$80,000 of 1099 profit = $11,303.64 SE tax in 2026. See SE tax, income tax and each 1040-ES payment – plus the FEIE view for Americans freelancing in Dubai. Web page: https://calcbright.com/self-employment-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| qbi | No | 20% QBI deduction (Section 199A) | yes |
| other | No | Other taxable income Spouse's wages if filing jointly, interest, etc. | |
| wages | No | W-2 wages (yours) Wages already subject to Social Security reduce the SE wage base. | |
| abroad | No | Where you work Foreign earned income exclusion (Form 2555): up to $132,900 of 2026 profit is excluded from income tax, not from SE tax. | no |
| filing | No | Filing status | single |
| profit | No | Net self-employment profit Schedule C income minus business expenses (1099 income after expenses). | |
| withheld | No | Federal tax already withheld From W-2 paychecks – reduces the estimated payments you need to make. |
shoe_size_converterShoe Size ConverterARead-onlyIdempotentInspect
A US men's 9 is a UK 8.5, an EU 42.5 and 27 cm. Convert adult shoe sizes between US men's, US women's, UK, EU and Japanese cm before you order from abroad. Web page: https://calcbright.com/shoe-size-converter
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Size | |
| system | No | Size system | usM |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered by structured data. The description's only added trait is the scope restriction to adult sizes; it adds no info on output shape, precision, or rounding, which is a modest contribution given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the illustrative example, then the purpose, then a URL. Two sentences, no filler. The trailing web page link is promotional rather than functional and slightly dilutes an otherwise tight definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what the call returns (a single converted size, or all systems at once). The example implies a multi-system result but does not state it, so an agent cannot fully predict the response. Adequate but with a clear gap for a no-output-schema tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the enum already lists usM/usW/uk/eu/cm. The description adds value by expanding those abbreviations into readable system names and giving a concrete value example, but it does not explain the number range (1-60) or default behavior. Baseline 3 is appropriate when the schema carries most of the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Convert adult shoe sizes between US men's, US women's, UK, EU and Japanese cm.' The concrete example ('A US men's 9 is a UK 8.5, an EU 42.5 and 27 cm') makes the scope unmistakable and clearly separates it from generic siblings like unit_converter, height_converter, or cooking_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear usage context: 'before you order from abroad,' which tells the agent when this tool is relevant. It does not, however, name an alternative (e.g., unit_converter) or state exclusions besides implying adult-only sizing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
significant_figures_calculatorSig Fig CalculatorARead-onlyIdempotentInspect
Does 0.004050 have 3 or 4 sig figs? Paste any number to see which digits are significant and the rule behind each one, then round it to as many as you need. Web page: https://calcbright.com/significant-figures-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| round | No | Round to (sig figs) Optional | |
| number | No | Number Type it exactly as written – trailing zeros matter. Scientific notation like 6.02e23 or 6.02 × 10^23 works too. | 0.004050 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and a closed world, so the safety profile is covered. The description adds genuinely useful output context — it returns which digits are significant plus 'the rule behind each one' — which is behavior beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a URL, and the hook question is front-loaded before the capability statement. Slightly padded by the trailing web-page link, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, zero-required-param calculator with full schema coverage and no output schema, the description tells the agent what it computes and what it returns. Adequate, though it could mention result format expectations more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 'number' (trailing zeros matter, scientific notation) and 'round'. The description only restates rounding to 'as many as you need' and reinforces the example, adding little beyond what the schema provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (identify which digits are significant, then round) and resource (an input number), and the opening example ('Does 0.004050 have 3 or 4 sig figs?') concretely fixes the scope. This is clearly distinct from adjacent math siblings like scientific_notation_converter or exponent_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Paste any number... then round it to as many as you need' implies the workflow, but the description never names when to prefer this over a sibling (e.g. scientific_notation_converter) or any exclusions. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simple_interest_calculatorSimple Interest CalculatorBRead-onlyIdempotentInspect
$10,000 at 5% for 3 years earns $1,500 in simple interest. Apply I = P × r × t by years, months or days (365 or 360) and see a flat-rate loan’s true APR. Web page: https://calcbright.com/simple-interest-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Annual interest rate (% / yr) | |
| time | No | Time | |
| unit | No | Unit | years |
| basis | No | Day count Only used when the time is in days. | 365 |
| repay | No | Paid back Gulf car and personal loans quoted as a “flat rate” charge simple interest on the full amount and are repaid in equal monthly instalments. | end |
| currency | No | Currency | USD |
| principal | No | Principal |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. The description adds that day-count basis (365/360) and repayment mode affect the result, but says nothing about what the response contains, rounding behavior, or how the 'true APR' figure is derived.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two crisp sentences plus a URL: one concrete example, one formula/unit statement. Front-loading a worked example is effective for a calculator. The trailing web-page link is mild filler but does not obscure the core message.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should convey what comes back; the $1,500 example partially does this, but the return shape (interest only vs. total repayment vs. APR) remains ambiguous. The 'repay' parameter's effect on results is hinted at ('true APR') but never explained, leaving a genuine gap for a 7-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% but the schema descriptions are thin ('Time', 'Unit', 'Currency'). The description clarifies that time can be expressed in years, months or days, yet it leaves rate, currency, repay and the principal amount unexplained beyond the worked example. Baseline 3 is right since the schema carries most of the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific computation (simple interest via I = P × r × t) and shows a concrete worked example, so the resource and operation are unambiguous. It implicitly distinguishes itself from compound_interest_calculator by emphasizing 'simple'/'flat-rate', but never names the sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than stated: flat-rate loans and 'true APR' comparison suggest when to reach for it, but there is no explicit when-to-use/when-not guidance and no named alternative (e.g., compound_interest_calculator for compounding). An agent must infer the boundary from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sip_calculatorSIP CalculatorARead-onlyIdempotentInspect
₹10,000 a month for 10 years at 12% grows to ₹23,23,391 – ₹21,92,969 after tax on an equity fund. SIP calculator with annual step-up, for residents and NRIs. Web page: https://calcbright.com/sip-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Expected annual return (%) | |
| years | No | Investment period (years) | |
| amount | No | Monthly SIP amount | |
| stepUp | No | Annual step-up (% a year) Raise the instalment by this percentage every 12 months, e.g. with your yearly increment. 0 = a flat SIP. | |
| fundTax | No | Tax if you redeem at the end Indian capital gains tax plus 4% cess, the same for residents and NRIs (surcharge not included). | none |
| currency | No | Currency | INR |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, closed-world), so the description's job is to add context — and it does: it discloses the equity tax treatment assumption (capital gains plus 4% cess, surcharge excluded), multi-currency support, and that step-up compounds annually. It does not state whether a year-by-year schedule is returned or how the response is structured.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a URL, with the concrete example front-loaded so an agent immediately sees scope and magnitude. Nothing is redundant with the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what comes back (corpus, invested amount, gain, tax, schedule breakdown). It gives only a single illustrative figure, leaving the return shape ambiguous for an agent that must present results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and includes units, ranges, defaults and even enum semantics, so the baseline is 3. The example ties the default amount/years/rate to a result, which adds intuition, but it doesn't explain the interplay of stepUp or fundTax beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (SIP calculator) and a distinguishing feature (annual step-up, tax on redemption for residents and NRIs), and the worked example makes the computation concrete. It never explicitly contrasts with near-neighbours like compound_interest_calculator or future_value_calculator, but an agent can infer the monthly-instalment framing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: '10,000 a month' signals periodic contributions rather than a lump sum, and the step-up mention hints at salary-increment scenarios. There is no explicit when-to-use or when-to-prefer-an-alternative statement, and no guidance on NRI-specific inputs despite the mention.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sleep_calculatorSleep CalculatorARead-onlyIdempotentInspect
Up at 7:00 AM? Aim for bed at 9:45 or 11:15 PM. Count back whole 90-minute sleep cycles to pick a bedtime or alarm that lands in light sleep, not deep sleep. Web page: https://calcbright.com/sleep-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | I want to… | wake |
| time | No | Wake-up time (HH:MM, 24-hour) | 07:00 |
| latency | No | Time to fall asleep (min) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is covered. The description adds real behavioral value by disclosing the underlying algorithm (whole 90-minute cycles targeting light rather than deep sleep), which explains why results cluster at specific times. It does not describe the return format, but for a deterministic calculator that gap is minor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a vivid example before explaining the mechanism, and each sentence carries information. The trailing web-page URL is slightly extraneous for an agent but not disruptive. Efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter, no-required-argument calculator with full schema coverage and read-only annotations, the description supplies enough to call it correctly and interpret results. The absence of any return-value description is acceptable given the deterministic numeric output, though naming what it returns would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so mode, time, and latency are already documented, and the description adds no per-parameter syntax or format guidance. The example (7:00 AM wake, 9:45/11:15 PM bedtimes) indirectly illustrates how time and cycle-counting interact, which is mild added meaning. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes clear this computes a bedtime or wake time by counting back 90-minute sleep cycles, illustrated with a concrete 7:00 AM example. No sibling tool overlaps with sleep-cycle math, so it is unambiguously distinguishable. It never states the verb 'calculate' directly, relying on the example to convey purpose, which keeps it just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the example scenario (you have a wake time and want a bedtime). There is no explicit when-to-use statement, no mention of the mode toggle that reverses the calculation, and no alternatives to weigh against. Adequate but leaves the agent to infer the trigger conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
slope_calculatorSlope CalculatorARead-onlyIdempotentInspect
Two points in, the whole line out: slope as a fraction, y = mx + b, point-slope and standard form, the angle, distance and midpoint, each with its working. Web page: https://calcbright.com/slope-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| x1 | No | x₁ | |
| x2 | No | x₂ | |
| y1 | No | y₁ | |
| y2 | No | y₂ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so safety profile is covered. The description adds that each result comes 'with its working', which is useful context about output format, but doesn't cover rounding, constraints, or error behavior. With annotations present, a 3 is fair.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence front-loads 'Two points in, the whole line out' and then enumerates outputs efficiently. Slightly overloaded with seven output forms plus a URL, but no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description enumerates all outputs so the agent knows what comes back even without an output schema, and annotations cover the safety profile. Minor gap: no note on numeric limits or how degenerate cases (e.g., vertical line where x1=x2, undefined slope) are handled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each of the four parameters (x1, x2, y1, y2) is documented with symbols and numeric range. The description adds no parameter-level detail beyond noting they are two points. Baseline 3 applies when the schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb-like action (compute the whole line from two points) and enumerates the concrete outputs: slope fraction, y=mx+b, point-slope, standard form, angle, distance, midpoint. This is clearly distinguishable from siblings like circle_calculator or pythagorean_theorem_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicit usage is clear from 'Two points in', telling the agent what inputs are needed, but there is no explicit when-to-use vs alternatives guidance or exclusions. In a catalog of 150+ calculators, no cross-referencing to related tools like pythagorean_theorem_calculator (which also uses two points) or triangle_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speed_distance_time_calculatorSpeed Distance TimeARead-onlyIdempotentInspect
150 km in 2 h 30 min is 60 km/h. Give any two of speed, distance and time to get the third, mixing km, miles, km/h and mph freely, with the working shown. Web page: https://calcbright.com/speed-distance-time-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Solve for | speed |
| hours | No | Time – hours | |
| speed | No | Speed | |
| minutes | No | Time – minutes | |
| distUnit | No | Distance unit | km |
| distance | No | Distance | |
| speedUnit | No | Speed unit | kmh |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so the safety profile is covered. The description adds genuinely useful behavior beyond that: results include 'the working shown', and units may be mixed freely, which affects how an agent interprets the output. No return format details, but the added context is meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example, followed by the input rule and unit flexibility. The trailing marketing URL is the only non-earning element, but everything else is tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by noting the answer and the working are shown. The 'any two of three' rule effectively explains the mode parameter. Remaining gaps (e.g. what rounding or output shape to expect) are minor for a simple calculator.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with enums documented for mode, distUnit and speedUnit, so the schema carries the parameter burden. The description reinforces that distance and speed units can be mixed freely across km/miles and kmh/mph, adding modest value over the schema but no syntax or constraint detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: solve for the missing one of speed, distance or time from the other two, illustrated with a concrete worked example ('150 km in 2 h 30 min is 60 km/h'). This is clearly distinguishable from unit_converter or time_duration_calculator, though it does not explicitly disambiguate from the neighboring pace_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Give any two of speed, distance and time to get the third' tells the agent exactly what input combination is required, which is the key usage rule. There is no explicit when-not guidance or named alternative, but the operative condition for calling this tool is stated clearly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
square_footage_calculatorSquare Footage CalculatorARead-onlyIdempotentInspect
A 12 × 15 ft room is 180 sq ft. Measure rectangles, L-shaped rooms, circles or triangles and get sq ft, m², square yards, acres and the cost at your price. Web page: https://calcbright.com/square-footage-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | Length (ft) | |
| b | No | Width (ft) | |
| c | No | Part 2 length (ft) | |
| d | No | Part 2 width (ft) | |
| unit | No | Units | ft |
| price | No | Price per sq ft (optional) | |
| shape | No | Shape | rectangle |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safe pure-computation profile is covered structurally. The description adds useful context about output units and cost calculation, but nothing about return shape, rounding, or edge cases beyond what a calculator implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with a concrete example and then the capability list; no filler. The trailing web-page URL is marketing noise that does not help an agent invoke the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully names the return units (sq ft, m², square yards, acres, cost) so the agent knows what comes back, and all 8 parameters are schema-documented. It is complete enough to call correctly, though it does not clarify how inputs map per shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter (a, b, c, d, unit, price, shape, currency) is documented inline, so the schema carries parameter meaning. The description corroborates shapes, units, and price but adds no syntax or mapping detail (e.g., which a/b/c/d correspond to which shape) beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb (measure) and resource (room/area) and enumerates the supported shapes (rectangle, L-shape, circle, triangle) plus outputs (sq ft, m², sq yd, acres, cost), so the agent knows exactly what it computes. It does not, however, distinguish itself from siblings like area_calculator, circle_calculator, triangle_calculator, or flooring_calculator, which overlap on shape area.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The listed shapes and the mention of computing cost at 'your price' imply usage scenarios, but there is no explicit when-to-use statement and no exclusions or sibling routing (e.g., when to prefer area_calculator or flooring_calculator). Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
square_root_calculatorSquare Root CalculatorARead-onlyIdempotentInspect
√72 simplifies to 6√2 ≈ 8.4852813742. Get square, cube or any nth root to 10 decimal places, the simplest radical form and a check that squares back. Web page: https://calcbright.com/square-root-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| n | No | Root (index) 2 = square root, 3 = cube root… | |
| x | No | Number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and closed-world, so the safety profile is covered. The description adds genuinely useful behavioral detail the annotations do not carry: output precision (10 decimal places), the additional simplest-radical-form result, and a squares-back verification. The only fault is that the trailing URL is promotional rather than behavioral.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The example is a strong, front-loaded demonstration of input and output, but the marketing web-page URL in the final clause consumes space without helping invocation. Overall a short description, though one of its two sentences does not earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description correctly carries the return-value burden, explaining the decimal result, radical form, and self-check. Parameters are fully schema-documented. For a two-parameter pure calculator with full annotations, this is essentially complete; only sibling routing is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – both n (root index) and x (number) are documented in the schema, including defaults, bounds, and the meaning of n=2/3. The description's 'square, cube or any nth root' merely restates the semantics already in the n parameter description, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: compute square, cube, or any nth root, returning a decimal to 10 places plus simplest radical form. A leading worked example (√72 → 6√2 ≈ 8.4852813742) makes the output concrete. It does not, however, distinguish itself from the nearest sibling, exponent_calculator, which is the obvious alternative for the same underlying operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage is clear from 'Get square, cube or any nth root,' and the worked example shows the intended input shape. But there is no explicit when-to-use/when-not-to-use guidance and no routing to alternatives such as exponent_calculator or scientific_calculator, leaving the agent to infer selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
stamp_duty_calculatorStamp Duty CalculatorARead-onlyIdempotentInspect
A £350,000 home in England costs £7,500 in stamp duty – or £14,500 if you live abroad. SDLT, LBTT and LTT with first-time, second-home and non-resident rates. Web page: https://calcbright.com/stamp-duty-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| buyer | No | Buyer type | standard |
| price | No | Purchase price | |
| region | No | Where is the property? | GB-ENG |
| nonResident | No | Non-UK resident buyer? | no |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, covering the safety profile. The description adds an example of the calculation and the tax scope, but does not disclose return format, calculation edge cases, or rate update behavior. It adds some value without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a URL, front-loading a concrete example before listing the tax scope. The example earns its place by illustrating the non-resident premium, but a more direct statement of the action could be even tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, annotations covering safety, and 100% schema coverage, the description gives enough context to invoke the tool correctly. It could clarify the return value (e.g., total stamp duty amount) and which tax applies to which region, but the example and tax names cover most of the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 four parameters. The description's references to 'first-time, second-home and non-resident rates' loosely map to the buyer and nonResident parameters, but add no syntax or format details beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description communicates the tool's purpose through a concrete example and by naming the specific taxes (SDLT, LBTT, LTT) and buyer categories it covers. It does not explicitly compare itself to the sibling land_transfer_tax_calculator, so sibling differentiation is absent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the tax names and buyer types, but the description never states when to use this tool instead of alternatives (e.g., land_transfer_tax_calculator or income_tax_calculator). No exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
standard_deviation_calculatorStandard Deviation CalculatorARead-onlyIdempotentInspect
Sample (n − 1) or population (N)? Paste your data and get both standard deviations, the variance and mean, with a deviation-by-deviation table you can check. Web page: https://calcbright.com/standard-deviation-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Data is a… | population |
| numbers | No | Data set Separate values with commas, spaces or new lines. | 2, 4, 4, 4, 5, 5, 7, 9 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds meaningful output-related context: it returns both sample and population standard deviations, variance, mean, and a deviation-by-deviation table, which is useful beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the sample-vs-population distinction. The first sentence prompts the key parameter choice, and the second sentence lists the outputs. The URL and 'you can check' phrase are mildly extraneous but not disruptive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter calculator with no output schema, the description adequately explains the return values (both standard deviations, variance, mean, deviation table). Annotations already cover safety and idempotency, so no further behavioral disclosure is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema documents both parameters. The description still adds value by clarifying the difference between sample (n−1) and population (N) types, which goes beyond the schema's truncated 'Data is a…' description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns both sample and population standard deviations, variance, and mean, with a deviation table. It names the specific resource (standard deviation) and distinguishes the two calculation modes, which is enough to separate it from sibling calculators like average_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as average_calculator or z_score_calculator. It only asks whether the user wants sample or population, which is a parameter choice, not tool-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
student_loan_repayment_calculatorUK Student Loan Repayment CalculatorCRead-onlyIdempotentInspect
Plan 2 on £35,000 costs £42.11 a month in the UK but £86.18 in Dubai. 2026/27 UK and Gulf thresholds, the 6% interest cap and your write-off date. Web page: https://calcbright.com/student-loan-repayment-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| plan | No | Repayment plan | plan2 |
| where | No | Where you live and work Abroad, the Student Loans Company uses country thresholds instead of the UK ones. | uk |
| growth | No | Salary growth per year (%) Thresholds are kept at their 2026/27 level. | |
| salary | No | Annual salary (before tax) Outside the UK: your gross annual pay converted to pounds. | |
| balance | No | Loan balance | |
| yearsRepaying | No | Years since repayments started (years) Counts towards the write-off date. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds real domain context the annotations don't: 2026/27 thresholds, a 6% interest cap and a write-off date. It still says nothing about what the tool returns (monthly figure only? total repaid? write-off year?), which matters since there is no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler, but the lead is a marketing hook (£42.11 vs £86.18) rather than a statement of what the tool does, so the most useful information is not front-loaded. The trailing web-page URL is mildly promotional but harmless.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six optional parameters, full schema coverage and annotations, the definition is callable as-is. However, for a calculator with no output schema, the description should say what result shape to expect (monthly payment, total interest, write-off date); the single example figure only partially covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including enum explanations for plan and where and the note that thresholds stay at 2026/27 levels, so the baseline is 3. The description adds no parameter-level meaning beyond restating thresholds and the interest cap already implied in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description demonstrates rather than states the purpose: leading with 'Plan 2 on £35,000 costs £42.11 a month' implies a monthly repayment calculator, and 'UK and Gulf thresholds... write-off date' signals the domain. But there is no explicit verb+resource statement, and no differentiation from near siblings such as loan_calculator, debt_payoff_calculator or salary_calculator beyond the implied student-loan context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance and no named alternatives. The agent must infer from the example figures that this is for UK/Gulf student loan planning, and nothing tells it when a generic loan_calculator or take_home_pay_calculator would be the better pick.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
take_home_pay_calculatorTake-Home Pay CalculatorBRead-onlyIdempotentInspect
$75,000 in Texas leaves $61,592.50 after 2026 federal tax and FICA; £50,000 in England £39,519.60. Net pay in 166 countries, the Gulf included, line by line. Web page: https://calcbright.com/take-home-pay-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| filing | No | Filing status | single |
| region | No | State | US-TX |
| salary | No | Gross annual salary | |
| social | No | Social insurance contribution (%) There is no personal income tax. Nationals pay social insurance (e.g. GOSI, GPSSA) – enter your rate as a share of the salary above. GOSI counts only basic salary + housing. | |
| bahrain | No | Nationality | expat |
| country | No | Country | US |
| provRate | No | Provincial income tax (effective) (%) Optional – provincial tax is added on top of federal tax, CPP and EI. | |
| otherRate | No | Effective income tax rate (%) | |
| stateRate | No | State income tax rate (%) Your state has progressive rates – enter your approximate effective state rate. | |
| retirement | No | 401(k) / pre-tax contributions (% of pay) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds genuine value by signaling a line-by-line breakdown of results and 166-country coverage (useful since no output schema exists), but it says nothing about precision assumptions, what the 2026 tax year means for other years, or how the Gulf no-income-tax path behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences, front-loaded with the most persuasive concrete outputs so the agent immediately sees the result shape. The trailing URL is minor noise, and nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 optional parameters spanning four tax regimes and no output schema, the description should ideally explain how country/region/stateRate/otherRate/social interact or note that only a subset applies per country. It hints at the Gulf special case but leaves that interaction to the schema. Adequate, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every one of the 10 parameters is already documented in the schema, including the country-specific quirks (GOSI, provincial tax, progressive state rates). The description's 'the Gulf included' and the Texas/England examples loosely map to country/region selection but add no syntax or conditional guidance beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description communicates the tool's function through concrete worked examples ('$75,000 in Texas leaves $61,592.50 after 2026 federal tax and FICA') plus the summary 'Net pay in 166 countries,' which makes the verb (compute net pay) and resource (after-tax salary) clear. However, it never distinguishes itself from close siblings such as income_tax_calculator, salary_calculator, or tax_free_salary_equivalent_calculator, leaving the agent to infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the many overlapping salary/tax siblings, and no exclusions or prerequisites. The only implicit signal is the breadth of country coverage, which an agent must interpret on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tax_free_salary_equivalent_calculatorTax-Free Salary EquivalentARead-onlyIdempotentInspect
AED 25,000 a month tax-free needs $103,565 gross in Texas or $111,183 in Illinois. See the pay that matches a Gulf salary in the US, UK or Canada. Web page: https://calcbright.com/tax-free-salary-equivalent-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | Currency | AED |
| state | No | State | TX |
| salary | No | Tax-free monthly salary in the Gulf Total monthly pay including housing and transport allowances. | |
| country | No | Compare with | US |
| provRate | No | Provincial income tax rate (effective) (%) Provincial tax is added on top of federal tax, CPP and EI – enter your approximate effective rate. | |
| province | No | Province / territory | ON |
| stateRate | No | State income tax rate (effective) (%) This state has progressive brackets – enter your approximate effective rate. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is fully covered. The description adds the useful signal that the output is a gross pay figure in the target country (shown via two sample results), but says nothing about assumptions, tax-year, or whether allowances are treated as taxable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences plus a reference URL: a concrete worked example first, then the scope statement. Nothing is padded and the most informative element is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with no output schema, the description conveys the input scenario and the shape of the answer, but never explains the conditional parameter structure (state vs. province vs. provRate depending on the country) or what the returned figure includes. Adequate but leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including provRate, stateRate and the salary/allowance definition is already documented in the schema; the description only echoes 'salary' and 'state' through its example. Baseline 3 applies — it neither compensates for nor adds to the structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete transformation — matching a tax-free Gulf monthly salary with the gross pay needed in the US, UK or Canada — and illustrates it with real numbers (AED 25,000 → $103,565 in Texas). The resource and direction of the conversion are unambiguous, though it never names the adjacent tools (salary_calculator, take_home_pay_calculator, income_tax_calculator) that an agent might confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the example shows the intended scenario (someone earning a Gulf package wanting a Western equivalent), but there is no explicit 'use this when…' statement, no exclusions, and no routing to alternatives such as income_tax_calculator for non-Gulf comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tdee_calculatorTDEE CalculatorARead-onlyIdempotentInspect
Your maintenance calories are BMR × an activity factor. Get yours with Mifflin–St Jeor or Katch–McArdle, plus daily targets to lose or gain 0.25–1 kg a week. Web page: https://calcbright.com/tdee-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cm | No | Height (cm) | |
| ft | No | Height (ft) | |
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| age | No | Age (years) | |
| sex | No | Sex | male |
| inch | No | (in) | |
| units | No | Units | metric |
| bodyFat | No | Body fat (optional, for Katch–McArdle) (%) Leave blank if you don’t know it – Mifflin–St Jeor only needs height, weight, age and sex. | |
| activity | No | Activity level | moderate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, closed-world safety profile. The description adds meaningful context beyond that: the underlying formula, the two optional calculation methods, and that output includes daily targets for weight change. It doesn't detail rate limits or side effects, but none apply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a reference URL, front-loaded with the core definition. No obvious filler, though the URL and marketing tone ('Get yours') are slightly extraneous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter, no-required-argument calculator with full schema coverage and annotations, the description covers purpose and hints at outputs (maintenance calories and daily targets). Without an output schema, exact return fields are not fully specified, but enough context is provided to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 10 parameters (units, sex, activity, etc.) are documented in the schema. The description adds no extra syntax or meaning for specific parameters, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific calculation (maintenance calories via BMR × activity factor) and the methods/targets it provides. It doesn't explicitly differentiate itself from sibling bmr_calculator or calorie_deficit_calculator, but the resource is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage by describing what it computes for weight maintenance and gain/loss targets, but gives no explicit when-to-use or when-not instructions and does not route the agent to alternatives like bmr_calculator or calorie_deficit_calculator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tfsa_calculatorTFSA CalculatorBRead-onlyIdempotentInspect
Eligible since 2009? Your TFSA limit is $109,000 in 2026. Subtract what you put in, add back past withdrawals, and see your room and how the account could grow. Web page: https://calcbright.com/tfsa-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No | Expected annual return (%) | |
| years | No | Years to grow (years) | |
| annual | No | Future yearly contribution | |
| balance | No | Current TFSA balance | |
| eligible | No | Year you turned 18 (or became a resident) Room starts in 2009 at the earliest. | |
| withdrawn | No | Withdrawals before 2026 Withdrawals made in 2026 are added back next year. | |
| contributed | No | Total contributed so far All contributions ever, including 2026. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety behavior is covered. The description adds real context by stating the calculation flow (subtract contributions, add back past withdrawals) and the 2026 limit figure, but it says nothing about the shape of the result or edge cases such as ineligible years.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core calculation sentence earns its place, but the leading rhetorical question and the bare marketing URL (https://calcbright.com/tfsa-calculator) are filler an agent gains nothing from. It is not bloated, but it is not tightly front-loaded either.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter, default-heavy calculator with no output schema, the description conveys what goes in conceptually and what comes out ('your room and how the account could grow'), which is enough to call it correctly. It stops short of describing the return structure, which is the only notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every one of the seven parameters is already documented in the schema with defaults and ranges. The description paraphrases some of those concepts (contributions, withdrawals, growth) without adding format, unit, or interaction detail beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (TFSA) and states what is computed: contribution room and potential account growth, including the $109,000 2026 limit. That is a specific purpose an agent can act on, though it never explicitly contrasts itself with TFSA-adjacent siblings like rrsp_calculator or 401k_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The framing question 'Eligible since 2009?' hints at the relevant scenario, but there is no explicit when-to-use statement, no prerequisites, and no named alternatives among the many sibling calculators. Guidance is left entirely to inference from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
time_duration_calculatorTime Duration CalculatorARead-onlyIdempotentInspect
9:15 AM to 5:45 PM is 8 h 30 min, or 8.5 hours. Get the time between any two clock times, overnight shifts included, in hours and minutes, decimal and minutes. Web page: https://calcbright.com/time-duration-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End time An end time earlier than the start is treated as the next day. (HH:MM, 24-hour) | 17:45 |
| start | No | Start time (HH:MM, 24-hour) | 09:15 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint=false), so the lower bar applies. The description adds genuinely new context: the result comes back in hours and minutes and in decimal hours, and overnight spans are supported, which is the key behavior an agent would otherwise have to infer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a concrete example, followed by the operational sentence and a link. The phrasing 'in hours and minutes, decimal and minutes' is slightly garbled and repeats 'minutes', a small but real bit of waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only, idempotent calculator with no output schema, the description supplies the missing piece an agent needs: the shape of the result (h/m, decimal hours) plus the overnight case. Only the missing comparison to similar time/date tools keeps it short of a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already documents the HH:MM 24-hour format and the next-day rule for reversed times. The worked example in the description reinforces the defaults but adds no new parameter-level syntax or constraints, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific operation on a specific resource: getting the elapsed time between two clock times, with a worked example (9:15 AM to 5:45 PM = 8 h 30 min). The phrase 'clock times' implicitly separates it from date-oriented siblings like date_difference_calculator, but no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'the time between any two clock times' and the overnight-shift note, which tells the agent this tool handles end-before-start cases. However, it never says when to prefer this over hours_calculator, time_to_decimal_converter, or date_difference_calculator, and gives no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
time_to_decimal_converterTime to Decimal ConverterARead-onlyIdempotentInspect
2 h 45 min is 2.75 hours, not 2.45. Turn hours, minutes and seconds into decimal hours for timesheets and payroll, or turn 7.8 h back into 7 h 48 min. Web page: https://calcbright.com/time-to-decimal-converter
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Convert | toDecimal |
| hours | No | Hours | |
| decimal | No | Decimal hours (h) | |
| minutes | No | Minutes | |
| seconds | No | Seconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only the bidirectional nature of the operation and a worked numeric example, but no extra behavioral context such as rounding, precision, or output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The worked example is front-loaded and immediately teaches the semantics of the conversion, which is the crux of the tool. The trailing web page URL is mildly promotional but harmless; otherwise every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, fully-annotated, read-only calculator with no output schema and 100% schema coverage, the description is sufficient to call the tool correctly. Rounding/precision behavior on the reverse conversion is the only unspecified detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters (hours, minutes, seconds, decimal) are already documented with names, defaults and bounds. The description echoes these fields and implies the mode direction, but the toDecimal/toHms enum is left to the schema, adding no meaning beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource with a concrete example ('2 h 45 min is 2.75 hours, not 2.45') and covers both directions of the conversion. The purpose is unambiguous, though it never distinguishes itself from nearby siblings like time_duration_calculator or hours_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the use context ('for timesheets and payroll') and describes the reverse conversion, which implies when it applies. However, there is no explicit when-not guidance and no named alternative among the many time-related sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
time_zone_converterTime Zone ConverterARead-onlyIdempotentInspect
9:00 AM in New York is 2:00 PM in London in summer. Convert any date and time between two cities with daylight saving applied for that date, plus a world clock. Web page: https://calcbright.com/time-zone-converter
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | To | Europe/London |
| from | No | From | America/New_York |
| when | No | Date & time Leave empty to use the current time. (YYYY-MM-DDTHH:MM) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false. The description adds useful behavioral context beyond annotations by specifying that daylight saving is applied for the given date and that a world clock is included. It does not cover return formatting or edge cases, but it meaningfully exceeds the annotation baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences plus a reference URL. It leads with a memorable example rather than the purpose, but contains no filler and every element contributes to understanding the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only converter with three optional parameters and no output schema, the description covers purpose, DST handling, world clock, and an example. It does not fully specify the return structure, but the behavioral context and annotations make it largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already defines the two enum-based city parameters with defaults and the 'when' format. The description adds a concrete example ('9:00 AM in New York is 2:00 PM in London in summer') but does not clarify the to/from/when parameters beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: convert any date and time between two cities, with daylight saving applied for that date. It clearly identifies the tool's purpose but does not explicitly differentiate it from similar sibling tools such as date_difference_calculator or unix_timestamp_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the description's focus on converting date and time between two cities, and the schema's 'when' parameter notes that leaving it empty uses the current time. However, there is no explicit when-to-use guidance, when-not guidance, or mention of alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tip_calculatorTip CalculatorARead-onlyIdempotentInspect
An 18% tip on $84 is $15.12. Enter the bill, pick a percentage and split the total between any number of people, with 10% to 25% tips compared side by side. Web page: https://calcbright.com/tip-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| tip | No | Tip percentage (%) | |
| bill | No | Bill amount | |
| people | No | Split between (people) | |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context: the output compares 10%-25% tips side by side, and the worked example ('18% on $84 is $15.12') clarifies the input-to-output relationship.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no filler; the capability statement and the comparison feature are front-loaded, followed by the reference URL. The leading worked example is slightly less efficient than leading with the purpose, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-required-param, read-only calculator with no output schema, the description is nearly sufficient: it explains the inputs, the split behavior and the comparison output. It could note the currency default or that all parameters are optional, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so bill, tip, people and currency are already fully documented in the schema. The description mentions bill, percentage and split but omits the currency parameter and adds no syntax or range detail beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (compute a tip, split a bill) with a concrete worked example, so the purpose is unambiguous. It does not explicitly distinguish itself from nearby siblings such as percentage_calculator or discount_calculator, but the name and scenario make the resource clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the described scenario ('Enter the bill, pick a percentage and split the total'), which tells the agent when this is relevant. There is no explicit when-not guidance and no named alternative among the many sibling calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
triangle_calculatorTriangle CalculatorARead-onlyIdempotentInspect
Know three parts of a triangle? Get the other three, plus area, perimeter, type and a scale drawing. SSS, SAS, ASA, AAS and the SSA ambiguous case all work. Web page: https://calcbright.com/triangle-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | Side a | |
| b | No | Side b | |
| c | No | Side c | |
| angA | No | Angle A (°) | |
| angB | No | Angle B (°) | |
| angC | No | Angle C (between a and b) (°) | |
| mode | No | What do you know? | sss |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, idempotent, closed-world), and the description adds genuinely useful behavior: the full set of return values (other three parts, area, perimeter, type, scale drawing) and the warning that the SSA case is ambiguous. It does not say how the ambiguous case is resolved or what form the scale drawing takes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the capability and the returned values. The trailing web-page URL is not strictly necessary for tool invocation, keeping it just short of fully earned conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 the burden of describing returns and does so competently by listing the derived outputs. The main residual gap is the ambiguous SSA case (single vs. two solutions) and the nature of the scale drawing output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter meanings and the mode enum are already documented structurally. The description only restates the case abbreviations that map to the mode enum and the 'three parts' idea, adding no unit, ordering, or incompatibility guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: solve a triangle from three known parts and return the remaining parts plus area, perimeter, type and a scale drawing. That is enough to distinguish it from area_calculator or pythagorean_theorem_calculator in intent, but no sibling is named explicitly, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening question ('Know three parts of a triangle?') establishes the entry condition, and enumerating SSS/SAS/ASA/AAS plus the SSA ambiguous case tells the agent which input configurations are legitimate. There is no explicit when-not or named alternative, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uae_corporate_tax_calculatorUAE Corporate Tax CalculatorARead-onlyIdempotentInspect
AED 1 million of taxable income owes AED 56,250 in UAE corporate tax (5.63%). Covers the 0%/9% bands, Small Business Relief to 2029 and free zone 0%. Web page: https://calcbright.com/uae-corporate-tax-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Tax period ends | 2026 |
| profit | No | Taxable income (adjusted net profit) Accounting profit after the CT adjustments (e.g. 50% of entertainment, exempt dividends, loss relief). | |
| regime | No | Business type | standard |
| revenue | No | Annual revenue | |
| nonQualIncome | No | Taxable income from non-qualifying activities | |
| nonQualRevenue | No | Non-qualifying revenue (de minimis test) Must not exceed 5% of total revenue or AED 5 million, whichever is lower. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it read-only, idempotent, and closed-world; the description adds domain behavior beyond that by naming the 0%/9% bands, SBR to 2029, and free-zone 0% treatment. It still doesn't describe return shape or calculation assumptions, but there is no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences deliver a useful example, rule coverage, and source URL without repetition. The example is front-loaded and the scope sentence follows immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given six optional params, full schema descriptions, read-only annotations, and no output schema, the description supplies enough scope for correct selection and an indicative result. It is not exhaustive about output format or edge-case handling, so not a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all six parameters are documented structurally, and the description's example maps loosely to profit and regime. It adds no syntax or parameter-level detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names UAE corporate tax and grounds it with a concrete AED 1M example, making the resource specific. It distinguishes the tool from generic tax calculators by mentioning 0%/9% bands, SBR, and free zone 0%, though it never states an explicit 'calculates' verb.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear scope by listing supported regimes and SBR through 2029, so an agent knows which tax scenarios fit. It does not state when to choose this over sibling tax calculators such as income_tax_calculator or vat_calculator, or any exclusions, leaving routing partly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uae_gratuity_calculatorUAE Gratuity CalculatorARead-onlyIdempotentInspect
AED 10,000 basic for 7 years earns AED 55,000 in gratuity. Check your UAE end-of-service benefit: 21 days’ pay a year for 5 years, then 30, under the 2021 law. Web page: https://calcbright.com/uae-gratuity-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Last working day Leave empty to use today's date. (YYYY-MM-DD) | 2025-12-31 |
| basic | No | Last basic monthly salary Basic salary only – excluding housing, transport and other allowances. | |
| start | No | Joining date (YYYY-MM-DD) | 2019-01-03 |
| unpaid | No | Unpaid leave days (days) Days of unpaid absence are excluded from service. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so safety behavior is covered. The description adds valuable domain behavior by disclosing the calculation rule (21 days then 30 under the 2021 law) and an example output, though it does not describe the exact return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, front-loaded with a concrete example and then the statutory rule. Every sentence contributes to understanding the calculation, with no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple calculator with full schema coverage, no required parameters, and no output schema, the description supplies the formula, jurisdiction, and an example result. It is nearly complete, though it could explicitly state that the tool returns the gratuity amount.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 four parameters, including defaults, formats, and constraints. The description's example implicitly reinforces basic salary and years of service but adds no parameter-level syntax or meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific UAE end-of-service gratuity calculation, includes the statutory formula (21 days for first 5 years, then 30), and names the governing 2021 law. It distinguishes itself from sibling country-specific and GCC gratuity tools by explicitly scoping to UAE.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for when to use the tool: UAE end-of-service benefit under the 2021 law. It does not explicitly name alternatives such as gcc_gratuity_calculator or other country-specific calculators, nor state when not to use it, but the jurisdiction cue is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unit_converterUnit ConverterARead-onlyIdempotentInspect
Convert cm to inches, kg to lbs, °C to °F and more in 18 categories, from length and weight to torque, flow rate and density, using exact conversion factors. Web page: https://calcbright.com/unit-converter
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | To | inches |
| from | No | From | cm |
| value | No | Value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safe, deterministic nature is clear. The description adds 'using exact conversion factors' which reassures precision but doesn't cover return format, rounding, or potential limitations. With annotations covering safety, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that front-loads the core purpose with examples and then enumerates categories, followed by a URL. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 optional params, no output schema), the description is nearly complete: it specifies scope, examples, and precision. It could mention that no authentication is needed or that results are immediate, but those are minor. The lack of output schema means the description could clarify return format, but annotations and schema suffice for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both 'from' and 'to' parameters have enums with all units documented in the schema, while 'value' has range bounds. The description does not add parameter details beyond what the schema already provides. Baseline 3 is correct when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Convert) and resource (units) with concrete examples (cm to inches, kg to lbs) and explicitly names the 18 categories including length, weight, torque, flow rate. This clearly distinguishes it from siblings like cooking_converter, height_converter, and number_base_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by listing example conversions and the breadth of categories, implying usage for any unit conversion. However, it does not explicitly say when not to use this tool or route to more specialized converters (e.g., cooking_converter for recipes), which leaves some ambiguity given the many sibling converters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unit_price_calculatorUnit Price CalculatorBRead-onlyIdempotentInspect
A 500 g pack at $3.99 costs $0.80 per 100 g, so a 1 kg pack at $7.20 ($0.72) is the better buy. Compare up to three sizes in mixed units to find the lowest price. Web page: https://calcbright.com/unit-price-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| p1 | No | Product A price | |
| p2 | No | Product B price | |
| p3 | No | Product C price | |
| q1 | No | Size | |
| q2 | No | Size | |
| q3 | No | Size | |
| u1 | No | Unit | g |
| u2 | No | Unit | kg |
| u3 | No | Unit | g |
| currency | No | Currency | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description usefully adds the hard limit of three products and the fact that units may be mixed, but it says nothing about what the response contains or how per-unit values are normalized.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler, and the example anchors the abstract idea of a unit price. Minor deduction: the illustrative example is placed before the actual purpose statement, and the trailing URL adds no task value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Ten parameters, no output schema, so the description carries some burden for return values; it never says the tool returns per-unit prices and which product is cheapest, only that it 'finds' the lowest price. Inputs are adequately framed, but the output contract is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so p1-p3, q1-q3, u1-u3 and currency are all documented in the schema itself; baseline is 3. The description adds 'mixed units' and 'up to three sizes,' which conceptually ties the p/q/u triplets together, but it adds no format or semantics beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The second sentence states the operation concretely: compare up to three package sizes in mixed units to find the lowest unit price. That distinguishes it from generic converters like unit_converter or currency_converter, though it never names a sibling, so differentiation is inferential rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the worked example (comparing a 500 g pack to a 1 kg pack) and by 'compare up to three sizes ... to find the lowest price,' which tells the agent the comparison scenario. There is no statement of when NOT to use it or what alternative to pick for single-price conversions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unix_timestamp_converterUnix Timestamp ConverterARead-onlyIdempotentInspect
1700000000 is 2023-11-14T22:13:20Z. Paste an epoch value in seconds or milliseconds to get a readable UTC and ISO 8601 date, or turn a date into a timestamp. Web page: https://calcbright.com/unix-timestamp-converter
| Name | Required | Description | Default |
|---|---|---|---|
| dt | No | Date and time (UTC) Empty = now. (YYYY-MM-DDTHH:MM) | |
| ts | No | Unix timestamp Seconds or milliseconds – detected automatically. Empty = now. | |
| mode | No | Convert | toDate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds the concrete output format via its example and repeats the seconds/milliseconds auto-detection (which the schema already states), but says nothing about return shape details or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads a demonstrative example, then the one-sentence instruction, then the link — no fluff sentences. The trailing web-page URL is mildly promotional but conventional and does not obscure the core guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-optional-param, enum-driven converter with no output schema, the description conveys both conversion directions and, via its example, hints at the return format. It is largely complete, though it could have clarified the mode/ts/dt relationship explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents dt, ts and mode, including the seconds/milliseconds auto-detection and enum values. The description adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific bidirectional verb+resource: convert epoch values to readable UTC/ISO dates and dates back to timestamps. The leading example (1700000000 is 2023-11-14T22:13:20Z) makes the function immediately concrete and distinguishable from siblings like date_calculator or time_zone_converter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly explains both directions of use — paste an epoch value to get a date, or supply a date to get a timestamp — which tells the agent when each direction applies. It stops short of naming alternatives or exclusions (e.g. vs time_zone_converter), so it lacks the explicit routing a 5 requires.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vat_calculatorVAT CalculatorARead-onlyIdempotentInspect
£120 with 20% VAT is £100 net: divide by 1.2, never take 20% off. Add or remove VAT at UK 20%, UAE 5%, Saudi 15% or any rate in 177 countries. Web page: https://calcbright.com/vat-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Calculation | add |
| rate | No | Other rate (optional) (%) Leave empty for the country’s standard rate, or enter a reduced rate. | |
| amount | No | Net amount (excl. VAT) | |
| country | No | Country | GB |
| currency | No | Currency | GBP |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so safety needs no restating. The description instead adds calculation semantics the agent cannot get elsewhere: removal is division by 1.2, not a 20% subtraction, which is exactly the kind of behavioural detail that prevents a wrong call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: a concrete worked example first, then the supported scope. The trailing marketing URL is dead weight for an agent but small enough not to undermine the structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a stateless, read-only, all-optional calculator with full schema coverage and no output schema, the description supplies mode semantics, rate flexibility and a correctness anchor. Only the response shape and how currency interacts with country remain unstated, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description reinforces amount/rate/country behaviour ('any rate in 177 countries', worked example with a rate), but it does not explain mode defaults, currency handling, or the precedence between rate and country beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb pair (add/remove) and resource (VAT), plus the supported jurisdictions and rate range, so an agent immediately knows this computes VAT in either direction. It stops short of distinguishing itself from near-neighbours such as gst_calculator, sales_tax_calculator or discount_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Add or remove VAT' implies the two usage modes, and the country/rate listing implies when to supply a rate override. There is no explicit when-to-use-this-vs-alternative guidance (VAT vs GST vs sales tax), leaving routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
volume_calculatorVolume CalculatorARead-onlyIdempotentInspect
A 30 × 20 × 10 cm box holds exactly 6 litres. Get the volume of a cube, box, cylinder, sphere, cone or pyramid with its formula, in litres and gallons too. Web page: https://calcbright.com/volume-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | Length | |
| y | No | Width | |
| z | No | Height | |
| unit | No | Unit | cm |
| shape | No | Shape | box |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, idempotentHint, closed-world), so the description's job is supplementary — and it delivers: it discloses the return content (litres, gallons, and the formula itself). The worked example '30 × 20 × 10 cm box holds exactly 6 litres' also implicitly documents the default behaviour. It does not mention rounding/precision, which keeps it out of the top band.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler, though the lead sentence is a worked example rather than the purpose, so the core capability is not strictly front-loaded. The trailing web-page URL is promotional padding that does not help an agent invoke the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully names the return values (litres, gallons, formula), which covers the biggest gap. However, for a 5-parameter, 6-shape tool with zero required parameters, it leaves the shape-dependent meaning of x/y/z and the interpretation of the 'none' unit option unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, and the description adds little: it lists shapes (already an enum) and uses 'cm' in the example (already the unit default). It does not explain how x/y/z map to radius/height for sphere, cylinder, cone or pyramid, which is the one thing the generic 'Length/Width/Height' schema labels leave ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the volume of a cube, box, cylinder, sphere, cone or pyramid') and enumerates the supported shapes, which separates it from area_calculator, circle_calculator and triangle_calculator. It never explicitly names a sibling or rules one out (e.g. concrete_calculator, which also produces volumes), so it falls short of the top tier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the purpose statement: an agent can infer 'use this to compute solid volume', but there is no when-to-use framing, no prerequisites, and no alternative tool named for adjacent needs (area, surface area, material volume).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
waist_to_hip_ratio_calculatorWaist-to-Hip Ratio CalculatorBRead-onlyIdempotentInspect
A waist of 86 cm over hips of 100 cm gives a WHR of 0.86. Enter your measurements in cm or inches and compare with the WHO thresholds of 0.90 and 0.85. Web page: https://calcbright.com/waist-to-hip-ratio-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| sex | No | Sex | male |
| hipCm | No | Hips (widest point) (cm) | |
| hipIn | No | Hips (widest point) (in) | |
| units | No | Units | metric |
| waistCm | No | Waist (narrowest point / at navel) (cm) | |
| waistIn | No | Waist (narrowest point / at navel) (in) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safe read-only profile is covered. The description usefully adds the WHO threshold values (0.90 / 0.85), which is real interpretive context, but it does not say how the result is classified or returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with a concrete worked example, then the input instruction, then a reference URL. Efficient, though the trailing web-page link adds little for tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description would ideally indicate what is returned (the ratio and its classification). It partially compensates by naming the WHO thresholds, but leaves the output shape to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with all six parameters documented, so the schema carries the burden and a baseline 3 applies. The description adds the cm/inches unit distinction but does not clarify which WHO threshold pairs with the sex enum.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: it computes a waist-to-hip ratio, illustrated with a worked example (86 cm waist / 100 cm hips = 0.86). An agent can tell what the tool produces. It does not, however, differentiate itself from health siblings like bmi_calculator or body_fat_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Enter your measurements in cm or inches and compare with the WHO thresholds" implies the input flow and the interpretation step, but offers no explicit when-to-use guidance or exclusions relative to the many other body-metric calculators. Usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
water_intake_calculatorWater Intake CalculatorARead-onlyIdempotentInspect
A 70 kg adult who exercises 30 minutes a day needs about 2.8 L of water. Get your own daily target in litres, cups and ounces from weight, exercise and climate. Web page: https://calcbright.com/water-intake-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| kg | No | Weight (kg) | |
| lb | No | Weight (lb) | |
| units | No | Units | metric |
| climate | No | Climate | temperate |
| minutes | No | Exercise per day (min) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a readOnly, idempotent, non-open-world operation, so the burden is low. The description adds genuinely useful output context — results are returned in litres, cups and ounces — going beyond the structured annotations, though it says nothing about how kg vs lb defaults interact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with a concrete example that quickly conveys scale before stating the actual capability. The trailing web page URL is mildly promotional but does not bloat the definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly fills the gap by naming the returned units (litres, cups, ounces). For a simple stateless calculator with all-optional, fully documented params, this covers the essentials, though default behaviour (70 kg / 155 lb / metric / temperate / 30 min) is never surfaced in prose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, making 3 the correct baseline. The description corroborates the weight/exercise/climate inputs but adds no format, range or unit-selection detail beyond the schema, and never mentions the 'units' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Get your own daily target in litres, cups and ounces' — and even names the outputs and the inputs (weight, exercise, climate) that drive it. It clearly distinguishes itself from the many other health siblings like bmi_calculator or tdee_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'from weight, exercise and climate', but there is no explicit when-to-use or when-not guidance and no routing to or away from any sibling. A user gets enough to know it estimates hydration, but nothing about edge conditions (e.g. selecting metric vs imperial).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
week_number_calculatorWeek Number CalculatorARead-onlyIdempotentInspect
January 1, 2026 is in ISO week 1, which began on December 29, 2025. Get the week number of any date, its Monday and Sunday, the day of the year and days left. Web page: https://calcbright.com/week-number-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Date Leave empty to use today's date. (YYYY-MM-DD) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, closed-world), so the description's added value is the ISO week convention and the non-obvious cross-year behavior that Jan 1 can belong to a week starting in the prior December. It does not say how results are returned or whether optional default-to-today affects output, but the domain semantics are the meaningful disclosure here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with no padding; the ISO example front-loads the convention that disambiguates the whole tool. The trailing marketing URL is the only element that does not earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter, read-only calculator with no output schema, the description must name the returned values, and it does (week number, Monday, Sunday, day of year, days remaining). It is essentially complete, lacking only a note on return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'date' parameter already documents the YYYY-MM-DD format and the empty-defaults-to-today behavior. The description adds no syntax or constraint beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Get the week number of any date') and enumerates the outputs (Monday, Sunday, day of the year, days left), which implicitly separates it from siblings like day_of_week_calculator or date_difference_calculator. It never names an alternative explicitly, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the tool is a lookup for a single date, and the worked example ('January 1, 2026 is in ISO week 1...') implicitly signals the ISO convention rather than, say, US week numbering. There is no explicit when-to-use, when-not-to-use, or named alternative tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
weighted_average_calculatorWeighted Average CalculatorARead-onlyIdempotentInspect
Scores of 85, 90 and 78 weighted 30%, 20% and 50% average 82.5, not 84.3. Enter up to six values with their weights and see the working and the simple average. Web page: https://calcbright.com/weighted-average-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| v1 | No | Value 1 | |
| v2 | No | Value 2 | |
| v3 | No | Value 3 | |
| v4 | No | Value 4 | |
| v5 | No | Value 5 | |
| v6 | No | Value 6 | |
| w1 | No | Weight 1 | |
| w2 | No | Weight 2 | |
| w3 | No | Weight 3 | |
| w4 | No | Weight 4 | |
| w5 | No | Weight 5 | |
| w6 | No | Weight 6 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuine output context with no output schema present ('see the working and the simple average'), but it stays vague about what 'the working' contains and says nothing about how missing or zero weights are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no padding, and the illustrative example lands in the first sentence. Front-loading a worked example instead of a plain purpose statement is slightly suboptimal, and the trailing URL adds little for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, all-optional numeric tool with no output schema, the description covers inputs, pairing, weight units, and the shape of the result, and the annotations carry the safety profile. Only the treatment of omitted values/weights and the output format remain unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds real meaning beyond the schema: it establishes that values pair positionally with weights, that up to six pairs are accepted, and that weights are expressed as percentages (30%, 20%, 50%) rather than fractions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a weighted-average calculation with concrete inputs (up to six values with weights) and contrasts it implicitly with a simple average ('82.5, not 84.3'). It is distinguishable from the nearby average_calculator, though it never names or explicitly rules out that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scoring example implies the use case (weighted grades/scores), but there is no explicit when-to-use or when-not statement, and no sibling is named as an alternative even though average_calculator, grade_calculator and gpa_calculator are close neighbors. Usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
word_counterWord CounterBRead-onlyIdempotentInspect
A 1,000-word article takes about 4 min 12 sec to read. Paste text for words, characters with and without spaces, sentences, speaking time and top keywords. Web page: https://calcbright.com/word-counter
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Your text | Paste or type your text here. The counter updates words, characters, sentences and paragraphs. It also estimates reading time and speaking time, and lists the keywords you use most often. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false and idempotentHint=true, so the safety profile is covered. The description adds the set of computed metrics, which is genuinely useful since no output schema exists, but it discloses no limits, truncation behavior for long text, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences plus a URL; the utility is front-loaded in the output enumeration. The opening reading-time anecdote is mild marketing padding but it does tie to one of the tool's actual outputs, so it is not pure waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-input, no-output-schema tool, enumerating the return metrics in prose fills the gap left by the absent output schema. Nothing critical for invoking it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'text' parameter, and the schema itself supplies a default and maxLength, so the baseline of 3 applies. The description adds only the framing 'Paste text', which does not meaningfully extend the schema semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (word/text analysis) and enumerates the concrete outputs: words, characters with and without spaces, sentences, speaking time and top keywords. It is clearly distinguishable from the numeric-calculator siblings, though it never explicitly contrasts itself with closely related text tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of any alternative. The phrase 'Paste text for...' implies a usage pattern but leaves the agent to infer the context unaided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zakat_calculatorZakat CalculatorCRead-onlyIdempotentInspect
AED 63,000 of savings, gold and shares owes AED 1,575 in zakat. Check today’s gold or silver nisab live in your currency, with 85 g or 87.48 g weights. Web page: https://calcbright.com/zakat-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| cash | No | Cash & bank balances At home, in accounts and wallets | |
| gold | No | Value of gold Market value of gold you own | |
| basis | No | Nisab basis | silver |
| debts | No | Debts & bills due now Immediate liabilities only – not the full balance of long-term loans | |
| silver | No | Value of silver | |
| weights | No | Nisab weights South Asian and UK bodies use the tola weights; most Arab and Gulf fatwa bodies use 85 g and 595 g. | tola |
| business | No | Business assets Stock for sale and business cash | |
| currency | No | Currency | USD |
| goldPrice | No | Gold price per gram (24k) Leave empty to use today’s live market price, or type your local price. | |
| investments | No | Investments & shares Market value of shares, funds, crypto | |
| receivables | No | Money owed to you Loans you expect to be repaid | |
| silverPrice | No | Silver price per gram Leave empty to use today’s live market price, or type your local price. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description repeatedly says the tool checks 'live' prices and can use 'today’s live market price,' which implies an external/open-world data source. That conflicts with the annotation openWorldHint=false, so this is an annotation contradiction; otherwise the annotations already cover read-only and idempotent behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but it front-loads a specific numeric example rather than a direct definition, and the webpage URL adds little value for tool invocation. The useful behavioral context is present but not cleanly structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is rich with 100% parameter descriptions, and the example hints at output. However, for a 12-parameter calculator with no output schema, the description does not explain the return values, whether live prices are fetched externally, or what happens when prices are omitted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the key parameter meanings are already documented. The description adds useful context about live price defaults and nisab weights, but its '85 g or 87.48 g' phrasing is confusing and does not cleanly align with the schema's tola/mithqal descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names zakat, nisab, gold/silver, and currency, and the worked example makes clear that the tool computes an amount owed from assets and liabilities. It is understandable despite not opening with a clean 'calculate zakat due' statement, and no sibling tool overlaps with zakat calculation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives, nor any when-not-to-use conditions. Usage is only implied by the example and nisab reference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
z_score_calculatorZ-Score CalculatorARead-onlyIdempotentInspect
Scored 85 with a mean of 70 and SD of 10? That is z = 1.5, the 93.32nd percentile. Get z-scores, tail probabilities or the value for any percentile. Web page: https://calcbright.com/z-score-calculator
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | Raw score (x) | |
| z | No | z-score | |
| sd | No | Standard deviation (σ) | |
| pct | No | Percentile (%) Share of values below x | |
| mean | No | Mean (μ) | |
| mode | No | Calculate | z |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered and the bar is lower. The description adds a worked example but omits meaningful behavioral detail: whether 'tail probability' is one- or two-sided, precision conventions, or what happens when inputs conflict (e.g., both x/mean/sd and pct supplied).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences with no filler, and the trailing web-page link is only mild overhead for an API-facing tool. It leads with an example rather than the purpose statement, so the core capability is slightly back-loaded, but nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 convey what comes back, and it does roughly (z-scores, tail probabilities, percentile value) plus a sample result. For a 6-parameter, all-optional, idempotent read tool with annotations covering safety, that is close to sufficient; the missing piece is the precise definition of the probability outputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description actually earns extra credit by decoding the cryptic mode enum ('Calculate' with values z/x/p) into z-scores, tail probabilities, and percentile values. The worked example also ties x, mean, and sd together, which the schema's plain labels do not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific operation set: computing a z-score, tail probabilities, or the raw value for a percentile, backed by a concrete worked example (85, mean 70, SD 10 → z=1.5, 93.32nd percentile). It is clearly distinct from generic siblings like scientific_calculator. It stops short of explicitly differentiating from near-neighbors such as standard_deviation_calculator, p_value_calculator, or confidence_interval_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The three output modes are listed, which implies when each is relevant, but there is no explicit 'use this when...' guidance and no named alternatives (e.g., p_value_calculator for hypothesis testing). An agent must infer the choice from the mode enum rather than from stated conditions.
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 tool update
- Changed
commission_calculator11 fields changed- added
Input schema / properties / methodAdded value: +{ + "default": "marginal", + "description": "How the tiers apply", + "enum": [ + "marginal", + "whole" + ], + "type": "string" +} - added
Input schema / properties / modeAdded value: +{ + "default": "flat", + "description": "What do you want to work out?", + "enum": [ + "flat", + "tiered", + "rate" + ], + "type": "string" +} - added
Input schema / properties / r1Added value: +{ + "default": 4, + "description": "Rate on the first tier (%)", + "maximum": 100, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / r2Added value: +{ + "default": 6, + "description": "Rate on the second tier (%)", + "maximum": 100, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / r3Added value: +{ + "default": 8, + "description": "Rate above the second tier (%)", + "maximum": 100, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / receivedAdded value: +{ + "default": 1250, + "description": "Commission paid If you choose a VAT rate below, enter the amount including VAT", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / sales / descriptionPrevious value: -"Sale amount"New value: +"Sale amount Sale price, contract value or rent the commission is charged on" - added
Input schema / properties / shareAdded value: +{ + "description": "Your share of the commission (optional) (%) If the fee is split with your agency or another broker", + "maximum": 100, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / t1Added value: +{ + "default": 50000, + "description": "First tier: sales up to", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / t2Added value: +{ + "default": 100000, + "description": "Second tier: sales up to (optional) Leave empty for a two-tier plan", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / vatAdded value: +{ + "default": "0", + "description": "VAT on the commission Charged on top when a VAT-registered agent or broker invoices the fee", + "enum": [ + "0", + "5", + "10", + "15", + "20" + ], + "type": "string" +}
2 tool updates
- Changed
loan_to_value_calculator3 fields changed- added
Input schema / properties / rulesAdded value: +{ + "default": "none", + "description": "Check against Sets the maximum loan-to-value and the currency", + "enum": [ + "none", + "uae-expat", + "uae-national", + "uae-second", + "uae-offplan", + "sa-first", + "sa-second", + "us-purchase", + "us-cashout" + ], + "type": "string" +} - added
Input schema / properties / secondAdded value: +{ + "description": "Other loans secured on the property (optional) Second mortgage or home equity line – gives the combined LTV", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / value / descriptionPrevious value: -"Property value"New value: +"Property value Bank valuation, or the price if lower"
- Changed
self_employment_tax_calculator1 field changed- added
Input schema / properties / abroadAdded value: +{ + "default": "no", + "description": "Where you work Foreign earned income exclusion (Form 2555): up to $132,900 of 2026 profit is excluded from income tax, not from SE tax.", + "enum": [ + "no", + "feie" + ], + "type": "string" +}
2 tool updates
- Changed
down_payment_calculator5 fields changed- added
Input schema / properties / byAdded value: +{ + "default": "pct", + "description": "Enter the down payment as", + "enum": [ + "pct", + "amount" + ], + "type": "string" +} - added
Input schema / properties / downAmountAdded value: +{ + "default": 40000, + "description": "Down payment", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / monthlyAdded value: +{ + "description": "You can save a month (optional) Shows how long until you have the cash", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / rulesAdded value: +{ + "default": "us-conv", + "description": "Rules to check against Sets the minimum down payment and the currency", + "enum": [ + "none", + "us-conv", + "us-fha", + "ca", + "uae-expat", + "uae-national", + "uae-second", + "uae-offplan", + "sa-first" + ], + "type": "string" +} - added
Input schema / properties / savedAdded value: +{ + "description": "Saved so far (optional)", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +}
- Changed
rent_affordability_calculator6 fields changed- added
Input schema / properties / allowanceAdded value: +{ + "description": "Housing allowance a month (optional)", + "maximum": 100000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / chequesAdded value: +{ + "default": "4", + "description": "Number of cheques a year", + "enum": [ + "1", + "2", + "3", + "4", + "6", + "12" + ], + "type": "string" +} - added
Input schema / properties / dubaiAdded value: +{ + "default": "flat", + "description": "Dubai move-in costs", + "enum": [ + "flat", + "flat-furnished", + "villa", + "villa-furnished", + "none" + ], + "type": "string" +} - changed
Input schema / properties / income / descriptionPrevious value: -"Gross income (before tax)"New value: +"Gross income (before tax) Your whole package, including any housing allowance" - added
Input schema / properties / leaseAdded value: +{ + "default": "month", + "description": "Rent is quoted", + "enum": [ + "month", + "year" + ], + "type": "string" +} - added
Input schema / properties / rentAdded value: +{ + "description": "Monthly rent you are considering (optional) Checks a real listing against your income", + "maximum": 1000000000, + "minimum": 0, + "type": "number" +}
1 tool update
- Changed
holiday_entitlement_calculator1 field changed- added
Input schema / properties / takenAdded value: +{ + "description": "Holiday already taken this leave year In days, or in hours if you chose fixed hours. Shows what is left – or what must be paid when you leave.", + "maximum": 10000, + "minimum": 0, + "type": "number" +}
2 tool updates
- Changed
dividend_yield_calculator3 fields changed- added
Input schema / properties / paidAdded value: +{ + "description": "Price you paid per share (optional) Shows your yield on cost", + "maximum": 10000000, + "minimum": 0.0001, + "type": "number" +} - added
Input schema / properties / targetAdded value: +{ + "description": "Income you want a month (optional) After tax withheld – shows the shares and money needed", + "maximum": 1000000000, + "minimum": 0.01, + "type": "number" +} - added
Input schema / properties / withholdingAdded value: +{ + "description": "Tax withheld at source (optional) (%) US shares for Gulf residents 30% · Saudi shares for non-residents 5% · UAE and most UK shares 0%", + "maximum": 100, + "minimum": 0, + "type": "number" +}
- Changed
prorated_rent_calculator5 fields changed- added
Input schema / properties / endAdded value: +{ + "description": "To (last day charged) Both dates are counted (YYYY-MM-DD)", + "format": "date", + "type": "string" +} - added
Input schema / properties / methodAdded value: +{ + "default": "actual", + "description": "Daily rate method Use the method in your lease; actual days is the most common", + "enum": [ + "actual", + "thirty", + "year" + ], + "type": "string" +} - changed
Input schema / properties / mode / enumPrevious value: -[ - "in", - "out" -]New value: +[ + "in", + "out", + "range" +] - added
Input schema / properties / periodAdded value: +{ + "default": "month", + "description": "Rent is quoted", + "enum": [ + "month", + "year" + ], + "type": "string" +} - changed
Input schema / properties / rent / maximumPrevious value: -10000000New value: +100000000
1 tool update
- Changed
sales_tax_calculator1 field changed- changed
Input schema / properties / local / descriptionPrevious value: -"Local rate – county + city (optional) (%) Added to the state rate: 2 for Houston (8.25% in all), 2.5 for Los Angeles (9.75%), 4.875 for New York City (8.875%), 4 for Chicago (10.25%)."New value: +"Local rate – county + city (optional) (%) Added to the state rate: 2 for Houston (8.25% in all), 3 for Los Angeles (10.25%), 4.875 for New York City (8.875%), 4 for Chicago (10.25%)."
1 tool update
- Changed
student_loan_repayment_calculator2 fields changed- changed
Input schema / properties / salary / descriptionPrevious value: -"Annual salary (before tax)"New value: +"Annual salary (before tax) Outside the UK: your gross annual pay converted to pounds." - added
Input schema / properties / whereAdded value: +{ + "default": "uk", + "description": "Where you live and work Abroad, the Student Loans Company uses country thresholds instead of the UK ones.", + "enum": [ + "uk", + "gulf80", + "gulf60" + ], + "type": "string" +}
1 tool update
- Changed
depreciation_calculator4 fields changed- added
Input schema / properties / groupAdded value: +{ + "default": "3", + "description": "Saudi asset group Tax ignores salvage value; half the cost counts in the year you buy the asset.", + "enum": [ + "1", + "2", + "3", + "4", + "5" + ], + "type": "string" +} - changed
Input schema / properties / life / descriptionPrevious value: -"Useful life (years)"New value: +"Useful life (years) For Saudi tax: the number of years to show." - changed
Input schema / properties / method / enumPrevious value: -[ - "sl", - "ddb", - "syd", - "uop" -]New value: +[ + "sl", + "ddb", + "db", + "syd", + "uop", + "ksa" +] - added
Input schema / properties / rateAdded value: +{ + "default": 25, + "description": "Depreciation rate (% a year) Applied to the book value at the start of each year.", + "maximum": 100, + "minimum": 0.01, + "type": "number" +}
2 tool updates
- Changed
budget_calculator6 fields changed- added
Input schema / properties / billsAdded value: +{ + "description": "Other essential costs a month (optional) Utilities, groceries, transport, school fees, insurance, minimum loan payments", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / chequesAdded value: +{ + "default": "4", + "description": "Number of rent cheques a year", + "enum": [ + "1", + "2", + "3", + "4", + "6", + "12" + ], + "type": "string" +} - added
Input schema / properties / remitAdded value: +{ + "description": "Money sent home a month (optional)", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / remitAsAdded value: +{ + "default": "need", + "description": "Money sent home is", + "enum": [ + "need", + "savings" + ], + "type": "string" +} - added
Input schema / properties / rentAdded value: +{ + "description": "Rent or home loan payment (optional) Leave empty for the plain 50/30/20 split", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / rentPeriodAdded value: +{ + "default": "month", + "description": "Rent is paid", + "enum": [ + "month", + "year" + ], + "type": "string" +}
- Changed
heloc_calculator4 fields changed- changed
Input schema / properties / cltv / descriptionPrevious value: -"Lender's max CLTV (%) Combined loan-to-value limit – most lenders allow 80%–90%."New value: +"Lender's max CLTV (%) Combined loan-to-value limit – most lenders allow 80%–90%; Texas caps it at 80%." - added
Input schema / properties / extraAdded value: +{ + "description": "Principal you pay during the draw period (optional) A monthly amount on top of the interest – it shrinks the later payment jump", + "maximum": 100000000, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / rate / descriptionPrevious value: -"HELOC interest rate (%) Usually variable: prime rate + a margin."New value: +"HELOC interest rate (%) Usually variable: prime rate (7.00% in November 2026) + a margin." - added
Input schema / properties / rateRiseAdded value: +{ + "default": 2, + "description": "Test a rate rise of (points) Shows both payments if the variable rate goes up", + "maximum": 15, + "minimum": 0, + "type": "number" +}
2 tool updates
- Changed
markup_calculator5 fields changed- changed
Input schema / properties / cost / descriptionPrevious value: -"Cost"New value: +"Cost per unit Without any VAT you can reclaim" - added
Input schema / properties / marginAdded value: +{ + "default": 30, + "description": "Target margin (%)", + "maximum": 99.99, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / modeAdded value: +{ + "default": "price", + "description": "What do you want to find?", + "enum": [ + "price", + "markup", + "margin" + ], + "type": "string" +} - added
Input schema / properties / priceAdded value: +{ + "default": 60, + "description": "Selling price", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / vatAdded value: +{ + "default": "0", + "description": "VAT on the selling price Markup is always on the price before VAT – a shelf price you enter has its VAT taken out first", + "enum": [ + "0", + "5", + "10", + "15", + "20" + ], + "type": "string" +}
- Changed
roi_calculator6 fields changed- added
Input schema / properties / buyCostsAdded value: +{ + "description": "Costs to buy (optional) Fees, commission, transfer and registration fees", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / incomeAdded value: +{ + "description": "Income received (optional) Total rent, dividends or interest over the whole period, after any tax withheld", + "maximum": 10000000000000, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / invested / descriptionPrevious value: -"Amount invested"New value: +"Amount invested (price paid)" - changed
Input schema / properties / returned / descriptionPrevious value: -"Amount returned (final value)"New value: +"Amount returned (final value or sale price)" - added
Input schema / properties / runningAdded value: +{ + "description": "Running costs paid (optional) Total service charges, maintenance, platform fees", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / sellCostsAdded value: +{ + "description": "Costs to sell (optional) Agent commission, exit fees", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +}
1 tool update
- Changed
cagr_calculator5 fields changed- added
Input schema / properties / inflationAdded value: +{ + "description": "Inflation a year (optional) (%) Adds the real growth rate after inflation.", + "maximum": 100, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / modeAdded value: +{ + "default": "rate", + "description": "Calculate", + "enum": [ + "rate", + "end", + "years", + "returns" + ], + "type": "string" +} - added
Input schema / properties / rateAdded value: +{ + "default": 8, + "description": "Growth rate a year (%) Use a minus sign for a yearly decline.", + "maximum": 1000, + "minimum": -99, + "type": "number" +} - added
Input schema / properties / returnsAdded value: +{ + "default": "50, -50", + "description": "Yearly returns in %, oldest first One figure per year, separated by commas or spaces – e.g. a fund’s calendar-year returns.", + "maxLength": 2000, + "type": "string" +} - changed
Input schema / properties / years / descriptionPrevious value: -"Number of years (years)"New value: +"Number of years (years) Part-years as decimals: 30 months = 2.5, 3 years 9 months = 3.75."
2 tool updates
- Changed
annuity_calculator2 fields changed- changed
Input schema / properties / mode / enumPrevious value: -[ - "payout", - "needed" -]New value: +[ + "payout", + "needed", + "rate" +] - added
Input schema / properties / quoteAdded value: +{ + "default": 3000, + "description": "Payment the quote offers (first payment) For a life annuity, set the period to the years you expect to receive it.", + "maximum": 10000000000, + "minimum": 1, + "type": "number" +}
- Changed
profit_margin_calculator3 fields changed- changed
Input schema / properties / cost / descriptionPrevious value: -"Cost What the item or sale cost you"New value: +"Cost Direct cost of what you sold, without VAT you can reclaim" - added
Input schema / properties / overheadsAdded value: +{ + "description": "Overheads on the same sales (optional) Rent, salaries, marketing – gives operating margin", + "maximum": 1000000000000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / vatAdded value: +{ + "default": "0", + "description": "Does the selling price include VAT? Margin is always measured on the price without VAT", + "enum": [ + "0", + "5", + "10", + "15", + "20" + ], + "type": "string" +}
2 tool updates
- Changed
discount_calculator2 fields changed- added
Input schema / properties / modeAdded value: +{ + "default": "off", + "description": "What do you want to find?", + "enum": [ + "off", + "percent", + "original" + ], + "type": "string" +} - added
Input schema / properties / saleAdded value: +{ + "default": 60, + "description": "Sale price", + "maximum": 10000000000, + "minimum": 0, + "type": "number" +}
- Changed
future_value_calculator1 field changed- added
Input schema / properties / inflationAdded value: +{ + "description": "Inflation (optional) (%) Shows the future value in today’s money as well.", + "maximum": 50, + "minimum": 0, + "type": "number" +}
1 tool update
- Changed
refinance_calculator4 fields changed- changed
Input schema / properties / closing / descriptionPrevious value: -"Closing costs Paid upfront (not rolled into the loan)."New value: +"Closing costs New lender’s fees, valuation, title and registration (Dubai: 0.25% of the new mortgage)." - added
Input schema / properties / costsAdded value: +{ + "default": "upfront", + "description": "Pay the costs", + "enum": [ + "upfront", + "loan" + ], + "type": "string" +} - added
Input schema / properties / feeAdded value: +{ + "default": 0, + "description": "Early settlement fee on the old loan (%) UAE home loans: at most 1%, capped at AED 10,000. Saudi: at most 3 months’ profit.", + "maximum": 10, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / stayAdded value: +{ + "description": "Years you expect to keep the loan (years) Shows whether you are ahead if you sell or refinance again by then.", + "maximum": 50, + "minimum": 1, + "type": "number" +}
2 tool updates
- Changed
sales_tax_calculator1 field changed- added
Input schema / properties / localAdded value: +{ + "description": "Local rate – county + city (optional) (%) Added to the state rate: 2 for Houston (8.25% in all), 2.5 for Los Angeles (9.75%), 4.875 for New York City (8.875%), 4 for Chicago (10.25%).", + "maximum": 15, + "minimum": 0, + "type": "number" +}
- Changed
social_security_calculator2 fields changed- changed
Input schema / properties / salary / descriptionPrevious value: -"Average annual earnings Your typical career earnings in today's dollars, assuming 35+ years of work."New value: +"Average annual earnings Your typical yearly earnings in today's dollars while you worked in the US." - added
Input schema / properties / yearsAdded value: +{ + "default": 35, + "description": "Years of work paying US Social Security tax (years) Years with a Gulf or other foreign employer usually don't count and enter the 35-year average as zeros. 40 credits (about 10 years) are needed to qualify.", + "maximum": 50, + "minimum": 0, + "type": "number" +}
2 tool updates
- Changed
cd_calculator2 fields changed- changed
Input schema / properties / compounding / enumPrevious value: -[ - "365", - "12", - "4", - "2", - "1" -]New value: +[ + "365", + "12", + "4", + "2", + "1", + "0" +] - added
Input schema / properties / taxAdded value: +{ + "default": 0, + "description": "Tax rate on interest (%) Your marginal rate on interest (e.g. US federal + state). Leave 0 where interest is not taxed, as in the GCC.", + "maximum": 60, + "minimum": 0, + "type": "number" +}
- Changed
roth_ira_calculator2 fields changed- added
Input schema / properties / compensationAdded value: +{ + "description": "Earned income that counts (optional) Wages or self-employment income you are taxed on – salary excluded under the FEIE does not count. Joint filers: both spouses’ combined. Leave blank if it is above the limit.", + "maximum": 1000000000, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / magi / descriptionPrevious value: -"Modified AGI (MAGI)"New value: +"Modified AGI (MAGI) Living abroad? Add back any foreign earned income or housing amounts you exclude on Form 2555."
1 tool update
- Changed
apr_calculator2 fields changed- added
Input schema / properties / basisAdded value: +{ + "default": "reducing", + "description": "Rate type A flat rate charges interest on the full amount for the whole term, even as you repay it.", + "enum": [ + "reducing", + "flat" + ], + "type": "string" +} - changed
Input schema / properties / fees / descriptionPrevious value: -"Upfront fees Origination, processing, points and other finance charges."New value: +"Upfront fees Processing, origination, admin fees and points – anything you must pay to get the loan."
1 tool update
- Changed
business_days_calculator2 fields changed- added
Input schema / properties / holidaysAdded value: +{ + "default": 0, + "description": "Public holidays on working days Holidays that fall on a working day inside the period – each one is skipped.", + "maximum": 1000, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / weekendAdded value: +{ + "default": "sat-sun", + "description": "Weekend", + "enum": [ + "sat-sun", + "fri-sat", + "fri-sun", + "fri", + "sun" + ], + "type": "string" +}
2 tool updates
- Changed
debt_payoff_calculator1 field changed- changed
Input schema / properties / debts / descriptionPrevious value: -"Your debts – one per line: name, balance, APR, minimum payment Example: Car loan, 12000, 6.5, 280 – write amounts without thousands separators."New value: +"Your debts – one per line: name, balance, APR, minimum payment Example: Car loan, 12000, 6.5, 280 – no thousands separators. Card rate quoted per month? Write 3.25%m. Optional 5th value: prepayment fee, e.g. Personal loan, 40000, 7.5, 1250, 1%."
- Changed
inflation_calculator1 field changed- added
Input schema / properties / growthAdded value: +{ + "description": "Your money grows at (optional) (% / yr) A deposit rate, investment return or yearly pay rise – shows what the amount is really worth after inflation.", + "maximum": 100, + "minimum": -50, + "type": "number" +}
1 tool update
- Changed
mortgage_payoff_calculator3 fields changed- added
Input schema / properties / afterLumpAdded value: +{ + "default": "term", + "description": "After the lump sum", + "enum": [ + "term", + "payment" + ], + "type": "string" +} - added
Input schema / properties / feeAdded value: +{ + "default": 0, + "description": "Prepayment fee on the lump sum (%) UAE home loans: at most 1%, capped at AED 10,000.", + "maximum": 10, + "minimum": 0, + "type": "number" +} - added
Input schema / properties / targetAdded value: +{ + "description": "Goal: mortgage-free in (years) Shows the extra monthly payment that clears the balance in that many years.", + "maximum": 49, + "minimum": 1, + "type": "number" +}
Related MCP Connectors
140+ calculators and data tools — finance, health, science, global comparisons and more.
90+ pure finance calculators: loans, investing, bonds, options, tax. Stateless, stores nothing.
Free VAT, card fee, loan, mortgage, margin, ROI and break-even calculators plus IBAN/SWIFT checks
Official-rule calculators: retirement, home buying, tax, benefits, leave, FSA (US UK IE CA AU NZ).
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceCalculate income tax (UK/US brackets), EU VAT, UK corporation tax, and capital gains tax. Provides estimates only - not professional tax advice.2 npm22 PyPIMIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to run free, read-only calculators built on official government rules across Ireland, the UK, Canada, Québec, Australia and New Zealand, covering taxes, welfare benefits, pensions, property transaction taxes, parental leave and savings. Every result links the public calculator page and the official sources it relies on, so agents can cite them.-
- AlicenseAqualityCmaintenanceProvides real tax calculations for US, Canada, Australia, and UK income, property, and dividend taxes using up-to-date local data with no API keys required.774 npmMIT
- AlicenseAqualityBmaintenanceThe most comprehensive everyday calculator MCP server — 501 tools across 22 categories covering 8 countries' tax systems (FR, BE, CH, CA, US, UK, MA, SN). Finance, health, math, science, construction, conversions, education, sport, cooking, travel, and more. Free, no API key required. Streamable HTTP transport.1521 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
social_security_calculatorSocial Security CalculatorBRead-onlyIdempotent Inspect
$70,000 a year for 35 years pays $2,612 a month at 67, $1,828 at 62 or $3,239 at 70. Compare all claiming ages, break-even ages and years worked abroad. Web page: https://calcbright.com/social-security-calculator
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety needs no explanation. The description adds real value by disclosing that the tool compares ALL claiming ages and computes break-even ages even though claimAge is a single value, but it omits key assumptions (today's dollars, no COLA, US-only eligibility) that materially affect interpretation of the returned figures.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences front-loaded with a concrete numeric example, followed by the scope list and a single URL. Every clause carries information; only the trailing webpage link is non-essential to invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six optional parameters and no output schema, the description does partially compensate by showing the shape of the result (monthly dollar amounts per claiming age, break-even ages). It still leaves the agent guessing about the salary-vs-aime mode choice, currency/jurisdiction assumptions, and whether outputs are estimates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains aime, mode, years, salary, claimAge and birthYear thoroughly. The worked example ($70,000 over 35 years at ages 67/62/70) illustrates how salary, years and claimAge combine, which is marginal added meaning beyond the schema-derived baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete outcome — monthly benefit amounts at claiming ages 62/67/70 for a $70k salary over 35 years — plus break-even ages and foreign-work handling, so the agent knows this computes US Social Security retirement benefits. It is clear about the resource but never explicitly scopes itself to US Social Security, which matters given siblings like jordan_social_security_calculator and egypt_social_insurance_calculator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no named alternative among the many sibling calculators. The agent must infer from the example that this is for retirement-claiming-age comparisons rather than payroll tax or spousal benefit questions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.