Calculator MCP Server
Calculator MCP Server (Python)
A feature-rich Model Context Protocol (MCP) server for mathematical calculations, scientific functions, unit conversions, financial metrics, and statistical analysis.
Built with Python 3.10+, the official mcp SDK (FastMCP), and sympy. Supports both stdio (Claude Desktop) and sse (Claude Web / Remote HTTP Connectors) transport modes.
🚀 Features & Exposed Tools
evaluate_math_expression: Evaluates custom mathematical expressions safely using SymPy (e.g.2 * (3 + 4),sqrt(144) + sin(pi / 2),log(100, 10),5^3).perform_arithmetic: Basic arithmetic (add,subtract,multiply,divide) on arrays of numbers.scientific_calculation: Powers, roots (sqrt,cbrt), factorials, logarithms (log,ln), and trigonometric functions (sin,cos,tan).convert_unit: Physical unit conversions (Length, Mass/Weight, Temperature, Volume, Time).financial_calculator: Simple interest, Compound interest, Loan EMI calculations, and Percentages.calculate_statistics: Summary statistics (mean,median,mode,variance,stdev,summary).
📦 Installation & Setup
Install Dependencies:
pip install -r requirements.txt pip install -e .Run Automated Unit Tests:
pytest
💻 1. Connecting to Claude Desktop (Stdio Mode)
Your claude_desktop_config.json has been automatically created at:
C:\Users\ADMIN\AppData\Roaming\Claude\claude_desktop_config.json
{
"mcpServers": {
"calculator": {
"command": "C:\\Users\\ADMIN\\AppData\\Local\\Programs\\Python\\Python312\\python.exe",
"args": [
"-m",
"calculator_mcp.server"
],
"env": {
"PYTHONPATH": "E:/mcp tutorials"
}
}
}
}Usage in Claude Desktop:
Fully exit and restart Claude Desktop.
Open a chat and look for the 🔨 (hammer/tools icon) at the bottom right of the message bar.
Ask Claude: "What is sqrt(144) + sin(pi / 2)?" or "Convert 100 degC to degF".
🌐 2. Connecting to Claude Web & Remote Web Clients (SSE HTTP Mode)
To run the Calculator MCP as a web HTTP service (for web-based platforms, web connectors, or remote AI agents):
Start the SSE Web Server:
python -m calculator_mcp.server --transport sse --port 8000Web Client Configuration:
{ "mcpServers": { "calculator-web": { "serverUrl": "http://localhost:8000/sse" } } }Public Tunneling for Remote Web Apps (Optional): If your web client (like remote Claude Web) is hosted outside your local network, expose port 8000 using
ngrokorlocaltunnel:npx localtunnel --port 8000 # Or using ngrok: ngrok http 8000Then use the generated public HTTPS URL:
https://<your-subdomain>.loca.lt/ssein your Web MCP connector configuration.
🔍 Interactive Testing via Web Interface (MCP Inspector)
You can launch the official Model Context Protocol interactive Web Inspector UI to visually test all tools in your browser:
mcp dev calculator_mcp/server.pyOr via Node:
npx @modelcontextprotocol/inspector@0.4.1 python -m calculator_mcp.serverLatest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Michaelndegwa1/mcp-tutorials'
If you have feedback or need assistance with the MCP directory API, please join our Discord server