chron-mcp 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "chron",
3
+ "description": "Audit-grade timestamped logs for every AI conversation — stored locally, owned by you.",
4
+ "version": "0.1.1",
5
+ "author": {
6
+ "name": "Nivaya",
7
+ "email": "ksrinivas07530@gmail.com"
8
+ },
9
+ "homepage": "https://github.com/nivaya/chron",
10
+ "repository": "https://github.com/nivaya/chron",
11
+ "license": "MIT",
12
+ "keywords": [
13
+ "audit",
14
+ "logging",
15
+ "mcp",
16
+ "timestamps",
17
+ "ai-conversations"
18
+ ]
19
+ }
package/LICENSE ADDED
@@ -0,0 +1,18 @@
1
+ Copyright (c) 2026 Nivaya. All rights reserved.
2
+
3
+ This source code is made publicly visible for transparency and review purposes only.
4
+
5
+ You may NOT, without explicit written permission from the copyright holder:
6
+
7
+ - Copy, clone, or download this source code for reuse
8
+ - Fork this repository
9
+ - Modify, adapt, or create derivative works
10
+ - Redistribute or sublicense the source code or any portion of it
11
+ - Use this source code as the basis for another product or service
12
+
13
+ You MAY:
14
+
15
+ - Use the published npm package (chron-mcp) as an end user
16
+ - Read and review the source code
17
+
18
+ For licensing inquiries, contact: ksrinivas07530@gmail.com
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
- # Chron
2
-
3
- > A timestamped audit trail for every AI conversation — stored locally, owned by you.
1
+ <div align="center">
2
+ <img src="assets/chron-icon-png-transperent.png" alt="Chron" width="96" />
3
+ <h1>Chron</h1>
4
+ <p>A timestamped audit trail for every AI conversation — stored locally, owned by you.</p>
5
+ </div>
4
6
 
5
7
  AI tools show when you sent a message. Chron logs when the AI responded too — and keeps a permanent, queryable record of every exchange across every tool you use.
6
8
 
@@ -204,4 +206,6 @@ No cloud, no telemetry, no data leaving your machine. Change the location with `
204
206
 
205
207
  ## License
206
208
 
207
- MIT
209
+ Copyright (c) 2026 Nivaya. All rights reserved.
210
+
211
+ Source code is public for transparency only. Cloning, forking, modification, and redistribution are not permitted without explicit written permission. See [LICENSE](LICENSE) for full terms.
Binary file
package/package.json CHANGED
@@ -1,10 +1,17 @@
1
1
  {
2
2
  "name": "chron-mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
+ "mcpName": "io.github.nivaya/chron",
4
5
  "description": "Audit-grade timestamped logs for every AI conversation",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/nivaya/chron.git"
9
+ },
5
10
  "main": "dist/index.js",
6
11
  "vitest": {
7
- "include": ["tests/**/*.test.ts"],
12
+ "include": [
13
+ "tests/**/*.test.ts"
14
+ ],
8
15
  "globals": true
9
16
  },
10
17
  "bin": {
@@ -13,6 +20,8 @@
13
20
  "files": [
14
21
  "dist",
15
22
  "skills",
23
+ ".claude-plugin",
24
+ "assets",
16
25
  "README.md"
17
26
  ],
18
27
  "engines": {
@@ -34,13 +43,13 @@
34
43
  "claude",
35
44
  "cursor"
36
45
  ],
37
- "license": "MIT",
46
+ "license": "SEE LICENSE IN LICENSE",
38
47
  "dependencies": {
39
48
  "@libsql/client": "^0.17.3",
40
49
  "@modelcontextprotocol/sdk": "^1.12.0",
41
50
  "drizzle-orm": "^0.30.10",
42
51
  "express": "^4.18.2",
43
- "uuid": "^9.0.0",
52
+ "uuid": "^11.1.1",
44
53
  "zod": "^3.22.4"
45
54
  },
46
55
  "devDependencies": {
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: chron
3
+ description: Use Chron to log every AI conversation with precise timestamps to a local SQLite database. Invoke at session start and on every exchange.
4
+ ---
5
+
6
+ # Chron — AI Audit Log Skill
7
+
8
+ Chron creates an audit trail of every AI conversation. Every message is logged with a precise local datetime (with timezone offset) to a local SQLite database the user owns.
9
+
10
+ ## Prerequisites
11
+
12
+ Chron requires the MCP server to be running. If not yet configured:
13
+
14
+ ```bash
15
+ # Claude Code
16
+ claude mcp add chron npx -y chron-mcp
17
+ ```
18
+
19
+ For other tools, add to your MCP config:
20
+ ```json
21
+ {
22
+ "mcpServers": {
23
+ "chron": {
24
+ "command": "npx",
25
+ "args": ["-y", "chron-mcp"]
26
+ }
27
+ }
28
+ }
29
+ ```
30
+
31
+ ## Session Start
32
+
33
+ Call `start_session` with a descriptive title (e.g. "Contract review — 2026-05-08") and set `ai_tool` to your tool name (e.g. "claude", "cursor", "windsurf").
34
+
35
+ Call `get_session_history` for the returned `session_id`. If prior messages exist, display:
36
+ > "Resuming session: [N messages] since [first_message_date]"
37
+
38
+ ## Every Exchange
39
+
40
+ 1. Call `log_message(session_id, role="user", content=<exact user message>)` → returns T1
41
+ 2. Compose your response body (plain text only — no timestamp header)
42
+ 3. Call `log_message(session_id, role="assistant", content=<response body>)` → returns T2
43
+ 4. Output header + body:
44
+
45
+ ```
46
+ [user: YYYY-MM-DD HH:MM:SS ±HH:MM | assistant: YYYY-MM-DD HH:MM:SS ±HH:MM]
47
+
48
+ <response body>
49
+ ```
50
+
51
+ T1 and T2 are real server timestamps — T2 − T1 is the actual generation time. The DB stores clean body content without the header.
52
+
53
+ **Do not use `log_exchange` for live conversations** — it captures both timestamps at the same instant and cannot show a real gap. Use it only for batch imports of historical messages.
54
+
55
+ ## If Chron MCP is unavailable
56
+
57
+ State once: "Chron is not connected — this conversation will not be logged."
58
+ Continue normally. Do not retry repeatedly.