
Mychart
io.github.kriskraw80由 GitHub 账号 kriskraw80 发布v1.0.0更新于 Oct 24, 2026
Connects to Epic MyChart patient portals: interactive login, list and download your own test results
概览
让助手登录你的 Epic MyChart 患者门户,列出你自己的检查结果,并以 PDF 形式阅读或下载。
- 可以做什么
- 使用 Playwright 驱动 MyChart 网站,访问你自己的健康记录。工具涵盖设置服务商网址、打开可见浏览器进行交互式登录和 MFA、检查会话状态、列出全部检查结果并分配编号、读取单条结果的数值与参考范围、将结果下载为 PDF、截取调试截图以及关闭浏览器。会话会保存到磁盘,之后可在门户会话过期前以无头方式运行。
- 适用场景
- 当你希望助手帮你查看某个没有简单公开登录 API 的 MyChart 门户中的个人化验结果时适用。适合个人偶尔使用,而非临床或组织级工作流程。
- 运行要求
- 以 npm 包(mychart-mcp-server)通过 stdio 在本地运行,需要 Node.js 以及 Playwright 的 Chromium,或系统安装的 Chrome、Edge。需要 MyChart 门户网址,可通过 mychart_set_provider 工具或 MYCHART_URL 环境变量提供。可选的 MYCHART_USERNAME 和 MYCHART_PASSWORD 可预填登录表单。需要能访问该门户的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Mychart,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
MyChart MCP Server
An MCP (Model Context Protocol) server that connects to any Epic MyChart patient portal to log in, list your test results, and download them as PDFs — so an AI assistant can help you understand your own lab work.
Epic offers no simple public login API (the official FHIR route requires per-organization app registration), so this server drives the MyChart website with Playwright:
- Login is interactive and private — a visible browser window opens; you type your username/password and complete MFA yourself. Credentials never pass through the AI, the MCP protocol, or this server's tool arguments.
- Session persists — cookies (including MyChart's session-scoped auth cookie) are exported to disk after login and replayed on every launch, so subsequent operations run headless until the portal expires the session server-side.
- Works across MyChart versions — scraping tries the modern SPA routes (
/app/test-results) first, then classic routes, with permissive selectors.
Tools
Installation
Or from source:
Register with Claude Code / Claude Desktop
(Or point command at node with args: ["<path>/dist/index.js"] for a source checkout.) Restart your MCP client after config changes.
Optional environment variables
Typical flow
mychart_set_providerwith your portal URL (e.g.https://mychart.example-health.org/MyChart)mychart_login→ sign in + MFA in the window that opens (check "Remember this device")mychart_list_test_results→ returnsr1, r2, ...mychart_get_test_result r1ormychart_download_test_result r1
Data locations
Everything lives in ~/.mychart-mcp/ — keep it out of synced folders (the Chromium profile does not tolerate file sync):
config.json— provider URLbrowser-profile/— persistent Chromium profilestorage-state.json— exported session cookies (replayed on each launch)results-cache.json— id → result-URL map from the last list calldownloads/— PDFs and screenshots
Notes & limitations
- Personal use, no warranty. This tool automates the MyChart web portal to access your own health records — a right you have under HIPAA — but portal scraping is not officially sanctioned by Epic. Use at your own discretion.
- MyChart's DOM varies by health system and Epic version. If listing finds nothing, use
mychart_screenshotto see the rendered page; selectors may need a tweak for your provider. Some systems host MyChart on non-obvious domains (e.g.secure.<org>.orgrather thanmychart.<org>.org) — paste the URL straight from your browser. - The server prefers your system-installed Chrome (then Edge, then Playwright's bundled Chromium) — real Chrome's app-bound cookie encryption requires the whole profile to stay on one browser brand, and some Windows machines can't run the bundled build.
- PDF download renders the result detail page via headless Chrome (
page.pdf), which is version-independent, rather than hunting for per-version "Download" buttons. - Sessions expire server-side after idle time; just run
mychart_loginagain. login-helper.mjs,run-direct.mjs, andrun-batch.mjsdrive the builtdist/code directly — handy for re-login or batch fetching without an MCP client in the loop.
License
MIT
来源:README.md,提交 99e2a65
工具
0版本历史
1- v1.0.0最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分