# MCPCalc — MCP Server **300+ calculators for AI agents via the Model Context Protocol.** MCPCalc is a hosted MCP server that gives AI agents (Claude, ChatGPT, and others) access to a comprehensive library of calculators spanning finance, math, health, construction, engineering, food, automotive, and more — including a full Computer Algebra System (CAS) and a grid-based Spreadsheet calculator. 🌐 **Website:** [mcpcalc.com](https://mcpcalc.com) 📡 **MCP Endpoint:** `https://mcpcalc.com/api/v1/mcp` --- ## What is this? MCPCalc is a **remote MCP server**. There is nothing to install — AI agents connect directly to the hosted endpoint. This repository contains the registry metadata and documentation for the server. ## Connecting ### Claude.ai MCPCalc is available as a connector in Claude.ai. Search for "MCPCalc" in the MCP integrations menu. ### Claude Desktop / Cursor / Other MCP Clients Add the following to your MCP client configuration: ```json { "mcpServers": { "mcpcalc": { "url": "https://mcpcalc.com/api/v1/mcp" } } } ``` No API key or authentication is required. **Agent usage guide:** [mcpcalc.com/api/v1/mcp/guide](https://mcpcalc.com/api/v1/mcp/guide) — includes examples and strict mode guidance. --- ## Available Tools MCPCalc exposes the following tools to connected AI agents: ### `list_calculators` List all available calculators, optionally filtered by category. **Parameters:** - `category` (optional) — Filter by category: `finance`, `math`, `health`, `construction`, `engineering`, `food`, `automotive`, `home`, `business`, `education`, `environment`, `pets`, `games`, `travel`, `date` ### `get_calculator_schema` Get the input schema for a specific calculator. **Parameters:** - `calculator` (required) — Calculator slug (e.g., `mortgage_payment`, `bmi`, `cas`) ### `calculate` Run a calculation and get results. **Parameters:** - `calculator` (required) — Calculator slug - `inputs` (required) — Calculator input values as key-value pairs - `strict` (optional) — If true, reject invalid or unknown input fields ### `generate_prefilled_url` Generate a prefilled URL for a calculator without running the calculation. Useful for sharing. **Parameters:** - `calculator` (required) — Calculator slug - `inputs` (required) — Input values for URL prefill ### `create_session` Create a new interactive session for any calculator. Returns a shareable session URL. **Parameters:** - `calculator` (required) — Calculator slug - `metadata` (optional) — Session metadata ### `get_session_state` Retrieve current field values, computation transcript, and pending messages for an active session. **Parameters:** - `session_id` (required) — Session UUID ### `push_session_action` Push actions into a session's message queue — set fields, submit computations, trigger plots, and more. **Parameters:** - `session_id` (required) — Session UUID - `actions` (required) — Array of action objects. Action types include: - `submit_expression` — Evaluate a math expression (CAS) - `set_fields` — Set form calculator field values - `plot` — Plot a function - `assign_variable` — Set a variable - `insert_markdown` — Insert commentary - `clear_transcript` — Clear history - `set_mode` — Switch between `symbolic` and `numeric` modes - `set_cells` — Set cell values by A1 references (Spreadsheet) - `get_cells` — Read cell values from A1 ranges (Spreadsheet) - `clear_cells` — Clear cell values in A1 ranges (Spreadsheet) - `load_csv` — Load CSV/TSV data into the grid (Spreadsheet) - `export_csv` — Export a range as CSV (Spreadsheet) - `set_column_format` — Set display formats by column letter (Spreadsheet) ### `close_session` Close a session and optionally persist a snapshot of its final state. **Parameters:** - `session_id` (required) — Session UUID --- ## Calculator Categories | Category | Count | Examples | |---|---|---| | **Finance** | 55+ | Mortgage, compound interest, 401(k), tax estimators, NPV, IRR, FIRE | | **Math** | 60+ | Fractions, statistics, geometry, physics, chemistry, CAS, Spreadsheet | | **Health** | 25+ | BMI, BMR, TDEE, macros, pace calculator, heart rate zones | | **Construction** | 35+ | Concrete, lumber, drywall, electrical, plumbing, HVAC | | **Home & Garden** | 20+ | Lawn, mulch, paint, lighting, solar savings | | **Food & Drink** | 25+ | Recipe scaler, sourdough, cocktail scaler, macro calculator | | **Engineering** | 12 | Gear ratio, torque, Reynolds number, stress/strain | | **Automotive** | 13 | Fuel economy, EV range, horsepower, lease vs buy | | **Business** | 12 | Freelance rate, SaaS metrics, A/B test, ROAS | | **Education** | 9 | GPA, grade needed, college cost | | **Environment** | 9 | Carbon footprint, solar ROI, water footprint | | **Date & Time** | 12 | Date difference, work days, Unix timestamp | | **Travel** | 11 | Tip calculator, currency converter, travel budget | | **Pets** | 7 | Dog/cat food, pet age, aquarium size | | **Games & Hobbies** | 11 | D&D dice, card odds, photography exposure | --- ## The CAS (Computer Algebra System) The `cas` calculator is a general-purpose computational math environment supporting: - **Symbolic algebra** — simplify, expand, factor expressions - **Calculus** — derivatives, integrals, limits, series - **Equation solving** — symbolic and numeric - **Interactive plotting** — function graphs with configurable ranges - **LaTeX input** — natural mathematical notation - **Variable assignment** — build up computations step by step - **Symbolic and numeric modes** — switch between exact and approximate results ### CAS Example via MCP ``` 1. create_session(calculator: "cas") 2. push_session_action(session_id: "...", actions: [ { type: "submit_expression", expression: "diff(x^3 * sin(x), x)" }, { type: "plot", expression: "x^3 * sin(x)", range: [-10, 10] } ]) 3. get_session_state(session_id: "...") → view results ``` --- ## The Spreadsheet Calculator The `spreadsheet` calculator is a grid-based computational environment (A–Z columns, 100 rows) supporting: - **Cell formulas** — standard spreadsheet expressions with cell references - **Range operations** — read, write, and clear cells by A1 notation - **CSV import/export** — load and export tabular data programmatically - **Column formatting** — set display formats per column - **Session-based** — full state accessible via `get_session_state` ### Spreadsheet Example via MCP ``` 1. create_session(calculator: "spreadsheet") 2. push_session_action(session_id: "...", actions: [ { type: "set_cells", cells: { "A1": "Item", "B1": "Price", "A2": "Widget", "B2": 9.99, "A3": "Gadget", "B3": 24.50 } }, { type: "set_cells", cells: { "A4": "Total", "B4": "=SUM(B2:B3)" } } ]) 3. get_session_state(session_id: "...") → read computed values 4. push_session_action(session_id: "...", actions: [ { type: "export_csv", range: "A1:B4" } ]) ``` --- ## Architecture MCPCalc is a fully hosted service. AI agents connect via the Streamable HTTP transport at `https://mcpcalc.com/api/v1/mcp`. No local installation, API keys, or environment variables are required. ``` AI Agent (Claude, ChatGPT, Cursor, Ollama, LM Studio, etc.) │ │ MCP over Streamable HTTP ▼ MCPCalc Server (https://mcpcalc.com/api/v1/mcp) │ ├── 300+ Form Calculators ├── CAS Engine (symbolic + numeric) └── Spreadsheet Engine (formulas, CSV, ranges) ``` --- ## Links - **Website:** [mcpcalc.com](https://mcpcalc.com) - **MCP Registry:** [registry.modelcontextprotocol.io](https://registry.modelcontextprotocol.io) --- ## License This repository contains registry metadata and documentation only. The MCPCalc service is proprietary software. See [mcpcalc.com](https://mcpcalc.com) for terms of use.