Skip to content

Commit 72ee880

Browse files
queeliusclaude
andcommitted
docs: update README with v1.1.0 changes
- 25 MCP tools (add analyses, source assets) - genetic_variants table - MHTML source support - Claude Code .mcp.json setup - 1090 tests Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 2391926 commit 72ee880

1 file changed

Lines changed: 29 additions & 9 deletions

File tree

README.md

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ Patient-facing tool for consolidating personal health data from multiple EHR (El
77
## Features
88

99
- **Multi-EHR data consolidation** — Import from Epic MyChart, MEDITECH Expanse, and athenahealth
10-
- **SQLite database**16 clinical tables with full audit trail
11-
- **MCP server**22 tools for LLM-assisted analysis with Claude
12-
- **Export formats** — Markdown, self-contained HTML with charts, Hugo static sites, JSON
10+
- **SQLite database**17 clinical tables with full audit trail
11+
- **MCP server**25 tools for LLM-assisted analysis with Claude
12+
- **Export formats** — Markdown, self-contained HTML SPA, Hugo static sites, JSON, Arkiv
1313
- **Personal notes** — Tag and annotate any clinical record
1414
- **Visit preparation** — Generate visit diffs and clinical summaries
1515

@@ -100,6 +100,7 @@ chartfold notes search --ref-table lab_results
100100
| Source | Format | Description |
101101
|--------|--------|-------------|
102102
| **Epic MyChart** | CDA R2 XML | IHE XDM exports from Epic MyChart |
103+
| **Epic MyChart (MHTML)** | MHTML | Visit notes and genomic test results (e.g., Tempus XF) |
103104
| **MEDITECH Expanse** | CCDA XML + FHIR JSON | Dual-format bulk exports (merged and deduplicated) |
104105
| **athenahealth** | FHIR R4 XML | Ambulatory summary exports |
105106

@@ -123,15 +124,16 @@ chartfold stores data in 16 clinical tables:
123124
| **Medications** | `medications`, `allergies` |
124125
| **Conditions** | `conditions` |
125126
| **Procedures** | `procedures`, `pathology_reports`, `imaging_reports` |
127+
| **Genomics** | `genetic_variants` |
126128
| **Notes** | `clinical_notes` |
127129
| **History** | `immunizations`, `social_history`, `family_history`, `mental_status` |
128-
| **System** | `load_log` (audit), `notes`, `note_tags` (personal), `source_assets` |
130+
| **System** | `load_log` (audit), `notes`, `note_tags` (personal), `source_assets`, `analyses`, `analysis_tags` |
129131

130132
All dates are stored as ISO `YYYY-MM-DD` strings. Every record carries a `source` field for provenance tracking.
131133

132134
## MCP Server
133135

134-
chartfold includes an MCP (Model Context Protocol) server with 22 tools for LLM-assisted health data analysis:
136+
chartfold includes an MCP (Model Context Protocol) server with 25 tools for LLM-assisted health data analysis:
135137

136138
```bash
137139
chartfold serve-mcp --db chartfold.db
@@ -141,14 +143,32 @@ chartfold serve-mcp --db chartfold.db
141143

142144
| Category | Tools |
143145
|----------|-------|
144-
| **SQL & Schema** | `run_sql`, `get_schema` |
146+
| **SQL & Schema** | `run_sql`, `get_schema`, `get_database_summary` |
145147
| **Labs** | `query_labs`, `get_lab_series_tool`, `get_available_tests_tool`, `get_abnormal_labs_tool` |
146148
| **Medications** | `get_medications`, `reconcile_medications_tool` |
147149
| **Clinical** | `get_timeline`, `search_notes`, `get_pathology_report` |
148-
| **Analysis** | `get_visit_diff`, `get_visit_prep`, `get_surgical_timeline` |
150+
| **Visit Prep** | `get_visit_diff`, `get_visit_prep`, `get_surgical_timeline` |
149151
| **Cross-source** | `match_cross_source_encounters`, `get_data_quality_report` |
150-
| **Summary** | `get_database_summary` |
152+
| **Source Assets** | `get_source_files`, `get_asset_summary` |
151153
| **Personal Notes** | `save_note`, `get_note`, `search_notes_personal`, `delete_note` |
154+
| **Analyses** | `save_analysis`, `get_analysis`, `search_analyses`, `list_analyses`, `delete_analysis` |
155+
156+
Clinical data is read-only (`?mode=ro` enforced at the SQLite engine level). Write operations are limited to personal notes and structured analyses.
157+
158+
### Claude Code Configuration
159+
160+
Drop a `.mcp.json` in any directory where you run Claude Code:
161+
162+
```json
163+
{
164+
"mcpServers": {
165+
"chartfold": {
166+
"command": "python",
167+
"args": ["-m", "chartfold", "serve-mcp", "--db", "/path/to/chartfold.db"]
168+
}
169+
}
170+
}
171+
```
152172

153173
### Claude Desktop Configuration
154174

@@ -212,7 +232,7 @@ Raw EHR files (XML/FHIR)
212232
## Testing
213233

214234
```bash
215-
# Run all tests (700+ tests)
235+
# Run all tests (1000+ tests)
216236
python -m pytest tests/
217237

218238
# Run a single test file

0 commit comments

Comments
 (0)