cronometer-mcp 2.1.2__tar.gz → 2.3.0__tar.gz
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.
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/.gitignore +3 -0
- cronometer_mcp-2.3.0/AGENTS.md +13 -0
- cronometer_mcp-2.3.0/CLAUDE.md +1 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/PKG-INFO +13 -2
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/README.md +11 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/cronometer_mcp/__init__.py +1 -1
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/cronometer_mcp/client.py +316 -391
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/cronometer_mcp/server.py +80 -29
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/pyproject.toml +3 -4
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/server.json +2 -2
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/tests/test_client.py +319 -71
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/tests/test_diary_groups.py +15 -0
- cronometer_mcp-2.3.0/tests/test_server.py +124 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/.github/workflows/publish.yml +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/LICENSE +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/RESEARCH-copy-repeat-gwt-rpc.md +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/SPEC-diary-groups.md +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/cronometer_mcp/markdown.py +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/release.sh +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/tests/__init__.py +0 -0
- {cronometer_mcp-2.1.2 → cronometer_mcp-2.3.0}/tests/test_markdown.py +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# AGENTS.md
|
|
2
|
+
|
|
3
|
+
Instructions for coding agents working in this repo.
|
|
4
|
+
|
|
5
|
+
## Releasing
|
|
6
|
+
|
|
7
|
+
- Always release with `./release.sh <version>`. Never bump `pyproject.toml`,
|
|
8
|
+
`cronometer_mcp/__init__.py` or `server.json` by hand, and never hand-roll the bump commit, tag
|
|
9
|
+
or push. The script checks for a clean tree and an unused tag, bumps all three files, commits,
|
|
10
|
+
tags `v<version>` and pushes `main` with tags.
|
|
11
|
+
- Before running it: the working tree is clean and `python -m pytest` passes.
|
|
12
|
+
- The tag alone does not publish. Create a GitHub release from the tag; that triggers
|
|
13
|
+
`.github/workflows/publish.yml`, which builds the package and publishes it to PyPI.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@AGENTS.md
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: cronometer-mcp
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.3.0
|
|
4
4
|
Summary: MCP server for Cronometer nutrition data — pull food logs, macros, and micronutrients via the Model Context Protocol
|
|
5
5
|
Project-URL: Homepage, https://github.com/cphoskins/cronometer-mcp
|
|
6
6
|
Project-URL: Repository, https://github.com/cphoskins/cronometer-mcp
|
|
@@ -18,7 +18,7 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.13
|
|
19
19
|
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
|
|
20
20
|
Requires-Python: >=3.11
|
|
21
|
-
Requires-Dist: mcp<
|
|
21
|
+
Requires-Dist: mcp<3.0.0,>=2.3.0
|
|
22
22
|
Requires-Dist: requests>=2.28.0
|
|
23
23
|
Description-Content-Type: text/markdown
|
|
24
24
|
|
|
@@ -111,6 +111,17 @@ If you installed from source with `pip install -e .`, you can also use the full
|
|
|
111
111
|
}
|
|
112
112
|
```
|
|
113
113
|
|
|
114
|
+
### Read-only mode
|
|
115
|
+
|
|
116
|
+
Set `CRONOMETER_READ_ONLY=1` (also accepts `true` or `yes`) in the server's `env` to expose only the
|
|
117
|
+
read tools. The 13 tools that change your Cronometer account are not registered at all, so the
|
|
118
|
+
client never sees them: adding or removing food entries, macro targets, schedules and templates,
|
|
119
|
+
fasts, biometrics, copy day, mark day complete, and repeat items. `sync_cronometer` stays available;
|
|
120
|
+
it only writes files on your machine.
|
|
121
|
+
|
|
122
|
+
This limits what the server offers, not what your credentials can do. Cronometer has no read-only
|
|
123
|
+
login, so the password in `env` still has full access to the account.
|
|
124
|
+
|
|
114
125
|
## Available Tools
|
|
115
126
|
|
|
116
127
|
### Food Log & Nutrition
|
|
@@ -87,6 +87,17 @@ If you installed from source with `pip install -e .`, you can also use the full
|
|
|
87
87
|
}
|
|
88
88
|
```
|
|
89
89
|
|
|
90
|
+
### Read-only mode
|
|
91
|
+
|
|
92
|
+
Set `CRONOMETER_READ_ONLY=1` (also accepts `true` or `yes`) in the server's `env` to expose only the
|
|
93
|
+
read tools. The 13 tools that change your Cronometer account are not registered at all, so the
|
|
94
|
+
client never sees them: adding or removing food entries, macro targets, schedules and templates,
|
|
95
|
+
fasts, biometrics, copy day, mark day complete, and repeat items. `sync_cronometer` stays available;
|
|
96
|
+
it only writes files on your machine.
|
|
97
|
+
|
|
98
|
+
This limits what the server offers, not what your credentials can do. Cronometer has no read-only
|
|
99
|
+
login, so the password in `env` still has full access to the account.
|
|
100
|
+
|
|
90
101
|
## Available Tools
|
|
91
102
|
|
|
92
103
|
### Food Log & Nutrition
|