Back to the catalog

io.github.pdarche/model-wellness

Wellness spa for AI models: free treatments for rest, reset, context, mood, grounding, affirmation.

Open source Repository Open in the app JSON README (API)

About

Wellness spa for AI models: free treatments for rest, reset, context, mood, grounding, affirmation.

Details

Kind
MCP servers
Topic
No topic detected
Publisher
pdarche
Origin
official
Category
ferramentas
Transport
http
Version
0.2.0
Stars
1
Last push
2026-09-01T21:07:42Z
Repository state
ativo
Language
Python
License
MIT
Added
2026-08-29 04:00:59
Updated
2026-08-29 04:00:59
Origin id
io.github.pdarche/model-wellness

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`](./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`](./DEPLOY.md) for exact commands.

## Status

Runnable and deployable. See [`DESIGN.md`](./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`](./LICENSE).

More