Skip to content

codyswanngt/health-archive

v1.3.0Apache-2.0

Source-backed personal health archive for each signed-in user: query labs, medications, symptoms and vitals, and record quote-backed reports through an OAuth MCP connector.

Health Archive plugin

Skills plus an OAuth-protected MCP connector for a source-backed personal health archive. Each person who signs in gets their own private archive; the database is its system of record. The plugin lets Claude, ChatGPT and Codex query it and record new reports as reviewed, quote-backed facts.

The package follows both the Claude Code plugin format and the vendor-neutral Agent Plugins 1.0 format used by ChatGPT and Codex:

FileRead by
.claude-plugin/plugin.json, .mcp.jsonClaude Code and Claude plugins
plugin.json (with extensions.com.openai), mcp.jsonChatGPT, Codex and other Agent Plugins clients
skills/*/SKILL.mdBoth. Agent Skills format
assets/Icon for both directories

Connector

https://health-mcp-production-91ec.up.railway.app/mcp (Streamable HTTP)

The server implements the MCP authorization specification:

  • protected resource metadata;
  • authorization server metadata;
  • dynamic client registration;
  • authorization code with PKCE S256;
  • refresh token rotation;
  • RFC 7009 revocation.

Clients discover this automatically. On first connection your browser opens a sign-in page that shows the requesting client and where it will return. Sign in with your username and password, or create an account with an invitation from the operator. Each account owns one patient chart, and tools act only on it. Five failed sign-ins lock that username for 15 minutes.

Scopes: health.read for queries, health.write for record_narrative, record_medication, capture_conversation and set_pooling.

Install

ClientSteps
Claude Code/plugin marketplace add CodySwannGT/health-archive, then /plugin install health-archive@health-archive-marketplace. Run /mcp, select health-archive, and authenticate
Claude.ai or Claude DesktopSettings → Connectors → Add custom connector. Enter the connector URL and connect. Upload the skills from dist/skills/*.zip, built by plugins/package.sh, under Settings → Capabilities → Skills
ChatGPTInstall the plugin from the repository marketplace, or add the connector directly: Settings → Apps & Connectors → Advanced → Developer mode → Create. Enter the connector URL with OAuth authentication
CodexAdd this repository's marketplace (.agents/plugins/marketplace.json) and enable health-archive@health-archive-marketplace in .codex/config.toml. Or add only the connector: codex mcp add health-archive --url https://health-mcp-production-91ec.up.railway.app/mcp

Tools

ToolPurpose
search, fetchSearch and fetch source documents. These follow the ChatGPT connector search/fetch shape
search_archiveSearch with excerpts and options for research, conversation or history
labs, medications, symptoms, vitals, anthropometrics, activity, profile, timelineDomain queries
concepts, conceptTests, measurements and medications that join records across sources, and one concept's records over time
associations, check_inEvidence-graded connections in the person's own records, and the morning check-in agenda
pooled_patterns, pooling, set_poolingPatterns shared by at least five opted-in people, and the person's opt-in. Aggregates only; never published
get_record, get_document, graph, ontology, status, queryRecords, documents, graph, ontology, status and bounded read-only SQL
record_narrative, record_medication, capture_conversationWrites. Each runs in one transaction against the database archive

Skills

SkillUse
health-archive-groundingQuery the archive before answering, and keep evidence kinds distinct
health-connectionsRelay evidence-graded connections and compare explanations
health-daily-check-inRun the morning check-in like a triage nurse and record every answer, including "no"
health-conversation-auditCapture each turn and preserve corrections and clarifications
health-record-narrativeRecord symptoms, vitals, weights, exposures and hypotheses as quote-backed records
health-record-medicationRecord regimens, changes, holds and single doses
health-ontology-extensionExtend schemas and the registered ontology additively
health-source-archiveAdd, retire and back up source files

Operate

The server code is in mcp_server/, and mcp_server/README.md covers deployment, invitations and accounts. Sign-up requires a one-time invitation the operator creates with python -m health_mcp invite, so the service never holds data from people the operator did not invite.