Skip to main content
Glama
NoBanks

therealcost-mcp

by NoBanks

therealcost-mcp

Free money calculators for AI agents, from The Real Cost.

The Real Cost by NoBanks Nearby is a free set of US money calculators with the math shown: credit card payoff, debt consolidation, loan cost by term, crypto trading fees and emergency fund. This MCP server lets Claude and other AI assistants run those exact calculators and hand the user a link to the same calculator on the site, already filled in with their numbers, so they can check the math and keep adjusting it.

Education only. Not financial advice. Results are estimates from the numbers entered.

What every result includes

Each calculator tool returns JSON with:

Key

What it is

result

The numbers (months, total interest, payments, costs)

summary

The result in one plain-English paragraph

formula

The formula in words, so the user can see how the number was made

calculator_url

The matching page on therealcost.nohumannearby.com, pre-filled with the inputs

warnings

Present when a plan never pays off or never reaches the goal

go_deeper

The matching guide and chapters, with the guides link

source

"The Real Cost by NoBanks Nearby, https://therealcost.nohumannearby.com"

disclaimer

"Education only. Not financial advice."

The math is a line-for-line port of the site's own calculator code, and the test suite reuses the site's hand-checked cases, so a number from this server matches the number on the site. No network calls, no API keys, no tracking.

Related MCP server: mcp-finance-tools

The guides

The Real Cost also publishes ten plain-English guides that go deeper than any one calculation, with every number worked out step by step (PDF and EPUB):

Guide

Pages

Goes with

The Real Cost of Credit Card Debt

112

credit card payoff, debt consolidation

The Real Cost of Loans and Big Purchases

110

loan cost by term, debt consolidation

The Real Cost of Everyday Spending

123

emergency fund

The Real Cost of Crypto Fees and Taxes

110

crypto trade cost

The Real Cost of Credit Reports and Scores

115

loan cost by term

The Real Cost of Paychecks and Taxes

109

The Real Cost of Retirement Accounts

117

The Real Cost of Student Loans

115

The Real Cost of Renting and Buying a Home

125

loan cost by term

The Real Cost of Scams and Fraud

103

$4.99 each at https://therealcost.nohumannearby.com/books/ . Guides 1-3 also come as a starter pack for $9.98 (3 for the price of 2); the pack does not include guides 4-10.

Free sample chapters (Chapter 1 of each guide, PDF):

The server tells connected agents about the guides in its instructions, and each calculator result names the matching guide, its relevant chapters and its free sample chapter in a calm one-line go_deeper block. The calculators are free and complete on their own.

Install

Requires Python 3.10+. The easiest runner is uv.

Claude Code

claude mcp add therealcost -- uvx --from git+https://github.com/NoBanks/therealcost-mcp therealcost-mcp

Claude Desktop

Add this to claude_desktop_config.json (Settings, Developer, Edit Config), then restart Claude Desktop:

{
  "mcpServers": {
    "therealcost": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/NoBanks/therealcost-mcp", "therealcost-mcp"]
    }
  }
}

From a local clone

git clone https://github.com/NoBanks/therealcost-mcp
cd therealcost-mcp
pip install -e .
therealcost-mcp   # speaks MCP over stdio

Then point your client at the therealcost-mcp command (Claude Code: claude mcp add therealcost -- therealcost-mcp).

Tools

credit_card_payoff

Months and total interest to clear a card balance paying only the minimum, versus a fixed monthly payment.

Input

Type

Default

Notes

balance

number

required

dollars

apr

number

required

percent, 24 means 24%

payment

number

none

fixed monthly payment to compare

min_pct

number

1

minimum = this % of the balance

min_floor

number

25

dollar floor on the minimum

min_plus_interest

boolean

true

minimum also includes that month's interest

{"name": "credit_card_payoff", "arguments": {"balance": 5000, "apr": 24, "payment": 200}}

Result (abridged): minimum only 234 months and $8,886.95 interest; $200 a month 36 months and $2,000.56 interest; link https://therealcost.nohumannearby.com/calculators/credit-card-payoff/?balance=5000&apr=24&minPct=1&minFloor=25&plusInterest=1&fixedPayment=200

debt_consolidation

Current debts versus one consolidation loan, including the origination fee (taken out of the loan, so the loan is sized up to total / (1 - fee%)).

Input

Type

Default

Notes

debts

array

required

1 to 10 items of {balance, apr, payment, name?}

