get_current_timeLABSCO SUMMARY
One configuration mistake accounts for most failures.
The README is explicit: do not add "type": "stdio" to the client entry. Variable substitution happens before type validation, so a client that sets it can end up resolving ${workspaceFolder} into a nonsense path and the server never starts. Beyond that, the design decision worth making up front is storage mode — per-project keeps each repo's history isolated with no configuration, centralised is what you want if you care about comparing across projects.
What it is
A time and activity server for AI coding agents. It answers what time it is now, converts between timezones, and keeps a persistent log of activities — started, ended, durations, outcomes — so an agent can resume work in a later session and compare estimates against what actually happened.
What you get
get_current_timetakes atimezone; pass"system"or"local"for the machine's own time, or an IANA name like"Europe/London"convert_timetranslates atimebetween asource_timezoneand atarget_timezone, handling DSTstart_activity_logopens an activity with a type, scope, description and optional tags, and returns an Activity IDend_activity_logcloses it with a result and notes, calculating duration automaticallyget_elapsed_timechecks progress on a running activity without interrupting itget_activity_logsqueries history with filtering, andupdate_activity_logcorrects or annotates a finished entrycreate_time_reminderandcheck_time_remindersschedule and surface follow-ups- Three Activity ID formats:
customat 12 characters,shortat 22,uuidat 36
Requirements
Python 3.10 or higher and an MCP-capable client. The project's pyproject names it chronos-protocol 1.6.0, but it is not on PyPI; the documented path is clone, pip install -r requirements.txt, then pip install -e . — the editable install is required for MCP. No account or key. Storage is either per-project, writing to {project-root}/chronos-data/time_server_data.json with --storage-mode per-project, or centralised in a directory given by --data-dir. Launch as python -m chronos_protocol with those flags.
Setup effort
Build from source — git clone https://github.com/n0zer0d4y/chronos-protocol.git
USE CASES
Letting an agent know when 'now' is
Ask for the local system time explicitly instead of relying on whatever the prompt happened to embed.
Picking a meeting time across two countries
Convert between timezones with DST handled, rather than doing the arithmetic in prose.
Resuming a task in a new session
Look up the activity you started yesterday by ID and close it out when the work lands.
Finding out where the time actually goes
Query past activities by type and compare estimated against recorded durations.
Not forgetting the follow-up
Set a reminder tied to the work — a review to chase, a deploy window — and check for due ones later.
9 tools
Listed in project docs. Your client may show a different list.
convert_timestart_activity_logend_activity_logget_elapsed_timeget_activity_logsupdate_activity_logcreate_time_remindercheck_time_remindersBEFORE YOU INSTALL
What to know first
Tools you get
9 tools named in the project's documentation.
Requires
- python on PATH
- Python 3.10 or later
Where it runs
All 7 documented clients run the server on your machine.
INSTALLATION
Connect your client
This one is built from source rather than installed with a single command.
Server setup
git clone https://github.com/n0zer0d4y/chronos-protocol.git
cd chronos-protocol
pip install -r requirements.txt
pip install -e .
python -m chronos_protocol --helpMCP Clients
Roo Code, Cursor, Trae
{
"mcpServers": {
"chronos-protocol": {
"command": "python",
"args": [
"-m",
"chronos_protocol",
"--storage-mode",
"per-project",
"--project-root",
"${workspaceFolder}",
"--id-format",
"custom"
]
}
}
}Claude Code, Gemini CLI
{
"mcpServers": {
"chronos-protocol": {
"command": "python",
"args": [
"-m",
"chronos_protocol",
"--storage-mode",
"per-project",
"--id-format",
"custom"
]
}
}
}Cline, Qoder
{
"mcpServers": {
"chronos-protocol": {
"disabled": false,
"timeout": 60,
"command": "python",
"args": [
"-m",
"chronos_protocol",
"--storage-mode",
"centralized",
"--data-dir",
"<YOUR_PATH_TO_CENTRALIZED_CHRONOS_DATA>",
"--id-format",
"custom"
]
}
}
}