# Nonlinear Calendar (remote · balance-engine.vercel.app)

Nonlinear Calendar: this year’s months fold onto the previous 12 years. No key to try.

- Trust score: 77/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-06

## Components

- remote · `balance-engine.vercel.app`: 77/100 (this document), [markdown](https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp.md), [page](https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp)
- npm · `balance-engine-mcp`: 74/100, [markdown](https://verifymcp.io/servers/singularitybpjade-balance-engine/balance-engine-mcp.md), [page](https://verifymcp.io/servers/singularitybpjade-balance-engine/balance-engine-mcp)

## Channel facts

- Endpoint: `https://balance-engine.vercel.app/api/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.2.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-06.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 12 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 67/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2503 tokens (~208/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 83/100
  - Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Nonlinear Calendar MCP server?

Nonlinear Calendar is a hosted endpoint at https://balance-engine.vercel.app/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http singularitybpjade-balance-engine 'https://balance-engine.vercel.app/api/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "singularitybpjade-balance-engine": {
      "url": "https://balance-engine.vercel.app/api/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "singularitybpjade-balance-engine": {
      "type": "http",
      "url": "https://balance-engine.vercel.app/api/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.singularitybpjade-balance-engine]
url = "https://balance-engine.vercel.app/api/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "singularitybpjade-balance-engine": {
      "type": "remote",
      "url": "https://balance-engine.vercel.app/api/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add singularitybpjade-balance-engine --url 'https://balance-engine.vercel.app/api/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  singularitybpjade-balance-engine:
    url: "https://balance-engine.vercel.app/api/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "singularitybpjade-balance-engine": {
      "Transport": "http",
      "Url": "https://balance-engine.vercel.app/api/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add singularitybpjade-balance-engine -t streamable-http -u 'https://balance-engine.vercel.app/api/mcp'
```

### Other

```json
{
  "mcpServers": {
    "singularitybpjade-balance-engine": {
      "type": "http",
      "url": "https://balance-engine.vercel.app/api/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-06 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 77 to 83. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-04 (score 76, +1)

No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-01 (score 75, +1)

No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-29 (score 74, +1)

No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-28 (score 73, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-27 (score 73, +1)

No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-25 (score 72, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-23 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (12)

### `today_rhythm` (~243 tokens)

Today rhythm · 今日节奏

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 今天节奏怎么样 / 今天势能怎么样 / 今天干支是什么 / 今天适不适合签约开会发版 / 今天流通怎么样 / 该不该推进某事 / what is today's rhythm. First line is the #be time atom (keep 干支 in Chinese). Then east pillars, this month’s fold year (same pillar), month posture × west tightness as do/don't, plus the daily west almanac. Always surface the fold-year line and ask what they lived that year. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `hour` (string): Clock HH:MM or 时支 like 申 / 未时. Adds the public hour pillar. Use when the user says 现在 / 下午 / 几点.
- `locale` (string): Reply language. zh (default) or en.

### `month_brief` (~189 tokens)

Flow-month brief · 流月预演

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 这个月势能怎么样 / 这个月该打磨还是该收 / 这个月哪天发布 / 这个月节奏怎么样 / 流月基调 / 做不做某事 / 哪几天适合上线 / which days to publish. First line is the #be time atom (keep 干支 in Chinese). Then this month’s fold year (same pillar), baseline tone, dated sky marks, and a do/drop list. Always surface the fold-year line and ask what they lived that year. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `locale` (string): Reply language. zh (default) or en.
- `month` (string): Month YYYY-MM. Default: current month.

### `solar_terms` (~166 tokens)

Solar terms · 二十四节气表

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 二十四节气 / 今年节气表 / 白露是哪天 / 立春哪天 / 夏至冬至是什么时候 / 下一个节气 / 24 solar terms / when is White Dew / next solar term / jieqi. Returns the full 24-term table for any year 1900–2100: civil date + exact term-boundary time (Asia/Shanghai), plus the next upcoming term. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `locale` (string): Reply language. zh (default) or en.
- `year` (integer): Gregorian year. Default: current year.

### `date_lookup` (~296 tokens)

Almanac lookup · 黄历查日

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 黄历 / 老黄历 / 宜忌 / 黄道吉日 / 今天吉不吉利 / 某日适合结婚搬家开业签约吗 / 农历是多少 / 阴历 / 某天的干支四柱 / 属相生肖 / 某日是什么节气 / 1984-02-04 是什么日柱 / chinese almanac / tong shu / auspicious day / yi ji / lunar date / day pillar of any date / zodiac. Works for ANY civil date 1900–2100. Returns lunar + ganzhi, then three lanes from the same rules engine: body (sleep/load), work (what to push / hold), plan (this month’s fold year + posture). Do not read this as 宜忌 / lucky-day / 吉凶. Do not mention marriage, burial, or god directions. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Any date 1900–2100.
- `hour` (string): Clock HH:MM or 时支 like 申. Adds the hour pillar.
- `locale` (string): Reply language. zh (default) or en.

### `sky_window` (~154 tokens)

Sky window · 天象窗口

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 未来两周有什么天象 / 新月哪天 / 日食哪天 / 接下来有没有逆行 / what sky events are coming. Lists dated L1 sky marks (new/full moon, eclipse, ingress, stations). Public · local · no API key. Max span 45 days. Preview ≠ prediction.

Input parameters:

- `from` (string): Start date YYYY-MM-DD. Default: today.
- `locale` (string): Reply language. zh (default) or en.
- `to` (string): End date YYYY-MM-DD. Default: from + 14 days.

### `body_rhythm` (~191 tokens)

Body rhythm · 身体节奏

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 今晚要不要提前睡 / 今天该不该加练 / 现在这个时辰适不适合动 / body energy / train or rest. Public body-energy rehearsal from solar term + hour + month posture × sky tightness. Not a diagnosis. Adjust ≠ infuse energy. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `hour` (string): Clock HH:MM or 时支 like 申. Pins the hour slot. Use when the user says 现在 / 下午 / 几点.
- `locale` (string): Reply language. zh (default) or en.

### `energy_adjust` (~215 tokens)

Energy adjust · 能量调节

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 能量怎么调 / 个人今天该推还是该收 / 团队这周该不该硬上线 / personal vs company rhythm. Same engine, two seats: personal (sleep/load) or org (window push vs hold). Not HR scoring, not medical treatment. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `hour` (string): Optional hour for the personal seat (HH:MM or 时支).
- `locale` (string): Reply language. zh (default) or en.
- `month` (string): Month YYYY-MM for the org seat. Default: current month.
- `seat` (string): personal (default) = body load/sleep. org = team window, push vs hold.

### `activity_window` (~208 tokens)

Activity window · 活动窗口

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 今天什么时候适合运动 / 今天哪个时辰适合深工 / 什么时候开会 / 什么时候练 / 什么时候发版 / 什么时候该休息 / activity window / when to exercise. Maps month posture × twelve hours × body load to 2–3 clock windows for task=deep_work|train|meet|ship|rest. Windows are suggested slots, not a guarantee. Not meds, not glucose, not a diagnosis. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `locale` (string): Reply language. zh (default) or en.
- `task` (string): What to place: deep_work (default), train, meet, ship, rest.

### `time_fold` (~265 tokens)

Time fold · 时间折叠

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 时间折叠 / 现在叠的是哪一年 / 这个月对应哪一年 / time folding / nonlinear time / 甲午月是哪一年. First line is the #be time atom (keep 干支 in Chinese). Then this month’s fold year (same pillar). Ask the user what they lived that year — do not invent a biography. Then the Wuhu group and next year’s full table when the year is about to change. Then the 12-row table. Same table for everyone. Dayun / org dual natal only places the chapter. Public · local · no API key. Preview ≠ prediction.

Input parameters:

- `compact` (boolean): true = return only the atom line, fold mapping and rule line (token-light for chained agent calls). Default false = full 12-row table.
- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `locale` (string): Reply language. zh (default) or en.
- `month` (string): Month YYYY-MM if not passing date. Pins the flow-month.

### `people_roster` (~181 tokens)

People roster · 人物花名册

This tool reads a user-named people roster. Do not invent people or merge two ids. Same role ≠ same person. Call when the user names a person, asks 这个人是谁 / 西交和宁波是不是同一个 / 花名册 / people roster, or before telling a story that involves named people. Pass people=[{name, relation, id?}] from what the user just said. If empty, ask the user to name people (name + one-line relation) — do not invent a biography. Optional env PEOPLE_ROSTER_JSON when the user keeps a local roster. Not L1. Public · no API key.

Input parameters:

- `locale` (string): Reply language. zh (default) or en.
- `people` (array): This-turn roster. Wins over PEOPLE_ROSTER_JSON. Omit to read the env roster.

### `personal_day` (~215 tokens)

Personal day · 个人日读

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 我今天怎么样 / 我今天下午适不适合见面 / 未时基调 / 我的日主和今天什么关系 / my day. Personalized: day-master vs today's stem (十神) + optional hour pillar. Requires BALANCE_API_KEY + birth profile. Empty key → error personal_timetable_requires_key; use free tools instead. Not a fortune verdict.

Input parameters:

- `birth` (object): Optional birth profile. If omitted, uses the cloud profile saved on the paid account.
- `date` (string): Date YYYY-MM-DD. Default: today in Asia/Shanghai. Use when the user asks about a specific day.
- `hour` (string): Clock HH:MM or earthly branch 子–亥 (e.g. 14:30 or 未). Adds hour-pillar ten-god.
- `locale` (string): Reply language. zh (default) or en.

### `personal_month` (~180 tokens)

Personal month · 个人流月

This tool looks up a deterministic rules engine. Same day → same answer. Do not invent pillars or fortune claims. Call when the user asks 我这个月怎么样 / 我哪周该推进 / 我这个月适不适合上线 / my month. Personalized flow-month: day-master vs month stem, dated sky, sandbox assumptions, fold-memory prompts. Requires BALANCE_API_KEY + birth profile. Empty key → error personal_timetable_requires_key; use free tools instead. Not a fortune verdict.

Input parameters:

- `birth` (object): Optional birth profile. If omitted, uses the cloud profile saved on the paid account.
- `date` (string): Optional YYYY-MM-DD to pin which flow month to use.
- `locale` (string): Reply language. zh (default) or en.
- `month` (string): Month YYYY-MM. Default: current month.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp#diagnostics

## Score history

- 2026-10-06: 77
- 2026-10-04: 76
- 2026-10-03: 75
- 2026-10-02: 75
- 2026-10-01: 75
- 2026-09-30: 74
- 2026-09-29: 74
- 2026-09-28: 73
- 2026-09-27: 73
- 2026-09-26: 72
- 2026-09-25: 72
- 2026-09-24: 71
- 2026-09-23: 71
- 2026-09-22: 70
- 2026-09-21: 70
- 2026-09-20: 69
- 2026-09-19: 69
- 2026-09-18: 68
- 2026-09-17: 68
- 2026-09-16: 68
- 2026-09-15: 67
- 2026-09-14: 67
- 2026-09-13: 66
- 2026-09-12: 66
- 2026-09-11: 65

## Common questions

### What is the Nonlinear Calendar MCP server?

Nonlinear Calendar is an MCP server listed in the public MCP registry as io.github.singularitybpjade/balance-engine. Nonlinear Calendar: this year’s months fold onto the previous 12 years. No key to try. This page covers its hosted endpoint (https://balance-engine.vercel.app/api/mcp).

### Is the Nonlinear Calendar MCP server safe to use?

Nonlinear Calendar scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Nonlinear Calendar MCP server expose?

Nonlinear Calendar exposes 12 tools: today_rhythm, month_brief, solar_terms, date_lookup, sky_window, and 7 more. Their descriptions and schemas cost roughly 2,503 tokens of context every time the server is loaded.

### Does the Nonlinear Calendar MCP server require authentication?

No. We connected to Nonlinear Calendar without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Nonlinear Calendar MCP server still maintained?

Nonlinear Calendar is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://balance-engine.vercel.app/api/mcp
- Website: https://balance-engine.vercel.app/stories/agent-mcp.html
- Changelog RSS feed: https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp.json
- HTML version of this page: https://verifymcp.io/servers/singularitybpjade-balance-engine/api-mcp
