Oak Longevity Mcp Server

io.github.Goingparabolic由 GitHub 账号 Goingparabolic 发布v0.1.0更新于 Oct 25, 2026

Longevity medicine MCP: medication dosing, labs, monitoring, drug interactions & intake screening

已验证STDIO仅桌面位置与生活知识与记忆

概览

AI 生成的概览

本地 MCP 服务器,为助手提供长寿与代谢医学参考:35 种化合物目录、给药方案、化验、监测、相互作用与禁忌筛查。

可以做什么
按类别浏览药物目录,含 id、药物类别和 DEA/处方管制等级,并按名称、id 或品牌别名查询单个化合物的机制、剂型与适用人群。查询 FDA 批准状态、DEA 管制等级及 503A/503B 配制注意事项。按适应症获取带证据等级的给药方案、处方前所需基线化验和持续监测计划。将药物与患者档案比对筛查禁忌,并检查用药清单中两两药物相互作用。根据患者症状与目标匹配建议的接诊路径。
适用场景
适合临床医生或长寿与代谢医学机构,让助手在起草或复核方案时调取化合物、给药、化验、监测、禁忌与相互作用的结构化参考数据。仅免费层即可满足目录与监管信息查询。
运行要求
以本地 Node.js 进程通过 stdio 运行,可从 npm 包安装或从源码构建;需要 Claude Desktop、Claude Code 等桌面 MCP 客户端。免费层无需账户。高级工具需要 LONGEVITY_LICENSE_KEY 中的许可证密钥;可选变量可设定层级、密钥白名单或远程验证端点。README 另述可用于远程托管的 HTTP 传输方式。
安装前请注意
仅为临床决策支持,不构成医疗建议;输出须由执业临床医生审核,且许多化合物属超说明书使用、配制或研究性药物。给药、相互作用、化验与监管数据变动频繁,应核对最新原始文献与 FDA 资源。无有效授权时高级工具只返回升级提示。许可证密钥属机密;若配置远程验证端点,密钥会发送至该服务。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Oak Longevity Mcp Server,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

oak-longevity-mcp-server

An MCP server for longevity & metabolic medicine — a medication catalog, evidence-based dosing protocols, contraindication screening, drug-interaction checks, required baseline labs, ongoing monitoring plans, FDA/compounding regulatory status, and patient-intake pathway suggestions across 35 compounds.

Built for Oak Longevity Institute by Keith Schmidt, MD — a telemedicine longevity practice in Illinois. This server makes the practice's clinical reference data available to any MCP client (Claude Desktop, Claude Code, or your own agent), and is structured for a free/premium monetization model.

⚠️ Clinical decision-support, not medical advice. All output must be reviewed by a licensed clinician. Many longevity compounds here are used off-label, are compounded, or are investigational/not FDA-approved. Dosing, contraindication, interaction, lab, and regulatory data change frequently — always verify against current primary literature, FDA/DEA resources, and your state board of pharmacy.


What it does

ToolTierDescription
get_medication_listFreeFull medication catalog grouped by category, with ids, drug class, and DEA/Rx schedule.
get_medication_detailsFreeMechanism, formulations, who it's for / not for, and schedule for one medication.
get_fda_statusFreeFDA approval status, DEA schedule, 503A/503B compounding considerations, approved uses, off-label notes.
get_dosing_protocolPremiumEvidence-based dosing: route, start, titration, maintenance, max, evidence grade, pearls — by indication.
get_required_labsPremiumRecommended baseline labs/assessments before prescribing, grouped by panel with rationale.
get_monitoring_planPremiumOngoing monitoring schedule — what to check, interval, and action/threshold.
check_contraindicationsPremiumScreens a medication against a patient profile (age, sex, conditions, meds) → PASS / FLAG / REJECT with the triggering findings.
check_drug_interactionsPremiumPairwise interaction warnings across a medication list, ranked by severity, with mechanism + management.
screen_patient_intakePremiumMaps a patient's symptoms/goals to suggested treatment pathways with first-line + adjunct medications and workup.

The eight categories: Weight Management, Peptide Therapy, Hormone Optimization, Longevity & Metabolic, Sexual Health, Immune & Inflammation, Hair Restoration, Dermatology.

Every tool accepts a medication as a name, id, or brand/alias (e.g. "Tirzepatide", "tirzepatide", "Mounjaro", or "copper peptide" → GHK-Cu). Unrecognized queries return "did you mean" suggestions.

Compounds covered

Semaglutide · Tirzepatide · Liraglutide · Naltrexone/Bupropion · BPC-157 · Sermorelin · CJC-1295/Ipamorelin · Ipamorelin · Tesamorelin · Thymosin Beta-4 (TB-500) · Testosterone (cypionate & cream) · Estradiol · Progesterone · DHEA · Anastrozole · Pregnenolone · hCG · NAD+ · Metformin · Rapamycin · Berberine · Resveratrol · NMN · PT-141 · Oxytocin · Tadalafil · Sildenafil · Thymosin Alpha-1 · Glutathione · Low-Dose Naltrexone · Finasteride · Oral Minoxidil · GHK-Cu · Tretinoin.


Install & build

bash
git clone <repo> longevity-mcp-servercd longevity-mcp-servernpm install
npm run build             # compile TypeScript → dist/ and copy datanpm run smoke             # end-to-end test (optional)

The clinical data ships as JSON in src/data/ and is copied into dist/data/ at build.


