Metadata-Version: 2.4
Name: tempo-mcp
Version: 0.2.0
Summary: Tempo — the founder-vitals MCP connector that joins human capacity to business load.
Project-URL: Homepage, https://temposolo.app
Project-URL: Issues, https://github.com/tsutera09/tempo-mcp/issues
Project-URL: Source, https://github.com/tsutera09/tempo-mcp
Author: Tempo Labs
License: MIT
Keywords: burnout,business,claude,mcp,solopreneur,wellbeing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Office/Business
Requires-Python: >=3.10
Requires-Dist: mcp>=1.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7; extra == 'dev'
Description-Content-Type: text/markdown

# Tempo MCP

<!-- mcp-name: io.github.tsutera09/tempo -->

**The founder-vitals connector for solo operators.** Tempo is the first MCP server that joins *human capacity* (sleep, mood, stress, energy) to *business load* (meetings, revenue, deal flow) and exposes them to Claude as one signal.

For a solopreneur, the founder is the single point of failure. Every other tool treats the business and the human as separate things. Tempo fuses them, so Claude can make business decisions — decline meetings, reprice services, prescribe rest days — based on the founder's real-time state.

## What makes this novel

Tempo invents a single KPI that no other tool can compute on its own:

**Revenue per Recovery Hour (RpRH)** — revenue generated divided by hours of true recovery. Falling RpRH means you're working harder for less, and it's the earliest quantitative signal of founder burnout.

## Install

```bash
pip install tempo-mcp
```

Requires Python 3.10+ and works with both `mcp` 1.x and 2.x.

## Register with Claude Desktop / Cowork / Claude Code

`~/.claude/settings.json` (or equivalent):

```json
{
  "mcpServers": {
    "tempo": {
      "command": "python",
      "args": ["-m", "tempo_mcp"]
    }
  }
}
```

## Tools exposed over MCP

| Tool | Purpose |
|------|---------|
| `log_checkin` | Log mood / energy / stress / sleep |
| `ingest_revenue_event` | Record revenue (from Stripe connector or manual) |
| `ingest_calendar_event` | Record a calendar block (internal, sales, deep work) |
| `tempo_score` | Compute the composite Tempo score + RpRH |
| `recommend_actions` | Prescriptive business moves based on current state |
| `apply_action` | Log (or, on Pro, execute) an action |
| `get_history` | Full time-series history over N days — for trend analysis |
| `weekly_digest` | Narrative week-over-week summary Claude can read aloud |
| `license_status` | Show the active plan and what it unlocks |
| `activate_license` | Activate a Pro / Team Solo key |
| `export_data` | Export the whole local dataset as JSON or CSV (Pro) |

## Plans

Tempo is free forever for the core loop. Paid tiers exist because the
expensive parts — long history, connector ingest, executing actions —
are the parts that need maintaining.

| | Free | Pro — $39/mo | Team Solo — $79/mo |
|---|---|---|---|
| Daily check-ins, Tempo score, RpRH | ✅ | ✅ | ✅ |
| Manual revenue / calendar logging | ✅ | ✅ | ✅ |
| History window | 7 days | unlimited | unlimited |
| Week-over-week digest | — | ✅ | ✅ |
| Connector ingest (Stripe, calendar, wearable) | — | ✅ | ✅ |
| Executed actions | log only | 3 / day | unlimited |
| Data export (JSON / CSV) | — | ✅ | ✅ |
| Seats | 1 | 1 | 5 |

Subscribe at [temposolo.app](https://temposolo.app/#pricing), then paste
the key from your welcome email:

```
activate_license with key tempo_v1....
```

Or set it yourself — `TEMPO_LICENSE_KEY` in the environment, or one line
in `~/.tempo/license`.

Licence keys are Ed25519-signed and verified **offline** against a public
key baked into the package. There is no licence server, no activation
call, and no telemetry: Tempo works on a plane and cannot tell us when
you use it. An expired or missing key quietly drops you to the free tier
rather than locking you out of your own data.

## Example conversation with Claude

> **You**: "I slept 5 hours, energy's at 3/10, stress 8. Log it and tell me what to do about tomorrow."
>
> **Claude** (using Tempo): *logs checkin → pulls score → RpRH down 22% → 4 external calls booked tomorrow → recommends auto-decline of 2 discovery calls and a rest day.*

## Data stays local

Tempo stores everything in `~/.tempo/tempo.sqlite3`. Nothing leaves your machine unless you enable the Pro cloud sync.

## Develop

```bash
git clone https://github.com/tsutera09/tempo-mcp
cd tempo-mcp
pip install -e '.[dev]'
pytest
python -m tempo_mcp   # runs the MCP server on stdio
```

## Publishing

See `PUBLISH.md` at the repo root for the ordered release checklist (PyPI, npm mirror, MCP registry).

## License

MIT
