Skip to main content
Glama
Sathiya-Moorthi

Calculator MCP Server

Calculator MCP Server

Python 3.10+ MCP License: MIT

A simple calculator MCP (Model Context Protocol) server that exposes arithmetic operations as tools for AI assistants like Claude.

What is MCP?

Model Context Protocol (MCP) is an open protocol that enables AI assistants to interact with external tools and data sources. This server demonstrates how to build MCP tools using Python.

Features

Tool

Description

Example

add

Add two numbers

add(5, 3)8

subtract

Subtract numbers

subtract(10, 4)6

multiply

Multiply numbers

multiply(6, 7)42

divide

Divide with zero-check

divide(15, 3)5.0

power

Exponentiation

power(2, 3)8.0

modulo

Remainder operation

modulo(17, 5)2

square_root

Square root

square_root(16)4.0

absolute

Absolute value

absolute(-5)5

percentage

Calculate percentage

percentage(200, 15)30.0

Installation

Prerequisites

  • Python 3.10 or higher

  • pip package manager

Install from source

git clone https://github.com/Sathiya-Moorthi/MCP.git cd calculator-mcp pip install -e .

Install dependencies only

pip install mcp

Usage

With Claude Desktop

Add to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "calculator": { "command": "python", "args": ["/path/to/calculator-mcp/calculator_server.py"] } } }

Restart Claude Desktop, then ask Claude to perform calculations!

With Cursor IDE

Add to your Cursor MCP configuration (~/.cursor/mcp.json):

{ "mcpServers": { "calculator": { "command": "python", "args": ["/path/to/calculator-mcp/calculator_server.py"] } } }

Standalone Testing

python calculator_server.py

The server communicates via stdio (standard input/output) using the MCP protocol.

Development

Setup development environment

# Clone the repository git clone https://github.com/Sathiya-Moorthi/MCP.git cd calculator-mcp # Create virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install dependencies pip install -e ".[dev]"

Run tests

pytest

Project Structure

calculator-mcp/ ├── calculator_server.py # Main MCP server implementation ├── pyproject.toml # Project configuration ├── tests/ │ └── test_calculator.py # Unit tests ├── .github/ │ └── workflows/ │ └── ci.yml # GitHub Actions CI ├── README.md ├── LICENSE └── .gitignore

How It Works

This server uses FastMCP, a high-level API from the official MCP Python SDK:

from mcp.server.fastmcp import FastMCP mcp = FastMCP(name="calculator") @mcp.tool() def add(a: float, b: float) -> float: """Add two numbers together.""" return a + b if __name__ == "__main__": mcp.run()

Key concepts:

  • @mcp.tool() - Registers functions as MCP tools

  • Type hints - Define parameter types for validation

  • Docstrings - Become tool descriptions visible to AI

  • mcp.run() - Starts the server with stdio transport

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Sathiya-Moorthi/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server