- OpenMM MCP Server
OpenMM MCP Server
OpenMM, an open-source platform for molecular dynamics (MD) simulations, is supported by an MCP server that offers a structured communication interface for task submission, management, and execution.
Content
OpenMM MCP Server
🧬 OpenMM & Abacus MCP Server
A comprehensive Model Context Protocol (MCP) server for molecular dynamics simulations using OpenMM and DFT calculations with Abacus. This server provides a natural language interface for complex molecular simulations through LLM integration.
✨ Features
- Complete OpenMM Integration: Support for all OpenMM features including advanced integrators, barostats, and constraints
- DFT Calculations: Abacus DFT engine integration for quantum mechanical calculations
- Pre-configured Templates: Ready-to-use setups for protein simulations, membrane systems, and more
- Advanced Sampling: Metadynamics, free energy calculations, and enhanced sampling methods
- GPU Acceleration: CUDA and OpenCL platform support for high-performance computing
- Task Management: Asynchronous task execution with persistence and monitoring
- Natural Language Interface: Interact with complex simulations using simple English commands
🚀 Quick Start
Installation
# Clone the repository
git clone <repository_url>
cd openmm-mcp-server
# Install dependencies
pip install -r requirements.txt
# Optional: Install OpenMM for actual simulations
conda install -c conda-forge openmm
# Test installation
python test_mcp_server.py
Roo Code Integration
Add to your Code/Cline/Claude MCP settings:
{
"mcpServers": {
"openmm-server": {
"command": "python",
"args": ["run_openmm_server.py"],
"cwd": "path-to\\openmm-mcp-server",
"alwaysAllow": [
"create_md_simulation",
"create_advanced_md_simulation",
"setup_protein_simulation",
"setup_membrane_simulation",
"create_dft_calculation",
"control_simulation",
"get_task_status",
"list_all_tasks",
"analyze_results"
]
}
}
}
Important: Replace the path with your actual project path!
🛠️ Available Tools
Basic Tools
create_md_simulation- Create simple MD simulationscreate_dft_calculation- Create DFT calculationscontrol_simulation- Control simulation execution (start/stop/pause)get_task_status- Check task statuslist_all_tasks- List all tasksanalyze_results- Analyze simulation results
Advanced Tools
create_advanced_md_simulation- Full OpenMM feature support (50+ parameters)setup_protein_simulation- Pre-configured protein simulation templatessetup_membrane_simulation- Membrane protein simulation setup
💬 Usage Examples
Simple Water Simulation
"Run a molecular dynamics simulation of a water molecule at 300K for 10000 steps"
Advanced Protein Simulation
"Set up a protein production simulation for 100 nanoseconds at physiological temperature 310K, using Amber19 force field with TIP3P-FB water model, 0.15M salt concentration, and GPU acceleration"
Membrane Protein Simulation
"Create a POPC membrane protein simulation for 50 nanoseconds with surface tension control"
📊 OpenMM Parameters Reference
Integrators
LangevinMiddle- Langevin middle integrator (recommended)Verlet- Verlet integrator (NVE ensemble)Brownian- Brownian dynamicsVariableLangevin- Variable step size LangevinVariableVerlet- Variable step size VerletNoseHoover- Nose-Hoover thermostat
Force Fields
- Amber14:
["amber14-all.xml", "amber14/tip3pfb.xml"] - Amber19:
["amber19-all.xml", "amber19/tip3pfb.xml"] - CHARMM36:
["charmm36_2024.xml", "charmm36/water.xml"]
Water Models
tip3p- TIP3P water modeltip3pfb- TIP3P-FB water model (recommended)tip4pew- TIP4P-Ew water modelspce- SPC/E water model
Platforms
CUDA- NVIDIA GPU (fastest)OpenCL- General GPUCPU- CPU computationReference- Reference implementation
Nonbonded Methods
PME- Particle Mesh Ewald (recommended for periodic systems)NoCutoff- No cutoff (small systems)CutoffNonPeriodic- Non-periodic cutoffCutoffPeriodic- Periodic cutoffEwald- Traditional Ewald summation
Constraints
None- No constraintsHBonds- Hydrogen bond constraints (recommended)AllBonds- All bond constraintsHAngles- Hydrogen angle constraints
Barostats
MonteCarloBarostat- Isotropic pressure controlMonteCarloAnisotropicBarostat- Anisotropic pressure controlMonteCarloMembraneBarostat- Membrane system pressure control
Precision
mixed- Mixed precision (recommended)single- Single precisiondouble- Double precision
🔧 Configuration
Environment variables:
export TASK_DATA_DIR="./simulation_data"
export MAX_CONCURRENT_TASKS=4
export DEFAULT_OPENMM_PLATFORM="CUDA"
export LOG_LEVEL="INFO"
export LOG_FILE="./mcp_server.log"
📁 Project Structure
openmm-mcp-server/
├── run_openmm_server.py # Startup script
├── test_mcp_server.py # Test script
├── requirements.txt # Dependencies
├── README.md # English documentation
├── README_CN.md # Chinese documentation
├── src/
│ ├── server_new.py # Main server
│ ├── advanced_md_tools.py # Advanced MD tools
│ ├── task_manager.py # Task management
│ ├── openmm_engine.py # OpenMM engine
│ ├── abacus_engine.py # Abacus DFT engine
│ ├── config.py # Configuration management
│ ├── tools/ # MCP tool implementations
│ ├── resources/ # MCP resource implementations
│ └── utils/ # Utility functions
├── tests/ # Test files
├── examples/ # Example code
├── docs/ # Documentation
└── task_data/ # Task data directory (auto-created)
📚 Additional Documentation
- Installation Guide - Detailed installation instructions
- Usage Guide - Comprehensive usage examples
- Roo Code Integration - Detailed integration guide
- OpenMM Parameters - Complete parameter reference
- Project Analysis - Technical analysis and improvements
🔍 Troubleshooting
Common Issues
-
"OpenMM not found" warning
- This is normal, server will run in mock mode
- For actual simulations, install OpenMM:
conda install -c conda-forge openmm
-
"command not found" error
- Check if Python is in PATH
- Verify project path is correct
- Try using absolute paths
-
Permission errors
- Ensure read/write permissions for project directory
- Check if task_data directory is writable
Verify Configuration
# Test server startup
python run_openmm_server.py
# Test MCP functionality
python test_mcp_server.py
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
🆘 Support
If you encounter any issues:
- Run the test script:
python test_mcp_server.py - Review the documentation
- Check log files (if configured)
- Submit an issue on GitHub
📄 License
This project is licensed under the GNU General Public License v3.0.
Happy simulating! 🎉
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Playwright McpPlaywright MCP server
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Tavily Mcp
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
ChatWiseThe second fastest AI chatbot™
Serper MCP ServerA Serper MCP Server
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题;
Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
WindsurfThe new purpose-built IDE to harness magic
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
CursorThe AI Code Editor
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
DeepChatYour AI Partner on Desktop
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
Amap Maps高德地图官方 MCP Server