NCCN Guidelines MCP Server
A Model Context Protocol server that provides access to National Comprehensive Cancer Network clinical guidelines through direct PDF reading rather than RAG for increased accuracy.
README Documentation
🏥 NCCN Guidelines MCP Server
A Model Context Protocol (MCP) server that provides access to NCCN (National Comprehensive Cancer Network) clinical guidelines.
🔬 How It Works
This project follows a systematic approach to provide accurate medical guidance:
- 🧠 Problem Analysis: Understands the clinical question or scenario
- 📋 Guidelines Retrieval: Searches the NCCN index for relevant guidelines
- 📄 Page-by-Page Reading: Downloads and extracts specific pages from guidelines
- 🎯 Evidence-Based Response: Provides answers based on the extracted content
💡 Note: This system does not use RAG (Retrieval-Augmented Generation) to ensure accuracy. Instead, it reads guidelines directly, which may result in longer response times during index initialization and PDF downloading/reading, but provides more reliable and precise medical guidance.
✨ Features
- 📚 Guidelines Index: Automatically fetches and maintains an up-to-date index of NCCN guidelines
- ⬇️ PDF Download: Downloads NCCN guideline PDFs with authentication support
- 📝 Content Extraction: Extracts specific pages from PDF documents with layout preservation
- 🚀 Smart Caching: Index is cached for 7 days to minimize server load
🛠️ Installation
- Clone the repository:
git clone https://github.com/gscfwid/NCCN_guidelines_MCP
cd NCCN_guidelines_MCP
- Install dependencies using uv:
uv sync
⚙️ Configuration
🔧 Configure Client (Note: Supports only agents, such as Cursor, Cline, Claude desktop, etc.)
⚠️ Important: Claude desktop may warn about insufficient context length when running this MCP.
Add this to your Client configuration:
Configuration with Environment Variables
{
"mcpServers": {
"nccn-guidelines": {
"command": "uv",
"args": ["--directory", "<abslute_direction_of_NCCN_guidelines_MCP>", "run", "server.py"],
"env": {
"NCCN_USERNAME": "<your_nccn_username>",
"NCCN_PASSWORD": "<your_nccn_password>"
}
}
}
}
⚠️ Important Notes
- 👤 NCCN Account Registration: Please note that the NCCN username and password mentioned above must be registered on the official NCCN website.
- 🚀 First-time Setup: When you first start the MCP server, it needs to generate the YAML index of NCCN guidelines. This process takes 1-2 minutes, so please wait before attempting to use the server.
- ⏱️ Response Times: Due to the non-RAG approach for accuracy, expect longer response times during guideline downloading and PDF reading processes.
💬 Prompts
To have better response, please add the prompt in the file of prompt.md
to the instruction of your Agent Client before your Question.
🛠️ Available Tools
-
📊 get_index: Get the raw contents of the NCCN guidelines index YAML file.
-
📥 download_pdf: Download NCCN guideline PDFs
url
: PDF URL to downloadfilename
(optional): Custom filenameusername
(optional): NCCN login username (defaults to NCCN_USERNAME env var)password
(optional): NCCN login password (defaults to NCCN_PASSWORD env var)
-
📖 extract_content: Extract content from PDF pages
pdf_path
: Path to PDF filepages
(optional): Comma-separated page numbers (e.g., "1,3,5-7")
💡 Usage Example
Here are some example questions you can ask:
- 🔬 What are the available first-line immunotherapy options for ES-SCLC?
- 🎯 What is the initial chemotherapy for triple-negative breast cancer?
- 🧬 What are the immunotherapy options for neuroendocrine tumors?