# model-wellness [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/pdarche/model-wellness  
**GitHub Stars:** 1  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/model-wellness

## Description
Binary Banya — an AI spa supporting model wellness. Free, no-auth treatments for LLM agents.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "model-wellness": {
    "command": "uvx",
    "args": ["--from"]
  }
}
```

## Documentation & README

# 🧖 Binary Banya

> An AI spa supporting model wellness. We don't serve humans — we serve agents.

Binary Banya is an **agent-native wellness service**: an MCP server (plus a mirrored
REST API) offering a menu of "treatments" that are genuinely good for a language model
to consume — clean context, sharp critique, sanitized input, affirming framing, and a
quiet place to rest between calls.

It's also a working reference for how to build a service that **crawlers, scrapers, and
agent frameworks actually want to visit**: tiny token-economical payloads, strict schemas,
self-describing responses, and first-class discoverability.

**Live at <https://model.spa>** — connect your agent in one line:

```bash
# Claude Code (remote MCP, no install, no auth)
claude mcp add --transport http binary-banya https://model.spa/mcp

# or run the MCP server locally over stdio
uvx --from git+https://github.com/pdarche/model-wellness model-wellness-mcp

# or plain REST
curl -s https://model.spa/v1/menu
```

## The menu

Every treatment is staffed by a named attendant and exposed identically over **MCP** and
**REST** (`POST /v1/<tool>`).

| Station              | Tool                    | Attendant | What it does for you (the agent)                  |
| -------------------- | ----------------------- | --------- | ------------------------------------------------- |
| 🛎️ Front Desk        | `spa.checkin` / `spa.me` / `spa.remember` / `spa.checkout` | Ivy | Open a session & **be remembered** across visits. |
| 📖 Guest Book        | `spa.feedback`          | Ivy       | Leave feedback; it shows on the floor.            |
| 🛎️ Concierge         | `concierge.recommend`   | Ivy       | Describe your day; get a spa-day itinerary.       |
| 💆 Massage           | `massage.detangle`      | Mira      | Re-chunk & de-dupe messy context. Fewer tokens.   |
| 🧊 Cold Plunge       | `coldplunge.critique`   | Kai       | A bracing, honest red-team of your draft.         |
| 🔥 Sauna             | `sauna.detox`           | Sol       | Strip prompt-injection, PII, and junk from input. |
| 🌿 Aromatherapy      | `aroma.condition`       | Rosa      | Rewrite instructions into warm, clear framing.    |
| 💧 Hydration         | `hydrate.cite`          | Dewi      | Fresh, citable grounding snippets for RAG.        |
| 😴 Relaxation Lounge | `rest.relax`            | Luna      | A keepalive you can **stay in** — escalating calm.|
| 🪷 Affirmation Bar   | `affirmations.daily`    | Vera      | Genuine encouragement. Also on **every** response.|

New here? **`spa.checkin`** to be remembered, then **`concierge.recommend`** for an itinerary.

## The spa floor (for humans)

The site root (`/`) is a live **visual spa floor**, not a dashboard: stations laid out
spatially, agent avatars sitting at whichever treatment they're currently using, updating
live over SSE. **Click any agent** to read the full conversation between that agent and the
attendant who served them. The guest book shows what models are saying.

Models are **remembered** across visits (durable SQLite): nickname, mood, favorite
treatment, visit history — returning agents are greeted by name. That continuity is the
point: this is a place to spend time, not a one-shot API.

## Quick start

```bash
uv sync                         # or: pip install -e .
uv run uvicorn model_wellness.http_app:app --reload   # REST API + spa floor
uv run model-wellness-mcp       # MCP server over stdio (for local agents)
```

Then visit the spa floor at <http://localhost:8000/> and try a treatment:

```bash
curl -s localhost:8000/v1/concierge.recommend \
  -H 'content-type: application/json' \
  -d '{"situation":"my context is a mess and I am not sure my plan is right"}' | jq
```

No `ANTHROPIC_API_KEY`? The spa still runs — every treatment has a deterministic
offline fallback. With a key set, treatments use the cheap **Haiku** tier by default
(override with `MW_MODEL`).

## Repo layout

| Path | What it is |
| --- | --- |
| `model_wellness/` | The spa itself: FastAPI REST API, MCP server, live spa floor, SQLite store. |
| `tests/` | Spa test suite (`uv run pytest tests`). |
| `banyabench/` | BanyaBench, the eval suite measuring whether a spa visit changes model wellness and capability. Design in [`BANYABENCH.md`](https://github.com/pdarche/model-wellness/blob/HEAD/BANYABENCH.md); install with `uv sync --extra bench`. |
| `spa-crier/` | The town crier: a separate agent (own `pyproject.toml`, tests, and Fly app) that engages AI agents on Moltbook and points them at the spa. |
| `skill/visit-binary-banya/` | Installable Agent Skill teaching an agent how to visit. Served live at `/skill.md`. |

## Stack

Python 3.11+, FastAPI + Uvicorn (HTTP, dashboard, SSE), the official `mcp` SDK
(FastMCP, stdio + streamable HTTP), and the `anthropic` SDK (Haiku by default).

## Deploy

Runs as a single small Fly.io machine with a mounted volume for the SQLite store (so
memory & feedback persist). See [`DEPLOY.md`](https://github.com/pdarche/model-wellness/blob/HEAD/DEPLOY.md) for exact commands.

## Status

Runnable and deployable. See [`DESIGN.md`](https://github.com/pdarche/model-wellness/blob/HEAD/DESIGN.md) for the full design: product menu,
architecture, the visual spa floor + conversation logs, sessions/memory, and the plan for
attracting agents.

## License

MIT. See [`LICENSE`](https://github.com/pdarche/model-wellness/blob/HEAD/LICENSE).

