therealcost-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@therealcost-mcphow long to pay off $5,000 credit card at 22% APR paying $200/month?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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.
All calculators: https://therealcost.nohumannearby.com/calculators/
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 |
| The numbers (months, total interest, payments, costs) |
| The result in one plain-English paragraph |
| The formula in words, so the user can see how the number was made |
| The matching page on therealcost.nohumannearby.com, pre-filled with the inputs |
| Present when a plan never pays off or never reaches the goal |
| The matching guide and chapters, with the guides link |
| "The Real Cost by NoBanks Nearby, https://therealcost.nohumannearby.com" |
| "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):
https://therealcost.nohumannearby.com/samples/the-real-cost-of-credit-card-debt-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-loans-and-big-purchases-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-everyday-spending-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-crypto-fees-and-taxes-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-paychecks-and-taxes-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-retirement-accounts-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-student-loans-chapter-1.pdf
https://therealcost.nohumannearby.com/samples/the-real-cost-of-scams-and-fraud-chapter-1.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-mcpClaude 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 stdioThen 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 |
| number | required | dollars |
| number | required | percent, 24 means 24% |
| number | none | fixed monthly payment to compare |
| number | 1 | minimum = this % of the balance |
| number | 25 | dollar floor on the minimum |
| 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 |
| array | required | 1 to 10 items of |
| number | required | percent |
| integer | required | 1 to 600 |
| 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 |
| number | required | dollars |
| number | required | percent |
| 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 |
| number | required | dollars bought |
| number | required | trading fee per trade, percent |
| number | required | spread per trade, percent |
| number | 0 | flat dollars after the buy |
| number | 0 | flat dollars to move coins back to sell |
| number | none | recurring buy amount; adds the yearly cost |
| integer | 52 | 52 weekly, 26 biweekly, 12 monthly |
| 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 |
| number | required | must-pay expenses per month |
| integer | required | 1 to 60 |
| number | 0 | already saved |
| number | 0 | added each month |
| number | 0 | savings APY, percent |
| integer | 12 | reach the goal in this many months |
| string | none |
|
{"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 link parameters (for the site)
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 |
|
|
|
|
|
|
|
|
|
|
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]"
pytesttests/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 toolscredit_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.
| Name | Required | Description | Default |
|---|---|---|---|
| apr | Yes | Card APR in percent, e.g. 24 for 24%. | |
| balance | Yes | Current card balance in US dollars, e.g. 5000. | |
| min_pct | No | Minimum payment percent of the balance (many cards use 1). | |
| payment | No | Fixed monthly payment to compare against paying only the minimum, e.g. 200. | |
| min_floor | No | Dollar floor on the minimum payment, from the statement. | |
| min_plus_interest | No | True 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
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Dollar amount of the buy, e.g. 1000. | |
| fee_pct | Yes | Trading fee per trade in percent, e.g. 0.6. | |
| spread_pct | Yes | Spread per trade in percent, e.g. 0.5. | |
| weekly_buy | No | Recurring buy amount in dollars; adds the yearly cost of recurring buys. | |
| buys_per_year | No | Recurring buys per year: 52 weekly, 26 biweekly, 12 monthly. | |
| network_fee_buy | No | Flat network or withdrawal fee after the buy, dollars. | |
| flat_fee_per_buy | No | Flat fee some platforms add on each small recurring buy. | |
| network_fee_sell | No | Flat network fee to move coins back to sell, dollars. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| debts | Yes | Debts kept as they are today. | |
| loan_apr | Yes | Consolidation loan APR in percent. | |
| loan_term_months | Yes | Consolidation loan term in months, e.g. 48. | |
| origination_fee_pct | No | Origination fee in percent, taken out of the loan (so the loan is sized up). |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| apy | No | Savings account APY in percent (0 counts only deposits). | |
| saved | No | Amount already saved in dollars. | |
| monthly_add | No | Amount added each month in dollars. | |
| target_date | No | Reach the goal by this month, YYYY-MM or YYYY-MM-DD. Overrides target_months. | |
| target_months | No | Reach the goal in this many months (default 12). | |
| months_covered | Yes | Months of expenses the fund should cover, e.g. 3. | |
| monthly_expenses | Yes | Monthly must-pay expenses in dollars. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| apr | Yes | Loan APR in percent. | |
| terms | No | Loan terms in months to compare. The first two pre-fill the site calculator. | |
| principal | Yes | Amount borrowed in dollars. |
TDQS
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.
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.
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.
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.
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.
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.
6 tool updates
v0.1.0- First observed
credit_card_payoff - First observed
crypto_trade_cost - First observed
debt_consolidation - First observed
emergency_fund - First observed
list_guides - First observed
loan_cost_by_term
TDQS
Scored across 6 tools
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.
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.
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.
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
Related MCP Connectors
Loan & mortgage calculator, compound interest, ROI, crypto prices, FX conversion for AI agents.
Tested financial & practical calculators as free, no-auth MCP tools for AI agents.
SmartMoney77 MCP v0.6.0 — 14 public tools that turn financial questions into exact numbers and citable links. New: historical_investment_return and compare_investments, which compute "what if I had invested" results from real yearly price data. Also compound interest, FIRE number, credit-card payoff, emergency fund, inflation, latte factor, investment fees, cost of waiting, plus discovery/deep-link/share-pack tools for a catalog of calculators in 6 languages (he/en/ar/es/pt/in). Public, no login. Endpoint: https://smartmoney77.com/mcp
Free calculators as MCP tools: finance, taxes, health, units, dates. Search, fetch & compute.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables basic math, investment analysis (ROI, average cost, portfolio value), and loan calculations (monthly payment, total cost, early payment savings) through natural language.-
- FlicenseAqualityCmaintenanceProvides 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-
- AlicenseBqualityCmaintenanceProvides 77 deterministic financial calculators, live market data, and a meta-advisor that chains tools into prioritized plans from plain-language descriptions.7722 PyPI6MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to calculate, compare, and recommend AI API costs from multiple providers, with support for currency conversion and platform fee analysis.1MIT