r

ryoureddy

@ryoureddy/medadapt-content-server
0 Stars 345 次浏览 ryoureddy 更新于 2026-08-23
该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

MedAdapt 内容服务器

一个专为 Claude 桌面版设计的模型上下文协议(MCP)服务器,通过从 PubMed、NCBI 书架和用户提供的文档中获取和处理教育资源来增强AI辅助医学学习。

概述

MedAdapt 内容服务器与 Claude 桌面版集成,提供搜索、检索和分析医学教育内容的工具。它作为 Claude 和医学知识来源之间的桥梁,允许实现增强的AI辅助学习体验。

快速开始

bash

克隆仓库

git clone https://github.com/ryoureddy/medadapt-content-server.git
cd medadapt-content-server

安装依赖

pip install -r requirements.txt

运行服务器

python content_server.py

功能

  • 内容搜索:跨多个来源搜索医学教育资源
  • 资源检索:获取完整的文章、书籍章节和用户文档
  • 主题概览:生成医学主题的全面概述
  • 学习资源推荐:根据主题和学生水平建议适当的学习资源
  • 学习计划:创建具有目标和资源的结构化学习计划
  • 内容分析:从医学资源中提取关键点、方法论和发现
  • 用户内容:导入并分析用户提供的文档

安装

标准安装

  1. 克隆仓库:
    bash
    git clone https://github.com/ryoureddy/medadapt-content-server.git
    cd medadapt-content-server

  2. 创建虚拟环境(可选但推荐):
    bash
    python -m venv .venv
    source .venv/bin/activate # 在 Windows 上使用: .venvScriptsactivate

  3. 安装依赖:
    bash
    pip install -r requirements.txt

  4. 配置(可选):

    • 获取 NCBI API 密钥以提高速率限制:https://ncbiinsights.ncbi.nlm.nih.gov/2017/11/02/new-api-keys-for-the-e-utilities/
    • 根据 .env.example 创建一个 .env 文件

使用

运行服务器

bash
python content_server.py

与 Claude 桌面版集成

  1. 打开 Claude 桌面版
  2. 转到设置 → 模型上下文协议 → 添加服务器
  3. 在您的 claude_desktop_config.json 文件中配置以下 JSON:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%Claudeclaude_desktop_config.json

json
{
"mcpServers": {
"medadapt": {
"command": "/path/to/python",
"args": [
"/path/to/medadapt-content-server/content_server.py"
],
"env": {
"DB_PATH": "/path/to/medadapt-content-server/medadapt_content.db"
}
}
}
}

/path/to/python 替换为您的实际 Python 路径(例如,/opt/anaconda3/bin/pythonC:Python311python.exe)。
/path/to/medadapt-content-server/ 替换为您克隆仓库的绝对路径。

重要提示DB_PATH 环境变量确保数据库文件使用绝对路径创建和访问,防止常见的文件访问错误。

填充初始主题映射

bash
python populate_topics.py

测试

运行测试以验证一切正常:
bash
python test_server.py

使用 Claude 的示例

场景 1:学习医学主题

用户向 Claude 提示:

我想了解心脏周期。你能给我一个总体概述,并帮助我理解关键概念吗?

场景 2:查找特定资源

用户向 Claude 提示:

我需要找到关于 COVID-19 治疗方案的最新研究文章。你能帮我找到相关资源吗?

场景 3:创建学习计划

用户向 Claude 提示:

我是一名二年级的医学生,正在学习神经学。你能为我创建一个关于中风病理生理学的学习计划吗?

可用工具

服务器为 Claude 提供以下工具:- search_medical_content: 通过筛选条件搜索医学内容

  • get_resource_content: 获取特定资源的完整内容
  • get_topic_overview: 生成医学主题的全面概述
  • suggest_learning_resources: 获取个性化的学习资源推荐
  • import_user_document: 上传用户提供的学习材料
  • generate_learning_plan: 创建带有目标的结构化学习计划
  • extract_article_key_points: 从医学文章中提取关键发现

故障排除

常见问题及解决方案

  1. 数据库连接错误

    • 症状: sqlite3.OperationalError: unable to open database file
    • 解决方案: 确保在您的Claude Desktop配置中正确设置了DB_PATH环境变量,指向应用程序具有写权限的绝对路径。
  2. 文件路径错误

    • 症状: No such file or directory 错误
    • 解决方案: 确保Claude Desktop配置中的所有路径都是没有额外引号或转义字符的绝对路径。
  3. API速率限制

    • 症状: 从PubMed或NCBI Bookshelf获取响应缓慢或失败
    • 解决方案: 获取一个NCBI API密钥并将其添加到您的.env文件中
  4. Claude Desktop连接

    • 症状: Claude无法连接到MCP服务器
    • 解决方案: 确认服务器正在终端窗口中运行,并且在Claude Desktop中正确配置

项目结构

medadapt-content-server/

├── content_server.py # 主MCP服务器实现
├── database.py # SQLite数据库接口
├── pubmed_utils.py # PubMed API工具
├── bookshelf_utils.py # NCBI Bookshelf工具
├── populate_topics.py # 脚本用于填充初始主题数据
├── test_server.py # 测试脚本
├── requirements.txt # Python依赖
├── .env.example # 示例环境变量
└── README.md # 文档

许可证

此项目根据MIT许可证发布 - 详情请参阅LICENSE文件。

致谢

  • NCBI提供对PubMed和Bookshelf API的访问
  • Anthropic为Claude和MCP集成能力的支持

相关 MCP 服务