MCP server for molecular dynamics analysis tools (LAMMPS, OpenMM) with trajectory analysis, adhesion/binding studies, conformation analysis, and campaign matrix screening
MDEngine exposes 4 analysis tools with detailed parameter schemas and descriptions, but critical gaps prevent higher scores. All tools have descriptions (50-200 chars, within baseline), and parameters include types and descriptions. However: (1) tool names lack action verbs (adhesion, campaign_matrix, column_field, conformation are nouns/adjectives, not verb_noun patterns like 'analyze_adhesion' or 'compute_conformation'); (2) no output schemas documented, LLMs cannot plan downstream calls or extract results; (3) no error handling guidance, tools fail silently with no recovery hints; (4) no tool annotations (readOnlyHint, destructiveHint) despite all being READ_ONLY; (5) parameter descriptions are technical but lack LLM-friendly guidance (e.g., 'GroupSelector|null' is a type, not an explanation of what to pass). Baseline: 90% of A+ tools start with action verbs; 100% document return types. This server follows ~40% of those patterns.
Adhesion & binding analysis: per frame, for two groups, heavy-atom contacts under 4.5 Å, hydrogen bonds by Baker–Hubbard 1984 criteria (D···A < 3.5 Å, D–H···A > 120°), interaction fingerprint (salt bridges, π-stacking, cation–π, hydrophobic packing), trajectory-level H-bond occupancy and lifetimes, and MM/GBSA side files
Campaign matrix (tiers): read a screening campaign's matrix back into the inspector. Shows coverage, resolution, grid of cells, selectivity ratios, and tier-based ranking of ligand-receptor combinations from matrix.json
Colour by column: colour atoms by any per-atom quantity (coordinate, charge, or any numeric column the dump/extended-XYZ carried like q, c_pe, vx). Produces per-atom field, profile (mean in bins along axis), scalar, and time series
Conformation (RMSD · Rg · DSSP · clusters): global questions about trajectory — RMSD after optimal superposition, radius of gyration, which atoms move (RMSF), backbone hydrogen bonds (DSSP), conformational basins (clustering by pairwise RMSD), and collective coordinates (PCA of superposed coordinates)
Tool names lack action verbs. 'adhesion', 'campaign_matrix', 'column_field', 'conformation' are nouns/adjectives, not verb_noun patterns. LLMs infer intent from names, 'analyze_adhesion' or 'compute_conformation' would be clearer.
No output schemas documented. Tool descriptions state what they compute (RMSD, H-bonds, etc.) but do not specify return field names, types, or structure. LLMs cannot extract results or chain tools without knowing the response shape.
No error handling guidance. Tools fail silently with no recovery hints. E.g., if 'groupA' selection fails, the tool should return 'Group A not found. Available chains: A, B, C' instead of a bare error.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | 2026-07-28+ | v2 |
Parameter descriptions are technical but lack LLM guidance. 'GroupSelector|null' is a type annotation, not an explanation. Rewrite as: 'Atoms to analyze (chain, residue name, or element). nil = prompt user to choose from frame.'
No tool annotations despite all tools being READ_ONLY. Add readOnlyHint=true to each tool definition so agents know these are safe to retry and do not modify state.