Arithmuse
README.md
# Arithmuse
Arithmuse is a minimal Python MCP server that provides basic calculator tools:
- `add`
- `subtract`
- `multiply`
- `divide`
## Requirements
- Python 3.10+
## Install
```bash
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
```
## Run locally
```bash
python -m arithmuse.server
```
By default, this starts Streamable HTTP transport on `0.0.0.0:$PORT` (or port `8000`) with MCP endpoint at `/mcp`.
To run with stdio transport instead:
```bash
MCP_TRANSPORT=stdio python -m arithmuse.server
```
## Dedalus deployment notes
- Dedalus entrypoint:
- `python main.py`
- This server uses `dedalus_mcp` and serves `/mcp` via `server.serve()`.
- Optional env var:
- `DEDALUS_SERVER_NAME` (default: `calculator-mcp`; should match your Dedalus slug)
- Keep the service stateless; no persistent filesystem assumptions are required.
- Ensure your Dedalus runtime installs project dependencies from `pyproject.toml`.
- Health check expectation: process starts successfully, remains running, and responds on `/mcp`.
- This repo keeps the `arithmuse` package at project root so imports work even if the platform does not `pip install .` first.
## Available tools
- `add(a, b)` -> `a + b`
- `subtract(a, b)` -> `a - b`
- `multiply(a, b)` -> `a * b`
- `divide(a, b)` -> `a / b` (returns an error for divide-by-zero)
## Test
```bash
pytest -q
```