Use with Claude Desktop

Add to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):

json
{  "mcpServers": {    "oak-longevity": {      "command": "node",      "args": ["/absolute/path/to/longevity-mcp-server/dist/index.js"],      "env": { "LONGEVITY_LICENSE_KEY": "OAK-XXXX-XXXX-XXXX" }    }  }}

Restart Claude Desktop. You can then ask things like:

  • "List the peptide therapy options."
  • "What's the dosing protocol for tirzepatide for weight loss?"
  • "Can I prescribe tadalafil to a 60-year-old man taking nitroglycerin?"
  • "Check interactions between rapamycin, simvastatin, and clarithromycin."
  • "What baseline labs do I need before starting testosterone?"
  • "A patient reports fatigue, low libido, and wants to lose weight — what pathways fit?"

See examples/claude_desktop_config.json for an npx variant.

Use with Claude Code

bash
claude mcp add oak-longevity -- node /absolute/path/to/longevity-mcp-server/dist/index.js

Inspect locally

bash
npm run inspect          # opens the MCP Inspector against the stdio server

Remote hosting (HTTP / SSE)

The same tools are served over Streamable HTTP for remote deployment (MCPize, a VPS, or serverless):

bash
npm run buildPORT=3000 node dist/http.js# → POST http://localhost:3000/mcp     (GET /health for a liveness check)

The HTTP transport is stateless and multi-tenant: the per-customer license key is read from a request header, so a single deployment can serve many customers.

X-Oak-License: OAK-XXXX-XXXX-XXXX        (preferred)Authorization: Bearer OAK-XXXX-XXXX-XXXX (also accepted)

Monetization & licensing

The server has a built-in free / premium split designed to be wired to a billing provider (Stripe, MCPize) with minimal change.

  • Free tier: get_medication_list, get_medication_details, get_fda_status — the catalog and regulatory reference.
  • Premium tier: the clinical decision-support engine — dosing protocols, baseline labs, monitoring plans, contraindication screening, drug-interaction checks, and intake pathway suggestions.

Premium tools remain discoverable (they appear in tools/list so clients can advertise the upgrade), but calling one without a valid entitlement returns an upgrade prompt instead of data.

Entitlement resolution

Configured via environment variables (stdio) or request headers (HTTP):

VariablePurpose
LONGEVITY_LICENSE_KEYThe customer's license key.
LONGEVITY_TIERForce premium or free (self-hosted / enterprise override).
LONGEVITY_VALID_KEYSComma-separated allowlist of keys treated as valid premium (manual provisioning / testing).
LONGEVITY_LICENSE_VERIFY_URLOptional HTTP endpoint for remote key verification. When set, keys are validated against this service instead of locally.

A locally-issued key matches the format OAK-XXXX-XXXX-XXXX. For production, point LONGEVITY_LICENSE_VERIFY_URL at your billing webhook; it should accept { "key": "..." } and return { "valid": true, "tier": "premium", "expiresAt": "..." }.

The verification layer lives entirely in src/licensing.ts behind a LicenseProvider interface — swap the implementation without touching any tool.


Project structure

longevity-mcp-server/├── src/│   ├── index.ts          # stdio entry point (Claude Desktop / Code)│   ├── http.ts           # Streamable HTTP entry point (remote hosting)│   ├── server.ts         # builds the MCP server + tier gating│   ├── licensing.ts      # free/premium entitlement (pluggable)│   ├── data.ts           # data loading + medication resolver│   ├── types.ts          # clinical data types│   ├── tools/            # one file per MCP tool (9 tools)│   └── data/             # clinical data (JSON)│       ├── categories.json│       ├── medications.json│       ├── dosing.json│       ├── contraindications.json│       ├── interactions.json│       ├── labs.json│       ├── fda.json│       └── pathways.json├── scripts/│   ├── copy-assets.mjs   # copy JSON into dist/ at build│   └── smoke-test.mjs    # end-to-end MCP client/server test├── examples/│   └── claude_desktop_config.json├── package.json├── tsconfig.json├── LICENSE└── README.md

Data model

The clinical data is hand-curated from standard pharmacology references and longevity-medicine practice (Endocrine Society / Menopause Society / ISSWSH guidance, FDA labeling and shortage/bulk-substance lists, and the peer-reviewed literature for off-label and investigational compounds). Each dataset is keyed by medication id:

  • medications.json — class, mechanism, formulations, candidate profile, schedule.
  • dosing.json — per-indication route / start / titration / maintenance / max / evidence grade.
  • contraindications.json — boxed warnings, absolute & relative contraindications (with machine-matchable condition keywords), cautions, pregnancy.
  • interactions.json — per-drug interaction rules (severity, effect, management).
  • labs.json — baseline panels and ongoing monitoring schedule.
  • fda.json — approval status, schedule, 503A/503B compounding considerations, approved uses, references.
  • pathways.json — 15 intake pathways mapping symptoms/goals → first-line + adjunct medications.

Because regulatory status (especially FDA drug-shortage listings and 503A bulk-substance eligibility for peptides) shifts frequently, treat get_fda_status output as a starting point and confirm against the current FDA database before compounding.


License

MIT © 2026 Keith Schmidt, MD — Oak Longevity Institute

The clinical reference content is provided for educational and decision-support purposes only and does not constitute medical advice. See the disclaimer in LICENSE.

来源:README.md,提交 5ee072e

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。