vmd-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VMD_BIN | No | Path to the VMD launcher. Auto-detected from PATH or macOS .app bundle. | auto |
| VMD_MCP_ROOT | No | Where rendered images / scratch are written. | ~/vmd-mcp/output |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| vmd_infoA | Return the VMD version/banner and the resolved launcher path. Use this first to confirm the server can reach a working VMD. |
| molecule_infoA | Load a structure (and optional trajectory) and report a summary: total atoms, number of frames, protein/water/backbone atom counts, and the number of distinct chains and residues. |
| count_atomsB | Count atoms matching a VMD atom-selection expression
(e.g. |
| radius_of_gyrationB | Radius of gyration (nm-scale, in VMD's Angstrom units) of a selection, computed for every frame. Returns a per-frame series plus min/max/mean. |
| rmsdA | RMSD of a selection across a trajectory relative to a reference frame. With |
| sasaB | Solvent-accessible surface area (Angstrom^2) of a selection, per frame.
|
| rmsfA | Per-atom root-mean-square fluctuation (RMSF) across a trajectory. Returns one row per selected atom plus min/max/mean RMSF in Angstrom. Use
selections such as |
| distanceA | Distance between the centers of two atom selections. By default the distance is measured at one frame. Set |
| contactsA | Find atom-index contact pairs between two selections at one frame.
|
| render_imageA | Ray-trace a molecular image HEADLESSLY with VMD's built-in Tachyon and save it as PNG (no display needed).
|
| render_presetC | Render a molecule using a curated publication-oriented visual preset. Presets reduce brittle representation/coloring choices while still allowing
a custom atom |
| run_tclA | Run an ARBITRARY VMD Tcl script headlessly and return its combined
stdout/stderr plus any parsed Emit results from your script with: |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| render_molecule | Plan a safe headless molecular render with a curated preset. |
| analyze_trajectory | Run a compact trajectory-analysis workflow with RMSD, RMSF, Rgyr, and SASA. |
| debug_vmd_failure | Diagnose common VMD path, selection, rendering, and Tcl failures. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| capabilities | Tool categories, render presets, allowed visual options, and safety defaults. |
| output | Recent files written below VMD_MCP_ROOT. |
| examples | Short prompt recipes for common structure, trajectory, and rendering tasks. |
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose: contacts for atom pairs, count_atoms for counting, distance for center distance, molecule_info for summary, radius_of_gyration for RG, render_image/image renderings, rmsd/rmsf for structural alignment, run_tcl for arbitrary scripts, sasa for surface area, and vmd_info for version. No two tools have overlapping functionality.
All names use lowercase underscores. Some are single nouns (contacts, distance, rmsd, rmsf, sasa) while others are verb_noun (count_atoms, render_image, render_preset, run_tcl). This is mildly inconsistent but still readable and predictable.
With 12 tools, the set covers a wide range of common VMD analyses (distance, RMSD, RMSF, SASA, contacts, radius of gyration, rendering) without being overwhelming. The count is appropriate for the domain.
The tools cover core analysis tasks (geometry, structural alignment, surface area, rendering, counting, contacts). Missing explicit tools for angles/dihedrals or hydrogen bonds, but the run_tcl fallback allows arbitrary scripts, filling most gaps.