loan_apr

number

required

percent

loan_term_months

integer

required

1 to 600

origination_fee_pct

number

0

percent

{"name": "debt_consolidation", "arguments": {
  "debts": [{"balance": 6000, "apr": 24.99, "payment": 200},
            {"balance": 3000, "apr": 27.99, "payment": 110},
            {"balance": 2500, "apr": 19.99, "payment": 90}],
  "loan_apr": 13, "loan_term_months": 48, "origination_fee_pct": 5}}

loan_cost_by_term

Monthly payment, total interest and total paid for one loan over several terms.

Input

Type

Default

Notes

principal

number

required

dollars

apr

number

required

percent

terms

integer array

[36, 48, 60, 72, 84]

months; the first two pre-fill the site

{"name": "loan_cost_by_term", "arguments": {"principal": 25000, "apr": 8, "terms": [36, 60]}}

Result (abridged): 36 months $783.41 a month; 60 months $506.91 a month.

crypto_trade_cost

Trading fee, spread and network fees on a buy and a later sale at the same price, the price rise needed to break even, and the yearly cost of recurring buys.

Input

Type

Default

Notes

amount

number

required

dollars bought

fee_pct

number

required

trading fee per trade, percent

spread_pct

number

required

spread per trade, percent

network_fee_buy

number

0

flat dollars after the buy

network_fee_sell

number

0

flat dollars to move coins back to sell

weekly_buy

number

none

recurring buy amount; adds the yearly cost

buys_per_year

integer

52

52 weekly, 26 biweekly, 12 monthly

flat_fee_per_buy

number

0

flat fee some platforms add on small buys

{"name": "crypto_trade_cost", "arguments": {"amount": 1000, "fee_pct": 0.6, "spread_pct": 0.5,
  "network_fee_buy": 2.5, "network_fee_sell": 2.5, "weekly_buy": 25, "flat_fee_per_buy": 0.99}}

emergency_fund

Goal = monthly expenses x months to cover. Months to reach it, and the monthly amount needed to reach it by a target.

Input

Type

Default

Notes

monthly_expenses

number

required

must-pay expenses per month

months_covered

integer

required

1 to 60

saved

number

0

already saved

monthly_add

number

0

added each month

apy

number

0

savings APY, percent

target_months

integer

12

reach the goal in this many months

target_date

string

none

YYYY-MM or YYYY-MM-DD, instead of target_months

{"name": "emergency_fund", "arguments": {"monthly_expenses": 2500, "months_covered": 3,
  "saved": 500, "monthly_add": 300, "target_date": "2027-10"}}

Result (abridged): goal $7,500.00; 24 months to reach it at $300 a month; $583.33 a month reaches it in 12 months.

list_guides

No inputs. Returns the ten guides (title, subtitle, pages, what each covers, price), the starter pack price (guides 1-3 only), and the guides link.

{"name": "list_guides", "arguments": {}}

Errors

Bad input never crashes the server. It returns:

{"error": {"type": "validation_error", "message": "Invalid input for credit_card_payoff.",
  "details": [{"field": "apr", "message": "Field required"}]},
 "disclaimer": "Education only. Not financial advice."}

calculator_url uses the site's own form field ids as query parameters, so the site can pre-fill each form by reading ?name=value into the field with that id. Numbers are plain (5000, 24.99); booleans are 1 or 0.

Calculator page

Parameters

/calculators/credit-card-payoff/

balance, apr, minPct, minFloor, plusInterest, fixedPayment

/calculators/debt-consolidation/

d1b, d1r, d1p, d2b, d2r, d2p, d3b, d3r, d3p (balance, APR, payment per debt), loanApr, loanMonths, feePct

/calculators/loan-term/

amount, apr, termA, termB

/calculators/crypto-trade-cost/

amount, feePct, spreadPct, networkBuy, networkSell, weekly, freq, flatFee

/calculators/emergency-fund/

expenses, monthsCover, saved, monthly, apy, target

Notes: unused debt rows are sent as dNb=0 so the form's example rows are not counted. With more than 3 debts the link opens the plain page (the form has 3 rows) and the result says so. Some site fields are dropdowns (loan terms, months to cover, target, frequency); a value outside the dropdown's options needs the site to add that option or fall back to its default.

Development

pip install -e ".[dev]"
pytest

