vlad-ds/dna-analysis-mcp
If you are the rightful owner of dna-analysis-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The DNA Analysis Desktop Extension (DXT) is a Model Context Protocol (MCP) server designed for analyzing DNA data with a focus on privacy protection. It is packaged as a Desktop Extension for easy installation across DXT-compatible applications.
list_subjects
Lists all available DNA subjects with optional regex filtering.
get_subject_info
Retrieves personal information about a specific subject.
get_test_info
Gets metadata about the DNA test for a specific subject.
query_snp_data
Queries SNP data for specific RSIDs (maximum 10 per query).
DNA Analysis Desktop Extension (DXT)
ā ļø IMPORTANT DISCLAIMER: This tool is for educational and personal research purposes only. It is not intended for medical diagnosis, treatment decisions, or clinical use. Always consult with qualified healthcare professionals and genetic counselors for any health-related questions or decisions. The authors assume no responsibility for any actions taken based on the information provided by this tool.
A Model Context Protocol (MCP) server for analyzing DNA data with privacy protection, packaged as a Desktop Extension (DXT) for easy installation across DXT-compatible applications.
𧬠Features
- List DNA Subjects: Browse available DNA test subjects in your collection
- Subject Information: Get personal information about individuals
- Test Metadata: Access DNA test details (company, date, array version, etc.)
- SNP Queries: Query specific genetic variants by RSID (max 10 per query for privacy)
- Privacy-First: All data processing happens locally on your machine
- Cross-Platform: Works on macOS, Windows, and Linux
š¦ Installation
Quick Install (Recommended)
- Download the latest .dxt file from GitHub Releases
- Simply double-click on
dna-analysis-mcp.dxt
to install automatically in Claude Desktop
Alternative Installation
If the double-click method doesn't work:
-
Download the .dxt file
- Get
dna-analysis-mcp.dxt
from the GitHub releases - Or build from source (see Development section below)
- Get
-
Install via Claude Desktop
- Open Claude Desktop
- Go to Settings ā Extensions
- Drag the .dxt file on the window
Prerequisites
- Node.js 16.0.0 or higher (automatically handled by the .dxt file)
- Claude Desktop or other DXT-compatible application
Manual Claude Desktop Integration
If not using DXT, you can manually add to claude_desktop_config.json
:
{
"mcpServers": {
"dna-analysis": {
"command": "node",
"args": ["/ABSOLUTE_PATH/dna-analysis-mcp/server/index.js"],
"env": {
"DNA_PROFILES_DIRECTORY": "~/dna-profiles"
}
}
}
}
š Data Setup
Creating Your DNA Profiles Directory
After installation, you need to create the DNA profiles directory and add your data:
# Create the main directory
mkdir -p ~/dna-profiles
# Create your first subject folder (replace 'john_doe' with desired name)
mkdir -p ~/dna-profiles/john_doe
Directory Structure
DNA profiles are organized in the configured directory (default: ~/dna-profiles/
):
~/dna-profiles/
āāā john_doe/
ā āāā snp.txt # Required: Raw genetic data
ā āāā subject_info.txt # Optional: Personal information
ā āāā test_info.txt # Optional: Test metadata
āāā jane_smith/
ā āāā snp.txt
ā āāā test_info.txt
āāā ...
AI-Assisted Setup from DNA Export Files
If you have a DNA export file from 23andMe, AncestryDNA, or other services, you can use an AI agent to automatically convert it to the correct format. Copy this prompt and share your DNA export file with an AI agent:
I have a DNA export file that I need to convert for use with the DNA Analysis MCP Server. Please help me:
1. Analyze my DNA export file and convert it to the required format:
- Create a tab-delimited file called `snp.txt` with this exact header: `rsid chromosome position allele1 allele2`
- Extract all SNP data rows that have valid RSIDs (format: rs followed by numbers)
- Ensure proper tab separation between columns
2. Extract any available metadata and create these optional files:
- `subject_info.txt` - Any personal information (name, age, gender, ethnicity, etc.)
- `test_info.txt` - Test details (company name, test date, array version, quality scores, etc.)
3. Set up the directory structure:
- Create `~/dna-profiles/[subject_name]/` directory (use appropriate subject name)
- Place all three files in that directory
- Create the main `~/dna-profiles/` directory if it doesn't exist
Please process my DNA export file and create the properly formatted files in the correct directory structure.
Manual Example Setup
Alternatively, here's how to set up your first subject with example data manually:
# Create example subject folder
mkdir -p ~/dna-profiles/john_doe
# Create the required SNP data file
cat > ~/dna-profiles/john_doe/snp.txt << 'EOF'
rsid chromosome position allele1 allele2
rs3131972 1 230710048 A G
rs1815739 11 66328095 C T
rs4988235 2 135851076 T T
EOF
# Create optional subject info file
cat > ~/dna-profiles/john_doe/subject_info.txt << 'EOF'
Name: John Doe
Age: 35
Gender: Male
Ethnicity: European
Notes: Personal genetic analysis
EOF
# Create optional test info file
cat > ~/dna-profiles/john_doe/test_info.txt << 'EOF'
Company: 23andMe
Test Date: 2024-01-15
Array Version: v5
Quality Score: 99.2%
Total SNPs: 650000
EOF
Required Files
snp.txt
- Tab-delimited genetic data compatible with major DNA testing companies:
rsid chromosome position allele1 allele2
rs3131972 1 230710048 A G
rs1815739 11 66328095 C T
rs4988235 2 135851076 T T
Optional Files
subject_info.txt
- Demographics, background, notes about the individualtest_info.txt
- Test company, date, array version, quality metrics
š ļø Available Tools
list_subjects
Lists all available DNA subjects with optional regex filtering.
Parameters:
pattern
(optional): Regex pattern to filter subject names
get_subject_info
Retrieves personal information about a specific subject.
Parameters:
subject_name
(required): Name of the subject
get_test_info
Gets metadata about the DNA test for a specific subject.
Parameters:
subject_name
(required): Name of the subject
query_snp_data
Queries SNP data for specific RSIDs (maximum 10 per query).
Parameters:
subject_name
(required): Name of the subjectrsids
(required): Single RSID string or array of RSIDs
š Privacy & Security
Local-Only Processing
- ā All DNA data remains on your computer
- ā No data transmission to external servers
- ā AI sees only requested SNP data, not entire genome
- ā No bulk data export capabilities
Built-in Protections
- Query Limits: Maximum 10 RSIDs per query
- File Size Limits: 100MB maximum file size protection
- Timeout Protection: 30-second operation timeouts
- Input Validation: Strict RSID format validation
š Development
Building the .dxt file from Source
If you want to build your own .dxt file:
# Clone the repository
git clone https://github.com/vlad-ds/dna-analysis-mcp.git
cd dna-analysis-mcp
# Install dependencies
npm install
# Build the TypeScript source
npm run build
# Create the .dxt file
npx @anthropic-ai/dxt pack
This will create dna-analysis-mcp.dxt
in the project root, ready for installation.
Development Commands
# Development build and run
npm run dev
# Clean build artifacts
npm run clean
# Test the server manually
node server/index.js
Testing
# Basic functionality test
npm test
# Manual testing with sample data
node server/index.js
š¤ Author
Vlad Gheorghe
š Support
- Report issues on GitHub Issues
ā ļø Important Privacy Notice: This extension is designed for personal use with your own genetic data. Always ensure you have proper consent and legal authority to analyze any DNA data you process.