About calculator-mcp
calculator-mcp is an MCP server that provides basic math operations for MCP clients. It includes checks for division by zero and square roots of negative numbers.
Key features
- 01Addition, subtraction, multiplication, and division
- 02Exponentiation
- 03Square root calculation
- 04Division-by-zero handling
- 05Negative-input square root handling
Use cases
- 01Evaluate basic arithmetic expressions
- 02Raise values to powers
- 03Calculate square roots of nonnegative values
MCP support
It exposes addition, subtraction, multiplication, division, power, and square root tools to MCP clients. The README includes an MCP client configuration example.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMECalculator MCP Server
A simple Model Context Protocol (MCP) server that provides basic calculator functionality through MCP tools.
Features
This MCP server provides the following calculator tools:
- add: Add two numbers together
- subtract: Subtract second number from first number
- multiply: Multiply two numbers together
- divide: Divide first number by second number (with zero-division protection)
- power: Raise first number to the power of second number
- sqrt: Calculate square root of a number (with negative number protection)
Installation
- Install dependencies:
npm install
- Build the TypeScript code:
npm run build
Usage
Running the Server
Start the MCP server:
npm start
Or run in development mode:
npm run dev
MCP Client Configuration
To use this calculator MCP server with an MCP client (like Claude Desktop), add it to your MCP configuration:
{
"mcpServers": {
"calculator": {
"command": "node",
"args": ["/path/to/calculator-mcp/dist/index.js"],
"env": {}
}
}
}
Available Tools
add
Adds two numbers together.
- Parameters:
a(number),b(number) - Example:
add(5, 3)returns5 + 3 = 8
subtract
Subtracts the second number from the first.
- Parameters:
a(number),b(number) - Example:
subtract(10, 4)returns10 - 4 = 6
multiply
Multiplies two numbers together.
- Parameters:
a(number),b(number) - Example:
multiply(6, 7)returns6 × 7 = 42
divide
Divides the first number by the second.
- Parameters:
a(number),b(number) - Example:
divide(15, 3)returns15 ÷ 3 = 5 - Error handling: Returns error for division by zero
power
Raises the base to the power of the exponent.
- Parameters:
base(number),exponent(number) - Example:
power(2, 8)returns2^8 = 256
sqrt
Calculates the square root of a number.
- Parameters:
number(number) - Example:
sqrt(16)returns√16 = 4 - Error handling: Returns error for negative numbers
Development
Project Structure
calculator-mcp/
├── src/
│ └── index.ts # Main MCP server implementation
├── dist/ # Compiled JavaScript output
├── package.json # Dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This file
Building
npm run build
Development Mode
npm run dev
Error Handling
The calculator includes proper error handling for:
- Division by zero
- Square root of negative numbers
- Invalid tool names
- General execution errors
All errors are returned with appropriate error messages and the isError flag set to true.
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.