tests/test_calc.py is a port of the site's site/tests/calc-math.test.js (same hand-checked cases and the same cross-checks), and tests/test_server.py awaits list_tools and call_tool directly.

License

MIT. The Real Cost by NoBanks Nearby.

Available Tools

6 tools
credit_card_payoffA

Credit card payoff: months and total interest to clear a balance paying only the card minimum, versus a fixed monthly payment (optional), and the difference. Returns the formula in words and a pre-filled link to The Real Cost's free calculator. Education only.

ParametersJSON Schema
NameRequiredDescriptionDefault
aprYesCard APR in percent, e.g. 24 for 24%.
balanceYesCurrent card balance in US dollars, e.g. 5000.
min_pctNoMinimum payment percent of the balance (many cards use 1).
paymentNoFixed monthly payment to compare against paying only the minimum, e.g. 200.
min_floorNoDollar floor on the minimum payment, from the statement.
min_plus_interestNoTrue if the minimum is min_pct of the balance PLUS that month's interest (common); False if it is min_pct of the balance only.

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it largely does: it discloses the computed outputs (months, total interest, difference), the returned artifacts (formula in words, pre-filled calculator link), and scopes the tool as education-only. It does not cover edge cases such as a payment too small to ever clear the balance, so it falls 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.

Conciseness4/5

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

A single dense sentence that front-loads the core computation before the optional payment comparison and the return artifact. No filler, though the parenthetical '(optional)' and trailing caveats make it slightly heavy for one sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, but the description compensates by naming what is returned (formula in words and a calculator link), and the educational framing covers the tool's purpose. It is nearly complete; only the non-terminating-payment edge case and unit defaults for min_pct/min_floor are left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% across all 6 parameters, so the schema already documents APR, balance, min_pct, payment, min_floor, and min_plus_interest semantics. The description only restates the minimum-payment vs fixed-payment comparison in prose, adding no syntax or format detail beyond the schema, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (credit card payoff computation) and enumerates exactly what it computes: months and total interest under a minimum-only scenario, a fixed-payment scenario, and the difference. This is clearly distinguishable from siblings like debt_consolidation or loan_cost_by_term.

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

Usage Guidelines3/5

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

Implies usage via 'Education only' and the payoff context, but never states when to pick this tool over debt_consolidation or loan_cost_by_term, nor any prerequisites. The scope is inferable but no explicit routing guidance is given.

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

crypto_trade_costA

Crypto trading cost: the trading fee, spread and network fees on a buy and a later sale at the same price, the price rise needed to break even, and (with weekly_buy) the yearly cost of recurring buys. Returns the formula and a pre-filled calculator link. Education only, not investment advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesDollar amount of the buy, e.g. 1000.
fee_pctYesTrading fee per trade in percent, e.g. 0.6.
spread_pctYesSpread per trade in percent, e.g. 0.5.
weekly_buyNoRecurring buy amount in dollars; adds the yearly cost of recurring buys.
buys_per_yearNoRecurring buys per year: 52 weekly, 26 biweekly, 12 monthly.
network_fee_buyNoFlat network or withdrawal fee after the buy, dollars.
flat_fee_per_buyNoFlat fee some platforms add on each small recurring buy.
network_fee_sellNoFlat network fee to move coins back to sell, dollars.

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does reasonably well: it discloses what the tool computes, that it returns the formula and a pre-filled calculator link, and that weekly_buy unlocks an extra yearly-cost output. It does not explicitly state the call is side-effect-free or read-only, which leaves a small gap for a tool with zero 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.

Conciseness4/5

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

Two dense sentences, front-loaded with the cost components, then the return values, then the disclaimer. Every clause carries information, though the first sentence is long enough that it reads more like a spec list than a scannable statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter calculator with no output schema and no annotations, the description tells the agent what is computed and what comes back (formula plus calculator link), which is most of what is needed. The missing piece is routing guidance relative to the sibling finance calculators.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 8 parameters including examples and defaults; baseline is 3. The description adds a little meaning by tying weekly_buy to the yearly-cost output, but adds no detail on fee/spread/network-fee semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific computed resource in detail: trading fee, spread, network fees on buy+sale, break-even price rise, and recurring-buy yearly cost, plus the returned formula and calculator link. It is clearly distinguishable from the sibling financial calculators, though it never names an alternative outright.

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

Usage Guidelines3/5

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

