A specialized Model Context Protocol (MCP) server for Claude Desktop that enhances AI-assisted medical learning by fetching and processing educational resources from PubMed, NCBI Bookshelf, and user-provided documents.
The MedAdapt Content Server integrates with Claude Desktop to provide tools for searching, retrieving, and analyzing medical education content. It serves as a bridge between Claude and medical knowledge sources, allowing for enhanced AI-assisted learning experiences.
# Clone the repository
git clone https://github.com/ryoureddy/medadapt-content-server.git
cd medadapt-content-server
# Install dependencies
pip install -r requirements.txt
# Run the server
python content_server.py
git clone https://github.com/ryoureddy/medadapt-content-server.git
cd medadapt-content-server
python -m venv .venv
source .venv/bin/activate # On Windows, use: .venv\Scripts\activate
pip install -r requirements.txt
.env
file based on .env.example
python content_server.py
claude_desktop_config.json
file located in:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.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"
}
}
}
}
Replace /path/to/python
with your actual Python path (e.g., /opt/anaconda3/bin/python
or C:\Python311\python.exe
).
Replace /path/to/medadapt-content-server/
with the absolute path to your cloned repository.
Important: The
DB_PATH
environment variable ensures the database file is created and accessed with an absolute path, preventing common file access errors.
python populate_topics.py
Run tests to verify everything is working:
python test_server.py
User prompt to Claude:
I'd like to learn about the cardiac cycle. Can you provide a big picture overview and help me understand the key concepts?
User prompt to Claude:
I need to find recent research articles about COVID-19 treatment options. Can you help me find relevant resources?
User prompt to Claude:
I'm a second-year medical student studying neurology. Can you create a learning plan for understanding stroke pathophysiology?
The server provides the following tools to Claude:
search_medical_content
: Search for medical content with filtersget_resource_content
: Retrieve complete content for a specific resourceget_topic_overview
: Generate comprehensive overview of a medical topicsuggest_learning_resources
: Get personalized resource recommendationsimport_user_document
: Upload user-provided learning materialsgenerate_learning_plan
: Create structured learning plan with objectivesextract_article_key_points
: Extract key findings from medical articlesDatabase Connection Error
sqlite3.OperationalError: unable to open database file
DB_PATH
environment variable is set correctly in your Claude Desktop configuration, pointing to an absolute path where the application has write permissions.File Path Error
No such file or directory
errorsAPI Rate Limiting
.env
fileClaude Desktop Connection
medadapt-content-server/
│
├── content_server.py # Main MCP server implementation
├── database.py # SQLite database interface
├── pubmed_utils.py # PubMed API utilities
├── bookshelf_utils.py # NCBI Bookshelf utilities
├── populate_topics.py # Script to populate initial topic data
├── test_server.py # Test script
├── requirements.txt # Python dependencies
├── .env.example # Example environment variables
└── README.md # Documentation
This project is licensed under the MIT License - see the LICENSE file for details.
Seamless access to top MCP servers powering the future of AI integration.