Skip to main content
Glama
akshithambekar

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
```