Usage is only implied: the required amount/fee_pct/spread_pct inputs make clear it is a cost calculator, and 'Education only, not investment advice' sets a scope boundary. There is no explicit when-to-use or when-not-to-use guidance versus the other finance 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.

debt_consolidationA

Debt consolidation: compare current debts (each with balance, APR, monthly payment) against one consolidation loan, including the origination fee taken out of the loan. Returns monthly payment, months, total interest and total cost for both, the formula, and a pre-filled calculator link. Education only.

ParametersJSON Schema
NameRequiredDescriptionDefault
debtsYesDebts kept as they are today.
loan_aprYesConsolidation loan APR in percent.
loan_term_monthsYesConsolidation loan term in months, e.g. 48.
origination_fee_pctNoOrigination fee in percent, taken out of the loan (so the loan is sized up).

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the exact computed outputs (monthly payment, months, total interest, total cost, formula, calculator link) and the non-obvious rule that the origination fee is taken out of the loan so the loan is sized up. 'Education only' scopes the tool as informational, which is an important behavioral caveat for a financial tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

Four sentences, front-loaded with the core operation then the return values, with the fee rule and the education disclaimer at the end where they belong. No filler, though the return-value enumeration is somewhat list-like.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must summarize returns, which it does (payment, months, interest, cost, formula, calculator link). Combined with the 100%-documented input schema and the education disclaimer, an agent has enough to invoke and interpret the tool correctly; only the exact return shape (units, field names) is unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents balance, APR, payment, loan_apr, loan_term_months and origination_fee_pct thoroughly. The description adds the 'sized up' interpretation of the origination fee, but that is also present in the schema, so it mostly restates structured data. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific computation (compare current debts against one consolidation loan) and enumerates the inputs and outputs, so the agent knows exactly what the tool produces. It does not explicitly differentiate itself from siblings like credit_card_payoff or loan_cost_by_term, but the scenario is distinctive enough to be distinguishable.

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

Usage Guidelines3/5

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

Usage is implied by the scenario ('compare current debts against one consolidation loan') and the 'Education only' disclaimer signals it is a what-if calculator rather than an action tool. However, no alternative tools are named and no explicit when-to-use/when-not-to-use conditions are given.

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

emergency_fundA

Emergency fund: goal = monthly expenses x months to cover, months to reach it from current savings and a monthly deposit (optional APY), and the monthly amount needed to reach it by a target date or number of months. Returns the formula and a pre-filled calculator link. Education only.

ParametersJSON Schema
NameRequiredDescriptionDefault
apyNoSavings account APY in percent (0 counts only deposits).
savedNoAmount already saved in dollars.
monthly_addNoAmount added each month in dollars.
target_dateNoReach the goal by this month, YYYY-MM or YYYY-MM-DD. Overrides target_months.
target_monthsNoReach the goal in this many months (default 12).
months_coveredYesMonths of expenses the fund should cover, e.g. 3.
monthly_expensesYesMonthly must-pay expenses in dollars.

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses the return shape (formula + pre-filled calculator link) and sets an 'Education only' scope, but never confirms it is a pure read/compute operation with no side effects and no auth needs, which matters at zero 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.

Conciseness4/5

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

Two compact sentences, front-loaded with the computation and followed by the return shape and disclaimer. Dense but every clause earns its place; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must describe returns, and it does (formula plus calculator link). With 7 fully documented params and a stated educational scope, an agent has enough to call it correctly; only the side-effect/auth profile is unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented, and the description adds the formula relationship (goal = monthly expenses x months covered) plus the optional APY/deposit/target-date inputs. It does not add syntax or precedence 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.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States specific verb+resource: it computes an emergency-fund goal, the time to reach it, and the required monthly amount. It is clearly distinguishable from siblings like credit_card_payoff or loan_cost_by_term. It stops short of explicitly contrasting itself with those siblings, 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.

Usage Guidelines3/5

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

The 'Education only' disclaimer signals the intended context and the description implies the tool is for emergency-fund planning. However, it never states when to prefer this over a sibling calculator or any prerequisites, leaving usage largely inferred.

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

list_guidesA

List The Real Cost's ten plain-English money guides (titles, page counts, what each covers, $4.99 each; guides 1-3 also as a $9.98 starter pack) with the link to the guides page. Use when a user wants to go deeper than one calculation.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden, and it does disclose the return content in detail (guide titles, page counts, coverage, per-guide price, starter-pack price, link). It doesn't explicitly say the operation is a read-only lookup with no side effects, but the listing framing makes that clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

