Token导航 LogoToken导航

MCP Server · AI代理

Jhe Notebook

JHE Notebook是一个通过模型上下文协议(MCP)连接Jupyter笔记本与JupyterHealth Exchange服务器的工具,利用NRP托管的Qwen3模型实现基于LLM的健康数据查询。

stdio官方级别未说明来源级核验工具 7
Jupyter NotebookPython数据分析

快速开始

作者 / 组织
the-commons-project
提供方
the-commons-project
运行时
Python

工具数量

7

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Jhe Notebook 属于AI代理类 MCP Server,公开资料标注 7 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 OAuth 授权。

分类

AI代理

传输方式

stdio

认证方式

OAuth 授权

部署方式

公开资料未说明

安装与配置

安装命令

python3 --version # Should be 3.10 or higher

客户端配置示例

{
  "mcpServers": {
    "jhe-notebook": {
      "command": "python3",
      "args": [
        "--version",
        "#",
        "Should",
        "be",
        "3.10",
        "or",
        "higher"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 7 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

JHE 笔记本:集成大型语言模型的 Jupyter Health Exchange MCP 客户端

这个项目展示了如何使用模型上下文协议(MCP)将Jupyter笔记本连接到JupyterHealth Exchange服务器,从而能够利用NRP托管的Qwen3模型对健康数据进行大型语言模型(LLM)驱动的查询。

概述

JHE笔记本实现连接:

  • MCP 客户端 → JupyterHealth Exchange MCP 服务器 (本地,端口8001)
  • OpenAI 客户端 → NRP Qwen3 大语言模型(LLM) (由NRP主办)
  • 集成大型语言模型(LLM)使用MCP工具查询健康数据并以自然语言作出回应

建筑学

┌─────────────────┐
│ Jupyter Notebook│
│  (This Project) │
└────┬────────┬───┘
     │        │
     │        └──────────────┐
     │                       │
     ▼                       ▼
┌─────────────────┐    ┌──────────────┐
│  MCP Client     │    │ OpenAI Client│
│  (Python SDK)   │    │  (NRP API)   │
└────┬────────────┘    └──────┬───────┘
     │                        │
     │                        │
     ▼                        ▼
┌─────────────────┐    ┌──────────────┐
│ JHE MCP Server  │    │ NRP Qwen3    │
│ localhost:8001  │    │   Model      │
└────┬────────────┘    └──────────────┘
     │
     ▼
┌─────────────────┐
│ JupyterHealth   │
│ Exchange (JHE)  │
│ localhost:8000  │
└─────────────────┘

先决条件

0. 带有MCP支持的JupyterHealth Exchange

重要的您需要启用MCP的JupyterHealth Exchange版本。

克隆JupyterHealth Exchange仓库并检出MCP功能分支:

git clone https://github.com/jupyterhealth/jupyterhealth-exchange.git
cd jupyterhealth-exchange

# TODO: Update this when PR is merged - for now use the feature branch
git fetch origin pull/XXX/head:mcp-support  # Replace XXX with actual PR number
git checkout mcp-support

按照JupyterHealth Exchange的设置说明进行操作:

  • 安装依赖项
  • 配置数据库
  • 种子测试数据

1. Python 3.10或更高版本

重要的MCP Python SDK 需要 Python 3.10 或更高版本。

检查您的Python版本:

python3 --version  # Should be 3.10 or higher

如有需要,请使用特定版本的Python:

# macOS with Homebrew
brew install python@3.11

# Use specific Python version for venv
python3.11 -m venv .venv

2. 运行中的基础设施

Jupyter健康交换服务器 必须正在运行:

cd /path/to/jupyterhealth-exchange
.venv/bin/python manage.py runserver

MCP服务器 必须正在运行:

cd /path/to/jupyterhealth-exchange
./start_mcp_server.sh

验证服务器状态是否正常:

curl http://localhost:8000/admin/  # Should return 200
curl http://localhost:8001/health  # Should return {"status": "healthy"}

3. NRP API 访问

您需要从国家研究平台获取一个API密钥:

  1. 访问 https://portal.nrp.ai/
  2. 创建账户或登录
  3. 生成一个API令牌
  4. 记下模型名称(例如。, qwen3)

4. 异步事件循环兼容性

重要的MCP Python SDK 需要 nest-asyncio 在Jupyter笔记本中工作:

  • Jupyter 运行一个活跃的 asyncio 事件循环
  • MCP SDK 广泛使用了 async/await
  • nest-asyncio 通过打补丁来允许嵌套的异步操作

这是通过requirements.txt文件自动安装的,并在笔记本的第一个单元格中应用。

安全提示所有查询都通过MCP服务器进行,该服务器强制执行OAuth身份验证和权限过滤。切勿直接查询数据库——MCP服务器是确保安全的守门人,它保证:

  • 使用JWT验证的OAuth认证
  • 根据ID令牌声明中的study_ids进行权限过滤
  • SQL注入防护
  • 仅限只读操作

5. OAuth 认证

MCP服务器使用OAuth与JHE进行身份验证。您应该已经完成了OAuth流程(令牌已缓存于 ~/.jhe_mcp/token_cache.json)。 如果未进行,则笔记本将引导您完成身份验证。

设置

1. 克隆此仓库

git clone https://github.com/the-commons-project/jhe-notebook.git
cd jhe-notebook

2. 创建虚拟环境

重要的使用 Python 3.10+(例如,python3.11)

# Use Python 3.11 (or 3.10+)
python3.11 -m venv .venv

# Activate the environment
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

3. 安装依赖项

pip install -r requirements.txt

4. 配置环境变量

cp .env.example .env
# Edit .env and add your NRP API key

示例 .env:

JHE_MCP_URL=http://localhost:8001/sse
NRP_BASE_URL=https://ellm.nrp-nautilus.io/v1
NRP_API_KEY=your_actual_api_key_here
NRP_MODEL=qwen3

5. 启动Jupyter

jupyter notebook

导航至 notebooks/jhe_mcp_llm_demo.ipynb 并打开它。

使用方法

演示笔记本显示:

  1. MCP 连接通过SSE连接到本地JHE MCP服务器
  2. 工具发现列出可用的MCP工具(get_study_count、list_studies、execute_filtered_query等)
  3. 大语言模型(LLM)集成使用Qwen3来解析自然语言查询
  4. 函数调用LLM决定调用哪个MCP工具
  5. 数据检索执行根据用户权限过滤的SQL查询
  6. 自然语言响应大型语言模型(LLM)以人类可理解的方式呈现结果

示例查询

# Simple query
"How many studies are in the system?"

# Complex health data query
"Show me all blood pressure readings for patient 40001 on January 1, 2025,
and calculate the average systolic pressure"

# Time-series aggregation
"Give me hourly averages and standard deviations for patient 40001's
blood pressure data over the first week of January"

可用的MCP工具

JHE MCP服务器提供以下工具:

  • 获取学习次数统计已认证用户可访问的研究数量
  • 列出研究(或“研究列表”)列出所有研究,包括其ID、名称和组织机构
  • 获取患者人口统计学信息获取特定研究的患者人口统计学信息
  • 获取研究元数据获取关于一项研究的详细元数据
  • 获取患者观察数据获取特定患者的FHIR观测数据
  • 获取数据库模式获取包含示例的全面数据库架构
  • 执行过滤查询执行任意SQL SELECT查询(根据权限自动过滤)

安全与权限

  • 所有MCP工具调用均通过OAuth进行身份验证
  • SQL查询会根据用户权限自动过滤
  • 用户只能访问他们被授权查看的研究/患者信息
  • 仅允许SELECT查询(不允许INSERT/UPDATE/DELETE)
  • 危险的SQL操作已被阻止

故障排除

单元格2中的取消错误

asyncio.CancelledError: Cancelled via cancel scope...

解决方案确保单元格1中包含nest_asyncio的设置:

import nest_asyncio
nest_asyncio.apply()

如果你看到这个错误,请检查单元格1是否已运行并且包含了nest_asyncio代码。参见 笔记本更新说明.md 以获取详细说明。

MCP连接失败

Error: Connection refused to localhost:8001

解决方案确保MCP服务器正在运行:

curl http://localhost:8001/health

认证错误

Error: Authentication failed

解决方案通过删除令牌缓存进行重新认证:

rm ~/.jhe_mcp/token_cache.json

然后重新启动笔记本 - 这将触发OAuth流程。

NRP API 错误

Error: 401 Unauthorized

解决方案检查你的 .env 文件已正确(无误) NRP_API_KEY.

未返回数据

"row_count": 0

解决方案:

  1. 确认您已以具有学习访问权限的用户身份登录(例如,mary@example.com)
  2. 检查数据库中是否存在测试数据
  3. 确保患者ID正确(例如,40001)

发展

项目结构

jhe-notebook/
├── README.md              # This file
├── requirements.txt       # Python dependencies
├── .env.example          # Environment variable template
├── .env                  # Your actual config (gitignored)
├── .gitignore            # Git ignore rules
└── notebooks/
    └── jhe_mcp_llm_demo.ipynb  # Main demonstration notebook

添加新笔记本

创建新的 .ipynb 文件在(某个地方/文件夹中) notebooks/ 目录。它们将自动访问相同的依赖项和配置。

做出贡献

这是一个展示MCP(可能是指某种特定技术或系统,如“多组件平台”或根据上下文具体定义)集成模式的演示项目。请随意:

  • 添加新的示例笔记本
  • 创建辅助工具
  • 改进错误处理
  • 添加数据可视化

仓库(或存储库)

此项目将发布到The Commons Project的GitHub组织中,地址为: https://github.com/the-commons-project/jhe-notebook

许可证

Apache 2.0(与其他Commons项目仓库相同)

资源

工具与能力

工具数量

7

资源数量

0

提示词数量

0

能力标签

Jupyter Notebook本地部署健康数据LLM集成Jupyter笔记本MCP协议数据查询

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 7 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备OAuth 授权,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到OAuth 授权的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Jhe Notebook

MCP World · 本页

7stdio有1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Jhe Notebook 怎么安装?

公开资料给出的安装命令是 python3 --version # Should be 3.10 or higher,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Jhe Notebook 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Jhe Notebook 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Jhe Notebook 需要 API Key 吗?

公开资料标注的认证方式是OAuth 授权,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Jhe Notebook 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP