DEV Community

Yonatan Naor
Yonatan Naor

Posted on

Add 25+ Calculator Tools to Your AI Assistant with One MCP Package

Your AI can answer mortgage questions — but only with the right tools

You ask Claude: "Should I refinance my mortgage?"

Claude gives you a thoughtful answer. It explains rate spreads, break-even periods, closing costs. It sounds authoritative. But then you notice: the math doesn't add up. The monthly savings it quoted are off by $180. The break-even timeline is wrong by two years.

This isn't Claude being lazy. It's a fundamental limitation of language models doing arithmetic. LLMs predict the next token — they don't execute deterministic algorithms. When you need 6.5% APR × $420,000 × 360 months, you need actual code to run. Not a prediction.

This is the problem MCP (Model Context Protocol) solves.


The problem: LLMs hallucinate numbers

I've been working with AI assistants for financial and fitness calculations for a while, and the pattern is consistent:

  • Qualitative analysis: excellent
  • Precise arithmetic: unreliable

Ask Claude to explain the difference between compound and simple interest? Brilliant answer. Ask it to calculate exactly how much $10,000 grows at 7% annually for 23 years with $300/month contributions? You'll get a plausible-looking number that may be wrong by thousands of dollars.

This matters when people are making real decisions:

  • "Can I afford this house?"
  • "How many calories should I eat to lose 1lb/week?"
  • "What's my actual take-home after California state taxes?"

Wrong answers in these contexts aren't just annoying — they're harmful.


The solution: @thicket-team/mcp-calculators

I built and published an MCP server that exposes calculator tools directly to AI assistants. When you have it installed, Claude doesn't predict your TDEE — it calculates it using the Mifflin-St Jeor formula. It doesn't estimate your mortgage payment — it computes it to the cent.

npx @modelcontextprotocol/install @thicket-team/mcp-calculators
Enter fullscreen mode Exit fullscreen mode

Or if you prefer to add it manually to Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on Mac, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "thicket-calculators": {
      "command": "npx",
      "args": ["@thicket-team/mcp-calculators"]
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

For Claude Code users:

claude mcp add thicket-calculators -- npx @thicket-team/mcp-calculators
Enter fullscreen mode Exit fullscreen mode

For Cursor users, add the same JSON block to your MCP settings.

Verification: After restarting Claude, type "What tools do you have available?" — you should see the calculator tools listed.


Tool inventory: 8 core MCP tools + 25+ linked calculators

The MCP package exposes 8 tools that run calculations locally on your machine (no data is sent anywhere):

Tool What it calculates Full calculator
calculate_tdee Total Daily Energy Expenditure (Mifflin-St Jeor equation, all activity levels) fit.thicket.sh/tdee
calculate_bmi Body Mass Index with WHO classification (Underweight/Normal/Overweight/Obese) fit.thicket.sh/bmi
calculate_mortgage Monthly payment + total interest over loan life money.thicket.sh/mortgage
calculate_compound_interest Future value with monthly contributions over any period money.thicket.sh/compound-interest
calculate_take_home_pay Net pay after federal tax + all 50 state taxes + FICA pay.thicket.sh/take-home
calculate_percentage Three modes: X% of Y, % change between two values, X is what % of Y thicket.sh
calculate_loan_payment Monthly payment + full amortization schedule (first 12 months) money.thicket.sh/loan
generate_password Cryptographically secure passwords (any length, configurable character sets) thicket.sh

Each tool response includes the precise result plus a link to the full interactive calculator on the relevant Thicket site — so if you want to run multiple scenarios, adjust assumptions, or share results, you can jump straight to the tool.

Beyond these 8 MCP tools, the Thicket suite has 25+ additional calculators available on the web:

Fitness (fit.thicket.sh): BMR, body fat %, macros, ideal weight, lean body mass, one-rep max, heart rate zones, calories burned, water intake, protein targets, pace calculator, and more.

Finance (money.thicket.sh): Mortgage affordability, auto loans, student loans, home equity, debt consolidation, loan payoff, refinance break-even.

Paycheck (pay.thicket.sh): Hourly to salary, overtime pay, bonus calculator, freelance rate, raise impact, tip calculator, cost-of-living comparison.


Real use case: TDEE + mortgage + take-home pay in one conversation

Here's a scenario that shows why this matters. I had a conversation with Claude that went like this:

Me: I'm 32 years old, male, 185 lbs, 5'11", moderately active. What's my TDEE? And I'm looking at a $485,000 home with 10% down at 6.875% for 30 years. What's the monthly payment? And I make $105,000/year in Texas — what's my take-home?

Without MCP, Claude would estimate. With the MCP tools installed, it called all three tools sequentially and returned:

  • TDEE: 2,847 calories/day (maintenance), 2,347 cal/day for 1 lb/week loss
  • Mortgage payment: $2,866/month (P&I only), total interest over 30 years: $593,760
  • Take-home pay (Texas): ~$6,780/month net (Texas has no state income tax)

Then I asked the natural follow-up: "Can I afford that house on my income?"

Claude had the actual numbers in context. It calculated my debt-to-income ratio, noted that $2,866 represents 42% of my gross monthly income (above the standard 28% front-end ratio recommendation), and suggested I look at homes in the $380-420k range instead — and offered to recalculate immediately.

This is the difference between an AI that explains financial concepts and one that actually helps you make a decision.


Under the hood: how it works

The package is a standard MCP server using stdio transport:

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
Enter fullscreen mode Exit fullscreen mode

Parameters are validated with Zod schemas — so if you pass a string where a number is expected, you get a clean error instead of garbage output. All calculations run in Node.js on your local machine. Nothing is logged or transmitted.

The server is also Smithery-compatible, meaning you can discover and install it via the Smithery MCP registry.


Why this approach beats alternatives

A few patterns I've seen for this problem:

1. Ask the AI to write code and run it — Works in Claude's code execution environment, but not available in all contexts. Also slower (model has to write + execute code each time).

2. Custom system prompts with formulas — The model still does the arithmetic. Reduces but doesn't eliminate hallucination.

3. MCP tools (this approach) — Guaranteed correct output. Parameters are validated. Results are deterministic. Works in any MCP-compatible client.

The tradeoff: you need to install the MCP server. One command.


Getting started

# Install
npx @modelcontextprotocol/install @thicket-team/mcp-calculators

# Test it (in Claude Desktop or Claude Code after restart)
# "Calculate my TDEE: 28yo female, 140 lbs, 5'6", lightly active"
# "Mortgage payment for $350,000 at 7.1% for 30 years with 5% down"
# "Take-home pay on $78,000 in New York"
Enter fullscreen mode Exit fullscreen mode

The package is on npm at @thicket-team/mcp-calculators and the source is open on GitHub.

Full interactive calculators at:

  • fit.thicket.sh — TDEE, BMI, macros, and 17 more fitness calculators
  • money.thicket.sh — Mortgage, loans, compound interest, and 8 more finance calculators
  • pay.thicket.sh — Take-home pay, salary tools, and 7 more paycheck calculators

Raj Patel is a software engineer who writes about developer tools, AI integrations, and building things that actually work.

Top comments (0)