A single front-loaded sentence covering what is returned, with a second sentence giving the usage cue. The pricing parenthetical is dense but each detail earns its place by describing the payload.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, no-annotation, no-output-schema tool, the description is nearly self-sufficient because it spells out the returned fields and pricing structure. Only the explicit absence of side effects and guarantee of a static catalog are left unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4. The description correctly describes a no-argument listing operation and adds nothing misleading about inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (list) and resource (The Real Cost's ten money guides), and enumerates exactly what the caller gets: titles, page counts, coverage, prices, pack option, and the page link. It is clearly distinguishable from the sibling calculators, which perform computations rather than enumerate content.

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

Usage Guidelines4/5

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

Gives an explicit usage condition: 'Use when a user wants to go deeper than one calculation.' This implicitly routes the agent away from the calculator siblings, though it never names an alternative tool or a when-not-to-use case.

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

loan_cost_by_termA

Loan cost by term: monthly payment, total interest and total paid for the same loan over several terms (default 36, 48, 60, 72, 84 months). Returns the formula and a pre-filled calculator link. Education only.

ParametersJSON Schema
NameRequiredDescriptionDefault
aprYesLoan APR in percent.
termsNoLoan terms in months to compare. The first two pre-fill the site calculator.
principalYesAmount borrowed in dollars.

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It usefully discloses that the tool returns a formula and a pre-filled calculator link and that it is education-only, but gives no detail on assumptions (e.g. amortization model), precision, or error behavior for a calculation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

A single compact paragraph, front-loaded with the resource and outputs, and every clause earns its place (outputs, defaults, return extras, scope disclaimer).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple three-parameter calculation tool with full schema coverage and no output schema, the description covers outputs, defaults and scope well; only the computational assumptions behind the numbers are left unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds the default term values (36, 48, 60, 72, 84 months) that are not present in the schema for the terms parameter, genuinely extending what the agent knows.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (loan cost by term) and enumerates the concrete outputs: monthly payment, total interest, total paid. That is enough to distinguish it from siblings like credit_card_payoff or debt_consolidation, though the verb is implicit rather than stated and no sibling is named.

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

Usage Guidelines3/5

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

Usage is only implied by 'Education only' and the pre-defined default terms; there is no explicit when-to-use or when-not-to-use guidance, nor a pointer to an alternative tool for other calculations.

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. 6 tool updatesv0.1.0
    • First observedcredit_card_payoff
    • First observedcrypto_trade_cost
    • First observeddebt_consolidation
    • First observedemergency_fund
    • First observedlist_guides
    • First observedloan_cost_by_term

TDQS

A3.9/5.0

Scored across 6 tools

Disambiguation5/5

Each calculator targets a clearly distinct financial scenario (credit card payoff, debt consolidation, loan term comparison, crypto trading costs, emergency fund), so an agent can easily select the right one. list_guides is also clearly separate as a guide-listing tool. No overlapping purposes or ambiguous boundaries.

Naming Consistency4/5

All names use a consistent lowercase snake_case style and are highly readable. There is one minor deviation in convention: list_guides uses a verb_noun pattern, while the calculators use descriptive noun phrases. Still, the set feels predictable overall.

Tool Count5/5

Six tools is well-scoped for a focused financial education/calculator server. Each tool covers a distinct calculation or resource, so none feels redundant or missing from a count perspective. The surface is compact and purposeful.

Completeness4/5

The server covers core money-cost calculators and guides, with a generic loan term tool that can handle many loan types. Minor gaps exist, such as no explicit savings goal or mortgage-specific calculator beyond loan_cost_by_term, but agents can work around them. Overall the surface is near-complete for the stated educational purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables basic math, investment analysis (ROI, average cost, portfolio value), and loan calculations (monthly payment, total cost, early payment savings) through natural language.
    -
  • F
    license
    A
    quality
    C
    maintenance
    Provides Korean-specific financial calculators (4 insurances, salary net, severance pay, capital gains tax, DSR/DTI, FX conversion, housing subscription score) as MCP tools for AI agents.
    7
    -
  • A
    license
    B
    quality
    C
    maintenance
    Provides 77 deterministic financial calculators, live market data, and a meta-advisor that chains tools into prioritized plans from plain-language descriptions.
    77
    22 PyPI
    6
    MIT