Evolutionary coupling model training using PLMC via Docker
An MCP (Model Context Protocol) server for evolutionary coupling analysis with 2 core tools:
- Convert protein sequence alignments from A3M to A2M format
- Train PLMC evolutionary coupling models from sequence alignments
The fastest way to get started. A pre-built Docker image is automatically published to GitHub Container Registry on every release.
# Pull the latest image
docker pull ghcr.io/macromnex/plmc_mcp:latest
# Register with Claude Code (runs as current user to avoid permission issues)
claude mcp add plmc -- docker run -i --rm --user `id -u`:`id -g` -v `pwd`:`pwd` ghcr.io/macromnex/plmc_mcp:latestNote: Run from your project directory. `pwd` expands to the current working directory.
Requirements:
- Docker
- Claude Code installed
That's it! The PLMC MCP server is now available in Claude Code.
Build the image yourself and install it into Claude Code. Useful for customization or offline environments.
# Clone the repository
git clone https://github.com/MacromNex/plmc_mcp.git
cd plmc_mcp
# Build the Docker image
docker build -t plmc_mcp:latest .
# Register with Claude Code (runs as current user to avoid permission issues)
claude mcp add plmc -- docker run -i --rm --user `id -u`:`id -g` -v `pwd`:`pwd` plmc_mcp:latestNote: Run from your project directory. `pwd` expands to the current working directory.
Requirements:
- Docker
- Claude Code installed
- Git (to clone the repository)
About the Docker Flags:
-i— Interactive mode for Claude Code--rm— Automatically remove container after exit--user `id -u`:`id -g`— Runs the container as your current user, so output files are owned by you (not root)-v— Mounts your project directory so the container can access your data
After adding the MCP server, you can verify it's working:
# List registered MCP servers
claude mcp list
# You should see 'plmc' in the outputIn Claude Code, you can now use all 2 PLMC tools:
plmc_convert_a3m_to_a2mplmc_generate_model
- Detailed documentation: See detail.md for comprehensive guides on:
- Available MCP tools and parameters
- Local Python environment setup (alternative to Docker)
- Example workflows and use cases
- Troubleshooting
Once registered, you can use the PLMC tools directly in Claude Code. Here are some common workflows:
I have created an A3M file for subtilisin BPN' at /path/to/subtilisin.a3m. Can you help build an EV model using the plmc MCP and create it in /path/to/plmc/ directory? The wild-type sequence is at /path/to/wt.fasta.
I have an A3M alignment file at /path/to/protein.a3m from MMseqs2. Can you convert it to A2M format and remove query gaps using plmc_convert_a3m_to_a2m, saving to /path/to/protein.a2m?
I have an MSA in A3M format at /path/to/protein.a3m and wild-type sequence at /path/to/wt.fasta.
1. First convert the A3M to A2M format using plmc_convert_a3m_to_a2m
2. Then train a PLMC model using plmc_generate_model, saving parameters to /path/to/plmc/
Docker not found?
docker --version # Install Docker if missingClaude Code not found?
# Install Claude Code
npm install -g @anthropic-ai/claude-codeModel training failed?
- Ensure the A2M alignment file has the correct format (no query gaps)
- Verify the wild-type sequence matches the alignment focus sequence
- Check that the alignment has sufficient sequence diversity
MIT — Based on PLMC by Debbie Marks Lab.