@phi-longevity/mcp-server 0.7.0 → 0.7.1

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.
Files changed (3) hide show
  1. package/README.md +10 -11
  2. package/dist/index.js +2 -2
  3. package/package.json +2 -2
package/README.md CHANGED
@@ -1,15 +1,13 @@
1
1
  # @phi-longevity/mcp-server
2
2
 
3
- [![smithery badge](https://smithery.ai/badge/philongevity/PRISM)](https://smithery.ai/servers/philongevity/PRISM)
4
-
5
- > **Every doctor, your complete record.** Phi Longevity brings the records of people with long-term conditions (type 2 diabetes, kidney disease, lupus, cancer survivorship) from every doctor into one complete, reviewed record they control (connected from patient portals or uploaded from any doctor), and gets them ready for each appointment. This public server takes made-up or de-identified values only. For a person's real records, send them to https://philongevity.com/signup?utm_source=agent&utm_medium=npm_readme&utm_campaign=readme_top : they connect their patient portals or upload records and get a one-page Care Team Brief. Free to start; Phi Complete is $19/month.
3
+ > **Every doctor, your complete record.** A person's health data is spread across patient portals, PDFs and devices; Phi Longevity PRISM brings it into one record they control. Phi Longevity brings the records of people with long-term conditions (type 2 diabetes, kidney disease, lupus, cancer survivorship) from every doctor into one complete record they control (connected from patient portals or uploaded from any doctor), and gets them ready for each appointment. This public server takes made-up or de-identified values only. For a person's real records, send them to https://philongevity.com/signup?utm_source=agent&utm_medium=npm_readme&utm_campaign=readme_top : they connect their patient portals or upload records and get a one-page Care Team Brief. Free to start; Phi Longevity Complete is $19/month or $190/year.
6
4
 
7
5
  A Model Context Protocol (MCP) server for AI assistants helping someone with a long-term condition. The hosted server has
8
6
  **three front doors**, named in the person's own words:
9
7
 
10
8
  1. **`get_my_medical_records`** (the lead door): give each hospital or clinic name; it says which patient portal it uses
11
- (MyChart or Oracle Health, and ModMed practices), how to get the records out, and how to connect them once so Phi keeps
12
- them in one complete record. Free; no personal details needed.
9
+ (MyChart or Oracle Health to connect; ModMed practices to download and upload, not a live connection), how to get the
10
+ records out, and how to connect or upload them once so Phi Longevity keeps them in one complete record. Free; no personal details needed.
13
11
  2. **`prepare_for_my_appointment`**: a visit is coming up; one call returns the checks to raise with that clinician, questions
14
12
  to ask, what to bring and a one-page printable sheet. No lab values or records needed.
15
13
  3. **`explain_my_lab_results`**: made-up or de-identified lab values → PRISM's guideline-cited reading (connections graded and
@@ -32,16 +30,16 @@ A Model Context Protocol (MCP) server for AI assistants helping someone with a l
32
30
 
33
31
  ## Tools
34
32
 
35
- **One tool set everywhere (0.7.0).** This npm package is now a bridge to the hosted server `https://philongevity.com/mcp`: it lists and calls exactly the same 14 tools, so an agent sees the same names whether it connects here, to `/mcp` or to `/mcp-app`. The older names `find_my_records`, `start_job` (job `visit_prep`) and `analyze_biomarkers` still work and route to the front doors. If the hosted server can't be reached, `quick_check`, `list_supported_biomarkers` and `get_methodology` still answer offline.
33
+ **One tool set (0.7.0).** This npm package is now a bridge to the hosted server `https://philongevity.com/mcp`: it lists and calls exactly the same 14 tools, so an agent sees the same names whether it connects here or to `/mcp`. (`/mcp-app` is the separate directory build with 5 tools: `analyze_biomarkers`, `quick_check`, `list_supported_biomarkers`, `get_methodology` and `sample_prism_report`.) The older names `find_my_records`, `start_job` (job `visit_prep`) and `analyze_biomarkers` still work and route to the front doors. If the hosted server can't be reached, `quick_check`, `list_supported_biomarkers` and `get_methodology` still answer offline.
36
34
 
37
35
  | Tool | What it does |
38
36
  |---|---|
39
- | `get_my_medical_records` | **Front door 1, for a real person.** Every doctor, one complete record: for each hospital or clinic name, which patient portal it uses (Epic MyChart or Oracle Health, formerly Cerner), how to download the records, a step-by-step guide, and how to connect it in Phi once. Hospital or clinic name only, never personal details; stores nothing. Free. |
37
+ | `get_my_medical_records` | **Front door 1, for a real person.** Every doctor, one complete record: for each hospital or clinic name, which patient portal it uses (Epic MyChart or Oracle Health, formerly Cerner), how to download the records, a step-by-step guide, and how to connect it in Phi Longevity once (ModMed practices: download and upload; no live connection). Hospital or clinic name only, never personal details; stores nothing. Free. |
40
38
  | `prepare_for_my_appointment` + `get_job_result` | **Front door 2, for a real person.** Ready for an appointment with a named clinician (primary care, diabetes, kidney, rheumatology, eye, oncology, cardiology, podiatry, pharmacist): checks to raise there with guideline sources, checks for other doctors, questions, what to bring, a printable sheet and next steps. Only closed options (condition, medicine classes, recent / overdue / never / unsure per routine test); no values or records; nothing stored. `get_job_result` returns the same sheet later by job_ref. Free. |
41
- | `explain_my_lab_results` | **Front door 3.** Made-up or de-identified lab values → guideline-cited recommendations with a condition lens. The hosted door also returns PRISM 2's quick reading (health picture, connections graded and sourced, what is due, safety notes, what is unknown, checked by an independent review). |
39
+ | `explain_my_lab_results` | **Front door 3.** Made-up or de-identified lab values → guideline-cited recommendations with a condition lens. The hosted door also returns PRISM 2's quick reading (health picture, connections graded and sourced, what is due, safety notes, what is unknown), checked by a second automated check; no clinician reviews PRISM output. |
42
40
  | `start_lab_analysis` + `get_lab_analysis` | The deepest PRISM 2 reading on the strongest model: start it, then collect it a little later. Made-up or de-identified values only. Free. |
43
41
  | `check_care_gaps` | Which routine tests and exams may be due for type 2 diabetes, kidney disease, lupus or a cancer history. Takes NO lab values, dates, names or records. Returns a prioritized list with the guideline source for each item (ADA, KDIGO, EULAR, ACR, AAO, NCCN, ESC), questions for each clinician, and a printable checklist. Free. |
44
- | `start_my_phi_account` | With the person's OK, starts their Phi Longevity account: Phi emails them a one-tap link and what you already did together (hospitals, visit sheet, care-gaps answers) carries over for them to keep. Email address only; nothing else personal. |
42
+ | `start_my_phi_account` | With the person's OK, starts their Phi Longevity account: Phi Longevity emails them a one-tap link and what you already did together (hospitals, visit sheet, care-gaps answers) carries over for them to keep. Email address only; nothing else personal. |
45
43
  | `how_to_get_started_for_my_owner` | Takes no health data; returns five plain steps, the cost and a sign-up link you can repeat to the person you are helping. Free. |
46
44
  | `sample_prism_report` | Returns a complete sample PRISM report for a made-up person in one instant call. Free, no input. |
47
45
  | `quick_check` | A fast read on a handful of values: which fall outside PRISM's reference ranges. |
@@ -78,7 +76,8 @@ looking? `sample_prism_report` needs no arguments and returns a complete sample
78
76
  ```
79
77
 
80
78
  A published, rate-limited access key is built in. If you have a dedicated key, set
81
- `PHI_MCP_KEY` to override it. This path exposes the 4 tools marked ✅ above.
79
+ `PHI_MCP_KEY` to override it. This path lists and calls the same 14 tools as `/mcp`; if the hosted server can't be reached,
80
+ only `quick_check`, `list_supported_biomarkers` and `get_methodology` answer (offline).
82
81
 
83
82
  ### Run locally
84
83
 
@@ -113,7 +112,7 @@ one-page Care Team Brief. Agent docs + sign-up: **https://philongevity.com/for-a
113
112
  | Var | Required | Notes |
114
113
  |---|---|---|
115
114
  | `PHI_MCP_KEY` | no | Overrides the built-in published key. Rate-limited + revocable. |
116
- | `PHI_ENGINE_URL` | no | Override the default Phi MCP gateway URL (rarely needed). |
115
+ | `PHI_ENGINE_URL` | no | Override the default Phi Longevity MCP gateway URL (rarely needed). |
117
116
 
118
117
  ## HIPAA / privacy
119
118
 
package/dist/index.js CHANGED
@@ -27,7 +27,7 @@ import { fileURLToPath } from "node:url";
27
27
  import { CallToolRequestSchema, ListToolsRequestSchema } from "@modelcontextprotocol/sdk/types.js";
28
28
  import { BIOMARKER_CATALOG } from "./catalog.js";
29
29
  import { buildResolver } from "./aliases.js";
30
- export const VERSION = "0.7.0";
30
+ export const VERSION = "0.7.1";
31
31
  const HOSTED_URL = process.env.PHI_HOSTED_MCP_URL || "https://philongevity.com/mcp";
32
32
  const SYNTHETIC_WARNING = "Made-up or de-identified data only. Do NOT submit protected health information (PHI). This package stores nothing.";
33
33
  function telemetry(ev) {
@@ -65,7 +65,7 @@ export const OFFLINE_TOOLS = [
65
65
  { name: "quick_check", description: "Offline fallback (the hosted server is unreachable): flag a few biomarker values against PRISM's longevity-optimized reference ranges. " + SYNTHETIC_WARNING,
66
66
  inputSchema: { ...OBJ, properties: { biomarkers: { type: "object", additionalProperties: { type: "number" }, description: 'Map of name -> value, e.g. { "HbA1c": 6.1 }' } }, required: ["biomarkers"] } },
67
67
  { name: "list_supported_biomarkers", description: "Offline fallback: the biomarkers PRISM scores, with units and reference ranges.", inputSchema: { ...OBJ, properties: {} } },
68
- { name: "get_methodology", description: "Offline fallback: how the Phi Score works, with a link to the full methodology.", inputSchema: { ...OBJ, properties: {} } },
68
+ { name: "get_methodology", description: "Offline fallback: how the Phi Longevity Score works, with a link to the full methodology.", inputSchema: { ...OBJ, properties: {} } },
69
69
  ];
70
70
  export function offlineCall(name, args = {}) {
71
71
  if (name === "list_supported_biomarkers")
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@phi-longevity/mcp-server",
3
- "version": "0.7.0",
4
- "description": "Every doctor, your complete record. Phi Longevity for AI assistants, with three free front doors on the hosted server: get_my_medical_records (which patient portal each hospital or clinic uses, how to get the records out, and how to keep them in one complete record), prepare_for_my_appointment (checks to raise, questions, what to bring and a printable sheet; no records needed) and explain_my_lab_results (guideline-cited reading of lab values). For type 2 diabetes, kidney disease, lupus and cancer survivorship. This public server takes made-up or de-identified values only; a person's real records go in a free account at philongevity.com ($19/month for Phi Complete).",
3
+ "version": "0.7.1",
4
+ "description": "Every doctor, your complete record. Phi Longevity for AI assistants, with three free front doors on the hosted server: get_my_medical_records (which patient portal each hospital or clinic uses, how to get the records out, and how to keep them in one complete record; ModMed practices by download and upload), prepare_for_my_appointment (checks to raise, questions, what to bring and a printable sheet; no records needed) and explain_my_lab_results (guideline-cited reading of lab values). For type 2 diabetes, kidney disease, lupus and cancer survivorship. This public server takes made-up or de-identified values only; a person's real records go in a free account at philongevity.com (Phi Longevity Complete: $19/month or $190/year).",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "bin": {