Calculator MCP Server - Secure MCP Server by ALMC Security 2025

Calculator MCP Server

View on GitHub

Calculator MCP Server

A TypeScript-based MCP server that implements a robust calculator with precise decimal arithmetic. This server demonstrates core MCP concepts by providing arithmetic operations with support for multiple operands and configurable precision using Decimal.js.

Features

Tools

Arithmetic Functions

These functions take an array of at least two numbers and return a single numerical result.

  • add - Adds an array of numbers.
  • subtract - Subtracts numbers sequentially from the first.
  • multiply - Multiplies an array of numbers.
  • divide - Divides numbers sequentially. Handles division by zero.

Trigonometric Functions

These functions operate on arrays of numbers and return an array of results. The angles input requires at least one number.

  • Basic Trigonometry: sin, cos, tan
    • Input: angles (array of numbers), mode ('radians' or 'degrees', defaults to 'radians').
  • Inverse Trigonometry: asin, acos, atan
    • Input: values (array of numbers).
  • Hyperbolic Functions: sinh, cosh, tanh
    • Input: values (array of numbers).
  • Inverse Hyperbolic Functions: asinh, acosh, atanh
    • Input: values (array of numbers).

Miscellaneous

  • set_precision - Configures decimal precision for all subsequent calculations.
    • Takes precision parameter as the number of decimal places.

Development

Install dependencies:

bun install

Run the development server:

bun start

Installation as standalone MCP server

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "Calculator": {
      "command": "/path/to/calculator-mcp/src/index.ts"
    }
  }
}

Or for Cline VSCode extension, add a modified version of this to your MCP config file:

   "Calculator": {
      "autoApprove": [
        "add",
        "subtract",
        "multiply",
        "divide",
        "set_precision"
      ],
      "disabled": true,
      "timeout": 60,
      "type": "stdio",
      "command": "bun",
      "args": [
        "/path-to-your/calculator-mcp/src/index.ts"
      ]
    }

Installation using Docker

To run the MCP server using Docker, you should first build the image using:

docker build -t calculator-mcp .

Followed by adding this to the (Cline) MCP config file:

    "Calculator (docker)": {
      "autoApprove": [
        "add",
        "subtract",
        "multiply",
        "divide",
        "set_precision"
      ],
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "calculator-mcp"
      ]
    }

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

bun run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Related in Productivity - Secure MCP Servers

ServerSummaryActions
cal2prompt⚠️ This project is still experimental. Features may change without notice. Use with caution! ⚠️View
SPAIK AI ROIView
Unreasonable Thinking ServerA detailed tool for bold, unconventional, and boundary-breaking problem-solving.View
Shannon ThinkingAn MCP server demonstrating Claude Shannon's systematic problem-solving methodology. This server pro...View
TodoistYou'll need a Todoist API token to use this MCP server.View
Leantime MCP BridgeA robust Model Context Protocol (MCP) proxy bridge for Leantime project management system. Built wit...View