Skip to main content
Glama
wapred

MCP Math Tools

by wapred

MCP Math Tools (stdio)

This project demonstrates a complete Model Context Protocol (MCP) setup using:

  • MCP Server

  • MCP Client

  • stdio transport

  • Math calculation tools

Requirements

  • Python 3.10+

  • pip

Setup

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Run the Client
python client/math_client.py

Expected Output

Available tools: ['add', 'subtract', 'multiply', 'divide'] 10 + 5 = 15 6 * 7 = 42 20 / 4 = 5

Mental Model

Client (math_client.py) | | spawn process v Python server/math_server.py | | MCP initialize | | tools/list v Tool registry (add, subtract, multiply, divide) | | JSON-RPC response v Client prints tool metadata

How list_tools() actually works

tools_result = await session.list_tools()

This sends an MCP request:

{ "jsonrpc": "2.0", "id": 2, "method": "tools/list" }

On the server side

Your math_server.py probably has something like:

@mcp.tool() def add(a: float, b: float) -> float: """Add two numbers""" return a + b

When the server starts:

It registers all tools in an internal registry

Each tool has:

name

description

inputSchema

outputSchema

When it receives tools/list:

It serializes this registry

Sends it back to the client

-
security - not tested
F
license - not found
-
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/wapred/mcp-math-stdio'

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