neurodock-mcp-chronometric
Time, idle, and break management as an MCP server. Part of NeuroDock — a local-first cognitive substrate for neurodivergent professionals.
Version: 0.0.2 (developer preview, in-memory).
Install
uv add neurodock-mcp-chronometric
pip install neurodock-mcp-chronometric
Use as an MCP server
Add to your ~/.claude.json (Claude Code) or claude_desktop_config.json (Claude Desktop):
{
"mcpServers": {
"neurodock-chronometric": {
"command": "uv",
"args": ["run", "neurodock-mcp-chronometric"]
}
}
}
Status
v0.0.x implements the five tools specified in ADR
0001 — chronometric tool design:
| Tool | Status |
|---|
get_time_context | implemented |
mark_session_start | implemented; auto-closes prior open session |
mark_session_end | implemented |
request_break_if_needed | implemented |
idle_status | implemented; consent-gated, OS probe is a stub |
Session state is intentionally in-memory for the v0.0.x preview — a single
Claude session typically ends with an explicit mark_session_end so durable
storage is not on the hot path. SQLite-backed session history is planned for
v0.1.0 per ADR 0001; until then, restart Claude and any open session is
treated as auto-closed on the next mark_session_start.
The OS idle probe is intentionally a no-op stub in v0.0.2: the consent gate is
the hard correctness property, and the probe itself returns None on every
platform until per-platform implementations and tests land.
References
Running
uv run neurodock-mcp-chronometric
The server speaks the MCP stdio transport.
Profile
Reads ~/.neurodock/profile.yaml. Override with NEURODOCK_PROFILE_PATH (used
in tests). Fields consumed in v0.0.2:
privacy:
os_idle_consent: true
chronometric:
zones: {}
Development
uv sync --all-packages --all-extras
uv run pytest packages/mcp-chronometric/tests/ -v
uv run ruff check packages/mcp-chronometric/
uv run ruff format --check packages/mcp-chronometric/
uv run mypy --strict packages/mcp-chronometric/src/