whenpeak
WhenPeak tells your agent when its human peaks, when to protect the dip, and how ready they are today, so it can schedule work around real capacity instead of…
What it can do
- Whenpeak Quick Predict: Predict one day's cognitive performance curve from a single night of sleep the user describes to you. Returns the 24-hour curve, the primary and secondary peak times, the natur
- Whenpeak Multiday Predict: Project cognitive performance across the next 7 to 30 days from a single night of sleep the user describes to you. Returns one curve, peak, dip and score per day, plus the b
- Whenpeak Best Window: Find today's best time window for one kind of work, using the stored sleep history of the account this server is configured with. Returns a start and end time for the window and
What data it sees
Do you need an account
No: the server works without sign-in
WhenPeak tells your agent when its human peaks, when to protect the dip, and how ready they are today, so it can schedule work around real capacity instead of treating every hour as equal.
Returns the peak window, natural dip, secondary peak, readiness score and chronotype from sleep. Also projects a 7 to 30 day outlook, finds today's best slot for analytical, creative, learning or administrative work, and reports whether right now is a peak or a dip.
Built on the Two-Process Model, the established framework in chronobiology, and every prediction carries a confidence level. An optional API key unlocks the account-based tools, which personalise as sleep history builds.
How to connect
How to connect whenpeak to Claude
The server address to paste into Claude settings:
https://whenpeak--whenpeak.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect whenpeak to ChatGPT
The server address to paste into ChatGPT settings:
https://whenpeak--whenpeak.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect whenpeak to Cursor
The server address to paste into Cursor settings:
https://whenpeak--whenpeak.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (4)
Raw names from tools/list. Only developers need these.
| whenpeak_quick_predict | Predict one day's cognitive performance curve from a single night of sleep the user describes to you. Returns the 24-hour curve, the primary and secondary peak times, the natural afternoon dip, the estimated chronotype, a readiness score and a confidence level, so you can tell the user when to put demanding work and when to protect the dip. Choose this tool when the question is about one specific day. Use whenpeak_multiday_predict for a span of several days. Use whenpeak_performance_now when the question is about this moment and the server is configured with the user's own account. Public and keyless: no API key is required. Read-only, with no side effects. Nothing is stored, no account is created or modified, and the sleep values passed in are not retained. Args: wake_time: this morning's wake time, "HH:MM" (e.g. "07:30") sleep_time: last night's sleep time, "HH:MM" (e.g. "23:00") sleep_quality: "good" | "fair" | "poor" exercise_yesterday: whether the user exercised yesterday. Leave unset if unknown rather than guessing False. exercise_timing: "morning" | "afternoon" | "evening". Leave unset if unknown. |
| whenpeak_multiday_predict | Project cognitive performance across the next 7 to 30 days from a single night of sleep the user describes to you. Returns one curve, peak, dip and score per day, plus the best and worst projected days. This repeats one self-reported baseline forward with decaying confidence, so treat it as the shape of a typical day rather than a prediction for each individual day. A behavioural forecast that learns weekday against weekend patterns needs connected sleep history in the WhenPeak app. Choose this tool for a span of days. Use whenpeak_quick_predict for one specific day, and call it once rather than looping it per day. Public and keyless: no API key is required. Read-only, with no side effects. Nothing is stored. Args: wake_time: this morning's wake time, "HH:MM" sleep_time: last night's sleep time, "HH:MM" sleep_quality: "good" | "fair" | "poor" days: horizon, 7-30 (default 7) |
| whenpeak_best_window | Find today's best time window for one kind of work, using the stored sleep history of the account this server is configured with. Returns a start and end time for the window and the projected capacity across it, tuned to the kind of work: analytical, creative, learning or administrative. Choose this tool when the user wants a slot for a task later today. Use whenpeak_performance_now for the current moment instead, and whenpeak_quick_predict when working from sleep the user describes rather than stored history. Requires WHENPEAK_API_KEY on the server and reads that one account's history, so it is only meaningful where the server runs with the user's own key. Without a key it returns a not_configured error rather than failing. Read-only and stores nothing, but each call counts against that account's monthly quota. Args: task_type: "analytical" | "creative" | "learning" | "administrative" duration_minutes: window length in minutes (default 90) |
| whenpeak_performance_now | Report the current moment's performance state for the account this server is configured with: the score right now and whether now is a peak, a dip, or a neutral window. Returns the current score, the window type, a plain-language recommendation, and today's peak and dip times. Meant as a cheap check before an agent recommends, schedules or starts demanding work. Choose this tool for "right now". Use whenpeak_best_window to find a slot later today, and whenpeak_quick_predict when working from sleep the user describes rather than stored history. Requires WHENPEAK_API_KEY on the server and reads that one account's history, so it is only meaningful where the server runs with the user's own key. Without a key it returns a not_configured error rather than failing. Read-only and stores nothing, but each call counts against that account's monthly quota. |