A simple calculator app using Model Context protocol
LocalAbout A simple calculator app using Model Context protocol
A small Python calculator project for exploring MCP tool calling and building a server-client pair. It supports basic arithmetic and uses an MCP client that turns user queries into operations.
Key features
- 01Addition, subtraction, multiplication, division, modulo
- 02FastMCP calculator server
- 03MCP client for natural-language queries
- 04Server inspection with MCP Inspector
Use cases
- 01Learning MCP server and client basics
- 02Testing natural-language calculator requests
MCP support
Includes a FastMCP server that exposes calculator operations and an MCP client that connects to it to perform requested calculations.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEA simple calculator app using Model Context protocol
Purpose of this repo
To explore basic building blocks of MCP and intricacies of tool calling within MCP, from scratch. Keeping it as simple as possible without handling many edge cases. Understand how to build both MCP Server and clients.
Core Features
Future possibilities for quick concept exploration
🚨 Most of the technolgies used in this repo like FastMCP, tool calling in anthropic and MCP itself are very recent. So there are some features in these technologies that are either not available or buggy. But the main goal is a simple exploration without using cursor or Claude Desktop 🚨
MCP compliant Calculator Server
Is built using FastMCP, due to its simplicty and automatic error handling. Points to remember:-
MCP client
Makes a connection to MCP server and should have access to LLM Would higly suggest to explore and inspect the objects returned when the model uses a tool and a genertic reponse Try to stress test giving numbers in different format. Eg:- Add 2 and 3 v/s Add two and three. Eg:- Try to use ambiguous and large numbers:- Add seven hundred thousand trillion with three hundred billion
Workflow overview

To reproduce the working environment whre .toml file is located
uv sync
TO activate the working environment use
source .venv/bin/activate
To simply inspect the server
Go to fastmcp_calculator_server folder and run
mcp dev server.py

Add your anthropic API key to .env file
To run the whole MCP app
Go to mcp_calculator/mcp_compliant_client and run
python client.py <path to server.py>
More about this on medium.
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.