gromacs-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gromacs-mcpSet up and run energy minimization for 1aki.pdb"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🧬 gromacs-mcp
Drive GROMACS from any MCP client, in natural language.
Build topologies, solvate, add ions, preprocess, run simulations in the background, and post-process trajectories — all through the Model Context Protocol.
Why
Setting up and running a molecular-dynamics simulation is a long, error-prone chain of
gmx sub-commands. gromacs-mcp exposes that pipeline as clean MCP tools so an LLM agent
(Claude Code, Claude Desktop, or any MCP client) can plan and run the whole workflow while
you supervise — without the agent ever blocking on a multi-hour mdrun.
Related MCP server: vmd-mcp
Features
Hybrid tool design — typed helpers for every common pipeline step plus a generic
run_gmxescape hatch for any othergmxsub-command.Non-blocking simulations —
mdrun_startlaunches in the background and returns a job id; poll progress (step / time / ns·day⁻¹ / ETA) withmdrun_status.Actionable errors — GROMACS
Fatal error:blocks are extracted into a dedicatederror_summaryfield, so the real cause survives output truncation.Project-scoped work dirs — each system lives in its own directory under a configurable root.
Sandboxed file access — tool file paths stay inside the selected work directory by default.
Zero-config discovery — finds
gmxonPATHautomatically (override withGMX_BIN).
Tools
Category | Tool | Purpose |
Introspect |
| GROMACS version / build / binary path |
| List files in a work directory | |
| Read an | |
| Write an | |
MDP templates |
| Write a safe energy-minimisation template |
| Write a safe NVT equilibration template | |
| Write a safe NPT equilibration template | |
| Write a safe production-MD template | |
| Check syntax and common MDP issues | |
Pipeline |
| Structure → topology + coordinates |
| Define the simulation box | |
| Fill the box with solvent | |
| Preprocess → run input ( | |
| Add neutralising / salt ions | |
| Trajectory PBC / centering / conversion | |
Analysis |
| Create/edit GROMACS index files |
| Extract energy terms from | |
| RMSD analysis | |
| RMSF analysis | |
| Radius-of-gyration analysis | |
| Hydrogen-bond analysis | |
| Solvent-accessible surface area | |
| Validate GROMACS binary/text artefacts | |
Simulation |
| Start a simulation in the background |
| Poll progress + log tail | |
| List all background jobs | |
| Terminate a job (writes checkpoint) | |
| Read captured background-job logs | |
| Remove finished job records | |
| Remove one job record | |
Escape hatch |
| Any other |
Requirements
GROMACS installed and
gmxrunnable (brew install gromacs, conda, or a source build).Python ≥ 3.10.
An MCP client (e.g. Claude Code or Claude Desktop).
Install & run
The recommended way is uv — no global install needed:
# Run straight from GitHub (or a local checkout)
uvx --from git+https://github.com/Alierkn/gromacs-mcp gromacs-mcppipx install git+https://github.com/Alierkn/gromacs-mcp # isolated, on PATH
# or
pip install git+https://github.com/Alierkn/gromacs-mcp
gromacs-mcp # starts the stdio serverConnect it to your MCP client
Claude Code
claude mcp add gromacs --scope user -- \
uvx --from git+https://github.com/Alierkn/gromacs-mcp gromacs-mcpThen check: claude mcp list → gromacs: … ✔ Connected.
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"gromacs": {
"command": "uvx",
"args": ["--from", "git+https://github.com/Alierkn/gromacs-mcp", "gromacs-mcp"],
"env": { "GMX_BIN": "/opt/homebrew/bin/gmx" }
}
}
}Configuration
Env var | Default | Meaning |
| auto ( | Path to the |
|
| Base dir for work directories |
| unset | Set to |
Relative workdir arguments resolve under GROMACS_MCP_ROOT; each subdirectory is one
"project" (system) holding its .gro / .top / .tpr / .log files.
By default, absolute work directories and file arguments that escape a work directory are
rejected. Tool file paths must be relative to the selected workdir; hidden files, common
secret files, and binary trajectory/run files are blocked by read_text_file and write_mdp.
Example prompt
"In workdir
lyso, build a topology from1aki.pdbwith amber99sb-ildn / tip3p, put it in a 1.0 nm cubic box, solvate it, neutralise with ions, then run a short energy minimisation in the background and tell me when it's done."
The agent chains:
pdb2gmx → editconf → solvate → grompp (ions) → genion → grompp (em) → mdrun_start → mdrun_status.
How it works
Each tool shells out to the local gmx binary via subprocess, captures stdout/stderr
(GROMACS writes almost everything to stderr), and returns a structured result. Long
simulations are detached with start_new_session=True; their metadata is persisted to a
JSON registry so mdrun_status can report progress parsed from the live md.log. The
registry is written atomically with a file lock, and job metadata records the process group
and command hash to reduce stale-PID mistakes after server restarts.
The server also exposes MCP resources and prompts:
Resources:
gromacs://projects,gromacs://jobs,gromacs://templates/{name}Prompts:
prepare_protein_md,debug_grompp_failure,basic_trajectory_analysis
Development
git clone https://github.com/Alierkn/gromacs-mcp && cd gromacs-mcp
uv sync --extra dev
uv run pytest # tests that need gmx auto-skip if it is absent
uv run ruff check .
RUN_GROMACS_INTEGRATION=1 uv run pytest -m integration # real GROMACS smoke testSee CONTRIBUTING.md. For implementation boundaries and release steps, see docs/ARCHITECTURE.md and docs/RELEASE.md.
Related
vmd-mcp — companion MCP server for headless VMD analysis & rendering. Pair them: simulate with GROMACS, visualise with VMD.
License
MIT © Ali Erkan Ocaklı
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Alierkn/gromacs-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server