vmd-hydrate-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., "@vmd-hydrate-mcpLoad trajectory from /data/sim.gro and render hydrate cages in blue"
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.
An MCP server that lets Claude (or any MCP client) controlVMD directly — load GROMACS/LAMMPS trajectories, identify clathrate-hydrate cages (sI/sII/sH), script headless renders, and compute order parameters (F3/F4) and H-bond networks — turning molecular-dynamics analysis into a conversation. Unlike the existing VMD MCP, it keeps a stateful VMD session, is secure by default, and owns the one thing no other MCP does: hydrate cage science.
See it in action
Related MCP server: vmd-mcp
Features
Clathrate Cage Identification -- find and classify hydrate cages (5¹², 5¹²6², 5¹²6⁴, …) from the H-bond network and label the crystal structure (sI/sII/sH). Validated on the sII benchmark (128 small cages, exact).
Photorealistic, Style-by-Prompt Cage Rendering -- cages render with ambient occlusion + shadows, orthographic by default, each cage type in ONE unified color (a curated palette: 5¹²=cyan, 5¹²6⁴=red, …). Just ask: "show only the sII large cages in magenta with emphasized width" and the MCP filters, recolors, and thickens them.
Stateful VMD Session -- a persistent VMD process (Tcl socket server) keeps your molecules, selections, and camera alive across tool calls -- no reloading on every command.
Hydrate Order Parameters -- F3 (tetrahedrality) and F4 (⟨cos 3φ⟩) computed in pure NumPy, validated to the reference to 6 decimals (F4 = 0.926698 on the sII benchmark).
H-bond Networks -- water–water hydrogen-bond graph with coordination stats, the substrate for cage identification.
Headless Rendering -- CPU Tachyon ray-traced PNGs with no display or GPU, returned inline as images. Works on laptops, servers, and HPC.
Attended (GUI) Mode -- run fully offscreen (default), or set
VMD_HYDRATE_MCP_DISPLAY=guito open a visible VMD window and watch Claude load, color, rotate, and render your system live.GROMACS + LAMMPS -- one server ingests
.gro/.xtc/.trr, LAMMPS.data/dump, PDB, DCD, mmCIF.Secure by Default -- filesystem allowlist + a Tcl command allowlist (not a bypassable denylist) + a loopback, token-gated control socket. No
run_tclfoot-gun exposed.MCP-Native -- clean English tool names and typed outputs; works in Claude Desktop, Claude Code, and any MCP client.
Quick Start
Requires a local VMD install (2.0b1 or 1.9.4+) — this server drives your VMD; no registry or package ships it. On macOS, VMD lives inside a .app, so set VMD_BIN if vmd isn't on your PATH. (The pure hydrate/measure tools still work without VMD.)
Install
Zero-install via uvx (recommended):
uvx vmd-hydrate-mcp # run the server
uvx --from 'vmd-hydrate-mcp[mda]' vmd-hydrate-mcp # + MDAnalysis for measures/selectionOr from source:
git clone https://github.com/wjgoarxiv/vmd-hydrate-mcp.git
cd vmd-hydrate-mcp && uv pip install -e ".[mda]"Register with an MCP client
Claude Code — one command:
claude mcp add vmd-hydrate -- uvx vmd-hydrate-mcpClaude Desktop / any client — add to the mcpServers config (or commit a project .mcp.json):
{
"mcpServers": {
"vmd-hydrate": {
"command": "uvx",
"args": ["vmd-hydrate-mcp"],
"env": { "VMD_HYDRATE_MCP_ALLOW_DIR": "/path/to/your/data" }
}
}
}SetVMD_HYDRATE_MCP_ALLOW_DIR (os-path-separated) to the directories the server may read. All file arguments are realpath-checked against this allowlist — paths outside it are refused.
Attended (GUI) mode
By default the server drives VMD headless (offscreen). To instead open a real VMD window you can watch while Claude controls it live, add VMD_HYDRATE_MCP_DISPLAY=gui to the server's env:
{ "mcpServers": { "vmd-hydrate": {
"command": "uvx", "args": ["vmd-hydrate-mcp"],
"env": { "VMD_HYDRATE_MCP_DISPLAY": "gui", "VMD_HYDRATE_MCP_ALLOW_DIR": "/path/to/data" }
}}}Then ask things like "load prod.gro, show water as points and the surfactant as VDW, then slowly rotate it" — the window updates in real time via load_structure → add_representation → rotate_view. (Requires a local desktop session; the same Tcl socket drives both modes.)
MCP Tools
Tool | Purpose | Backend |
| VMD version + molecules loaded in the live session | VMD |
| Load a structure/trajectory (returns a | VMD |
| List loaded molecules | VMD |
| Style/color/material/selection for a molecule (replaces reps) | VMD |
| Layer another representation (multi-rep views) | VMD |
| Remove all representations | VMD |
| Live camera control (visible in GUI mode) | VMD |
| Headless PNG of the current view | VMD + Tachyon |
| Atom count for a selection (catches the 0-atom | MDAnalysis |
| Distance / angle / dihedral by atom index | MDAnalysis |
| Rg of a selection | MDAnalysis |
| F3 + F4 water order parameters | NumPy |
| Water H-bond network + coordination | NumPy |
| Cage counts (5¹²/5¹²6⁴/…) + sI/sII/sH structure | NumPy |
| Photorealistic cage render (AO+shadows, ortho); filter / recolor / emphasize cages by prompt | VMD + NumPy |
Usage
1. Analyze hydrate order in a trajectory frame
Compute the F3/F4 order parameters for hydrate.groReturns f4_overall, f3_overall, water count, and a plain-language interpretation (crystalline / hydrate-like / liquid / ice).
2. Render a structure
Load hydrate.gro, show the water oxygens as VDW spheres, and render itProduces an inline PNG rendered headlessly with CPU Tachyon.
3. Inspect the H-bond network
Build the water hydrogen-bond network for hydrate.gro at frame 0Returns bond count and average coordination (≈4 for a well-formed clathrate).
4. Style hydrate cages by prompt
Load hydrate.gro and show only the sII large cages in magenta with emphasized widthRenders a photorealistic, orthographic image of just the 5¹²6⁴ cages in magenta with thicker edges — the MCP maps this to render_cages(cage_types=["51264"], highlight_color="magenta", emphasis=True). Omit the filters and every cage type is drawn in its palette color (5¹²=cyan, 5¹²6⁴=red, …).
Does it really drive VMD?
Yes — and you can confirm it in one command. examples/verify.py runs the same code the MCP server exposes on a bundled sII CO₂-hydrate example: it pings the real VMD binary, identifies the cages, and renders them headlessly.
python examples/verify.pyExpected output:
[1] VMD found : /Applications/VMD2b1.app/.../vmd_MACOSXARM64
ping : pong 2.0b1 MACOSXARM64
[2] Identifying cages in a real sII CO2 hydrate (1088 waters)...
cage counts : {'51264': 60, '512': 128}
structure : sII (confidence 0.93)
F4 order : 0.965 (highly ordered (crystalline hydrate / ice-like))
[3] Rendering cages headlessly (blue = 5^12, red = 5^12 6^4)...
saved : examples/output/cages.png (362495 bytes)
OK — vmd-hydrate-mcp drove VMD and identified the cages above.The images below are real, unretouched VMD renders from that pipeline (not illustrations):
The demo video at the top is assembled from frames like these — see video/build_frames.py (drives VMD) and video/remotion/ (Remotion compositing). Rebuild it with python video/build_frames.py && cd video/remotion && npm i && npm run gif.
How It Works
[.gro / .xtc / LAMMPS dump]
|
v
MCP client (Claude) --stdio--> vmd-hydrate-mcp (FastMCP)
| |
numbers <------+ +------> visualization
MDAnalysis + NumPy persistent VMD session
(F3/F4, H-bonds, Rg) (Tcl socket, 127.0.0.1)
| |
v v
structured JSON Tachyon --> PNG imageNumeric science runs in Python (no display, unit-testable in CI). Visualization and rendering run in a long-lived, token-gated VMD process. The two never mix units: hydrate math is nanometers, VMD/MDAnalysis measures are Ångström.
Requirements
Dependency | Required | Purpose |
VMD 2.0b1 or 1.9.4+ | for viz/render | the visualization engine |
Python 3.10+ | yes | the server |
| yes | Model Context Protocol SDK |
MDAnalysis ( | for measures/selection | topology-aware loading |
| for render | TGA→PNG conversion |
On macOS, VMD ships as a.app and its CLI binary lives inside the bundle. If vmd is not on your PATH, set VMD_BIN to the binary (e.g. /Applications/VMD*.app/Contents/vmd*/vmd_MACOSXARM64). Pure hydrate/measure tools work without VMD.
Contributing
Fork and branch (
git checkout -b feature/x).uv pip install -e ".[dev,mda]"and keeppytestgreen (science tests need no VMD).Commit, push, open a PR. Found a bug? Open an issue.
License
MIT — see LICENSE.
Available Tools
17 toolsadd_representationA
Add a representation WITHOUT clearing existing ones — layer several reps
(e.g. water as Points + solute as VDW). color is a coloring METHOD
(Name, ResName, ResType, Chain, Beta, ...); style is VDW/Lines/Points/
NewCartoon/Licorice/etc.
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | Name | |
| molid | Yes | ||
| style | No | VDW | |
| material | No | Opaque | |
| selection | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description discloses that it adds without clearing and explains the color and style fields. However, it does not mention side effects, permissions, or error handling. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a parenthetical, front-loading the key behavior. Efficient and clear, though could benefit from a list-like structure for parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, and only partial parameter descriptions. Missing prerequisites (e.g., molecule must be loaded) and success/error information. Adequate for basic use but lacks depth.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It explains 2 of 5 parameters (color and style) with examples, but omits molid, material, and selection. Partially helpful but incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool adds a representation without clearing existing ones, with examples of layering. It distinguishes itself from sibling tools like set_representation and clear_representations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'without clearing existing ones', implying when to use it (to keep existing reps) and contrasting with alternatives that might clear. It does not name alternatives directly but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clear_representationsA
Remove all representations from a molecule (start a fresh view).
| Name | Required | Description | Default |
|---|---|---|---|
| molid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description states it removes all representations, which is the key behavior. No annotations exist, so no contradiction. However, it does not mention side effects (e.g., does it reset view properties?) or return value. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, front-loaded with action and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 1 param and no output schema, the description covers the main purpose. It could mention that it doesn't affect other data or require prerequisites, but it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must add meaning. It mentions 'from a molecule' but does not explicitly explain that 'molid' is the molecule ID. Parameter semantics are only implied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Remove' and resource 'representations from a molecule' are specific. The parenthetical 'start a fresh view' adds context. Clearly distinguishes from sibling tools like add_representation and set_representation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs alternatives. The phrase 'start a fresh view' implies a use case, but there is no direct comparison to siblings or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hbond_networkA
Build the water-water hydrogen-bond network for a frame and report bond count and average coordination (the substrate for cage identification). rcut is the O-O cutoff (nm), theta the H-O...O angle cutoff (degrees).
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| rcut | No | ||
| frame | No | ||
| theta | No | ||
| topology | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the full burden. It describes what it computes, but does not disclose return format, side effects, or authentication needs. Some transparency about output (bond count, average coordination) but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, concise and front-loaded with main purpose. Every sentence adds value. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no output schema, and no annotations, the description is brief. It omits details on path, frame, topology, and return format. Adequate for basic understanding but incomplete for full usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description adds meaning for rcut and theta (cutoffs). However, path, frame, and topology are not explained. Helpful but incomplete for a 5-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool builds the water-water hydrogen-bond network for a frame and reports bond count and average coordination. It uses specific verbs and resources, and distinguishes from sibling tools like 'identify_cages' which uses this as input.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage as a prerequisite for cage identification, but does not explicitly state when to use it vs alternatives or provide usage context. There is no 'when not to use' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hydrate_order_paramsA
Compute clathrate-hydrate water order parameters F3 (tetrahedrality) and F4 (<cos 3phi>) for a frame. F4 ~ 0.7-0.95 indicates hydrate/crystalline order, ~0 liquid, negative ice-Ih. Units are nm; for .gro the native nm parser is used. This is the differentiating capability no other MCP offers.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| frame | No | ||
| cutoff | No | ||
| topology | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It notes units (nm) and parsing behavior for .gro files, but does not disclose whether the tool is read-only, has side effects, or any performance/rate limits. The agent must infer that it is a computation tool with no state changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at two sentences, front-loading purpose and key output interpretation. It could be slightly more structured but is efficient and clear without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks details about return values (how F3 and F4 are returned) and parameter descriptions. Despite no output schema, the agent needs to know what the tool returns to use it. The typical F4 range helps but F3 is left undefined, and parameter semantics are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must explain parameter meaning. It only mentions 'for a frame' and 'units are nm' but does not describe the four parameters (path, frame, cutoff, topology), their roles, or valid values. The agent lacks key information to set parameters correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states that the tool computes clathrate-hydrate water order parameters F3 (tetrahedrality) and F4 (<cos 3phi>), with typical values provided. It also claims this is the differentiating capability no other MCP offers, clearly distinguishing it from sibling tools like radius_of_gyration or load_structure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when F3/F4 order parameters are needed) by stating it's the only tool offering this capability. However, it does not explicitly mention when not to use it or provide alternatives for related analyses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identify_cagesA
Identify clathrate-hydrate cages (5^12, 5^12 6^2, 5^12 6^4, ...) from the water H-bond network and classify the crystal structure (sI/sII/sH). Returns per-type cage counts, the structure label, and a confidence. method="TRACE" (all rings) or "HTR" (primitive rings). GROMACS .gro input.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| rcut | No | ||
| frame | No | ||
| theta | No | ||
| method | No | TRACE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description covers key behaviors: explains method options (TRACE vs HTR), input format (GROMACS .gro), and return data (cage counts, structure label, confidence). However, it does not mention potential performance constraints or post-processing steps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (three sentences) and structured logically: purpose, output, method options, input format. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks detail on most parameters and does not specify output format or structure. With no output schema, the agent needs more context on return data to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. Only the method parameter is explained; path, rcut, frame, and theta are left undefined. This is insufficient for a 5-parameter tool with no schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: identifying clathrate-hydrate cages and classifying crystal structure. It lists specific cage types (e.g., 5^12, 5^12 6^2) and output (counts, structure label, confidence), making it distinct from siblings like hbond_network or render_cages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Siblings like hbond_network or measure_geometry could be confused, but the description does not clarify selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_moleculesA
List molecules currently loaded in the VMD session (molid, path, atoms, frames).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It accurately describes a read-only list operation, but does not mention side effects, output format, or other behavioral traits beyond the literal listing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence that front-loads the key action and output info. No filler or waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool, the description is adequate. It could be enhanced with sample output or notes on usage, but is sufficiently complete given the simplicity and sibling tool set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema coverage is 100% (vacuous). The description adds meaning by specifying the output fields (molid, path, atoms, frames), which is not in the schema. Baseline 4 for zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists molecules currently loaded in VMD session, specifying the included fields (molid, path, atoms, frames). This is a specific verb+resource, distinguishing it from sibling tools that analyze, load, or render.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (checking loaded molecules) but does not explicitly state when to use vs alternatives or provide exclusions. Sibling tools are for different tasks, so the purpose is somewhat implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_structureA
Load a structure/trajectory into the persistent VMD session for
visualization. Supports PDB, GROMACS (.gro/.xtc/.trr), LAMMPS (.data/dump),
DCD. Coordinate-only formats (.xtc/.trr/.dcd) require a topology. Returns
the molid used to reference this molecule in later calls.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| filetype | No | auto | |
| topology | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the full burden. It discloses that the session is persistent, the return value (molid) for later references, and supported formats. Lacks details on error handling or side effects, but covers essential behavioral aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys the main action, supported formats, and return value without unnecessary words. It is well-organized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three parameters and no output schema, the description covers the return value (molid), persistence of the session, and supported formats. It does not address error cases or session lifecycle, but provides adequate context for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds context for the 'topology' parameter (needed for coordinate-only formats) and implies 'path' is the file to load. However, it does not explicitly describe each parameter beyond what the schema provides, leaving the 'filetype' parameter ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads a structure/trajectory into a persistent VMD session for visualization. It lists supported formats and distinguishes from sibling tools like list_molecules or set_representation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit context for when to use the tool and mentions the need for a topology with coordinate-only formats. Could be improved by stating when not to use it or mentioning alternatives, but it is clear enough given the sibling tools are distinct operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
measure_geometryB
Measure a distance (2 atom indices), angle (3), or dihedral (4) at a frame. Distances are in Angstrom, angles in degrees.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| frame | No | ||
| indices | Yes | ||
| topology | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral disclosure burden. It mentions units and number of indices for different measurement types, but lacks details on return format, error handling (e.g., invalid indices), side effects, or whether it modifies state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately conveys the core purpose, measurement types, and units. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 0% parameter description coverage, the tool is underspecified. The description omits return value structure, error behavior, and prerequisites for use (e.g., needs a loaded trajectory).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only explains indices implicitly and mentions frame ('at a frame'), but does not explain the 'path' or 'topology' parameters, nor the expected format of indices (e.g., 0-indexed, atom serial numbers).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool measures distances, angles, or dihedrals using atom indices, and specifies units (Angstrom for distance, degrees for angle/dihedral). It distinguishes itself from sibling tools like radius_of_gyration which measures a different property.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for molecular geometry measurements in a trajectory, but does not provide explicit when-to-use or when-not-to-use guidance, nor does it mention prerequisites like having a structure loaded or topology available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
radius_of_gyrationC
Radius of gyration (Angstrom) of an atom selection at a frame.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| frame | No | ||
| topology | No | ||
| selection | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry the burden. It implies a read-only calculation, but does not explicitly state lack of side effects, permission requirements, or performance implications. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded with the key output. However, it sacrifices detail for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no schema descriptions, no output schema, and no annotations, the description is severely incomplete. It fails to explain expected inputs, return value format, or behavioral details needed for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning beyond parameter names and types. Parameters like 'path', 'topology', and 'selection' are not explained, leaving the agent without guidance on valid input formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool computes radius of gyration for an atom selection at a given frame, with Angstrom units. It is clear but uses a noun phrase rather than a verb, and does not explicitly distinguish from sibling tools like 'measure_geometry'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description does not mention prerequisites, limitations, or relation to sibling tools such as 'measure_geometry' or 'resolve_selection'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renderB
Render the current view of a loaded molecule headlessly (CPU Tachyon) and return a PNG image. Resolution is capped for safety.
| Name | Required | Description | Default |
|---|---|---|---|
| molid | Yes | ||
| width | No | ||
| height | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses headless CPU Tachyon rendering and resolution cap, but does not explain side effects (e.g., state changes), error conditions (e.g., no molecule loaded), or performance implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that provide essential information without redundancy or extraneous details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Mentions output format (PNG) but lacks details on response structure, molid semantics (though clear from context), and does not address potential errors or edge cases. Adequate but incomplete for a render tool with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should explain parameters but does not. Only parameter names and defaults are inferable from the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (render), resource (current view of loaded molecule), and output (PNG image). Distinguishes from sibling render_cages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use or not use this tool, no prerequisites mentioned (e.g., molecule must be loaded), and no comparison to alternatives like render_cages or other visualization tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_cagesA
Render clathrate cages photorealistically (ambient occlusion + shadows, orthographic by default). Each cage type is drawn in ONE unified color for both its water-oxygen vertices and its O-O framework, using a curated palette (512=cyan, 51262=violet, 51264=red, 435663=lime, 51268=blue).
Natural-language styling maps directly to the arguments:
"show only the sII large cages" -> cage_types=["51264"]
"... in magenta" -> highlight_color="magenta" (name or #rrggbb)
"emphasize / thicker width" -> emphasis=True (thicker edges + bigger spheres)
per-type colors -> colors={"512": "cyan", "51264": "magenta"} cage_types are internal codes: 512, 51262, 51263, 51264, 51268, 435663, ... (sI = 512+51262, sII = 512+51264, sH = 512+435663+51268). Returns a PNG.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| frame | No | ||
| width | No | ||
| colors | No | ||
| height | No | ||
| method | No | TRACE | |
| emphasis | No | ||
| material | No | Glossy | |
| background | No | #0f172a | |
| cage_types | No | ||
| projection | No | orthographic | |
| highlight_color | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses rendering method (TRACE), projection (orthographic), default background color, curated color palette, and that output is a PNG. It does not mention performance, size limits, or state mutations, but is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but well-structured with examples. It front-loads the purpose and then provides natural-language mappings. Could be slightly more concise, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 12 parameters and no output schema, the description should explain more about the return format (e.g., base64) and error conditions. It covers some behavioral aspects but leaves gaps in parameter details and output handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It explains several parameters (cage_types, highlight_color, emphasis, colors) via examples, but does not cover path, frame, width, height, method, material, background, projection. Partial coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool renders clathrate cages photorealistically with ambient occlusion and shadows, and distinguishes from siblings like 'render' by specifying cage-specific coloring and natural-language styling. It provides specific verb and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes natural-language examples that map to arguments, guiding the agent on how to specify cage types, colors, emphasis, etc. However, it lacks explicit guidance on when to use this tool versus alternatives like 'render' or 'set_representation'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reset_viewC
Reset/fit the camera to the loaded molecule.
| Name | Required | Description | Default |
|---|---|---|---|
| molid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior, but it only states the action without detailing side effects, required state (e.g., molecule must be loaded), or whether the reset is instantaneous or animated. The absence of any behavioral context beyond the purpose is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief (one sentence) but lacks structure. It does not front-load critical information or separate purpose from usage. While concise, it sacrifices clarity by omitting parameter details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one optional parameter and no output schema or annotations, the description is insufficient. It does not specify what 'reset/fit' means in terms of camera behavior, whether it applies to all loaded molecules, or if there are any side effects. The description feels incomplete for an agent to reliably use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% (the parameter 'molid' has no description in the schema), and the tool description does not explain the parameter's role, such as selecting which molecule's view to reset. This leaves the agent with no information to correctly set the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'reset/fit' and the resource 'camera to the loaded molecule', effectively communicating the tool's function. It distinguishes from siblings like zoom_view and rotate_view by implying a return to a default fitting view, though it could specify which molecule if multiple are loaded.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as zoom_view or rotate_view. There is no mention of prerequisites (e.g., needing a loaded molecule) or scenarios where resetting the view is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_selectionB
Report how many atoms an MDAnalysis selection matches — use this to catch the common 0-atom trap on bare .gro files before running measurements.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| topology | No | ||
| selection | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the tool returns a count and warns about the 0-atom outcome, but does not mention read-only behavior, error handling, or parameter constraints beyond the schema. Adds some context but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys purpose and a key use case. It is concise and well-structured, though it sacrifices parameter details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters, no output schema, no annotations), the description is incomplete. It lacks parameter descriptions, return format, error cases, and does not address the 'topology' parameter or edge conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only explains the 'selection' parameter via the MDAnalysis context, while 'path' and 'topology' are left undefined. This is insufficient for a 3-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reports the count of atoms matched by an MDAnalysis selection, with a specific verb and resource. It distinguishes from siblings by focusing on selection validation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a concrete use case (catching the 0-atom trap before measurements) but does not explicitly state when not to use it or suggest alternative sibling tools. The guidance is implied but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotate_viewA
Rotate the camera by degrees about an axis ('x'/'y'/'z'). In GUI/attended
mode (VMD_HYDRATE_MCP_DISPLAY=gui) the visible window updates live.
| Name | Required | Description | Default |
|---|---|---|---|
| axis | No | y | |
| degrees | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the full burden. It discloses that the display updates live in GUI mode, but does not mention side effects, prerequisites, or whether rotation is relative or absolute. Adequate but could be more comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loaded with the action, making it easy to scan. Ideal conciseness for a simple command.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple rotation tool with no output schema, the description covers the core behavior (rotation, axis, degrees) and a conditional display detail. Missing return value description is acceptable given the action-oriented nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description compensates by explaining axis ('x'/'y'/'z') and stating that degrees quantify rotation. Adds meaning beyond default values, though range or sign for degrees is omitted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (rotate the camera) and the specific parameters (degrees, axis). It is a specific verb-resource combination, and no sibling tool rotates the view, so it distinguishes itself effectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a conditional usage hint ('In GUI/attended mode...') but does not explicitly state when to use this tool versus alternatives like zoom_view or reset_view. Usage context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_representationC
Set the visual representation of a loaded molecule (e.g. style=NewCartoon, Licorice, VDW, Lines; color=Name, ResType, Beta; selection is a VMD atom-selection string like "water" or "name CA").
| Name | Required | Description | Default |
|---|---|---|---|
| color | No | Name | |
| molid | Yes | ||
| style | No | VDW | |
| material | No | Opaque | |
| selection | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It fails to disclose behavioral traits such as whether the tool overwrites existing representations, whether it modifies the original molecule state, or any side effects like resetting other representation settings. The description focuses on acceptable values rather than behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently communicates the core action and provides illustrative examples. It is front-loaded with the purpose, and the parenthetical examples are concise but informative. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no annotations, and no output schema, the description leaves gaps. It does not explain what the tool returns (if anything), what constitutes a valid 'molid', or the exact effect on the molecular visualization. For an AI agent to use it correctly without prior VMD knowledge, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description adds meaning for style, color, and selection by listing common values and explaining that selection is a VMD atom-selection string. However, it does not describe the 'molid' parameter (required) or the 'material' parameter (optional). The defaults are in the schema, but the description could be more complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool sets the visual representation of a loaded molecule and provides specific examples of style, color, and selection values. It distinguishes from sibling tools like 'add_representation' and 'clear_representations' by implying a single representation is set, but could be more explicit about how it differs from adding a new representation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives examples of valid values for parameters but does not specify when to use this tool versus alternatives like 'add_representation'. No guidance on prerequisites, such as requiring the molecule to already be loaded, or what happens if the tool is called on an invalid molecule ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vmd_statusA
Report whether VMD is available, its version, and the molecules currently loaded in the persistent session.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description clearly discloses what the tool reports (availability, version, loaded molecules) and implies it is a safe query with no side effects, though it could explicitly state its non-destructive nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise, front-loaded with the key purpose, and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status tool with no parameters and no output schema, the description is adequate, but it could be more complete by hinting at the return format or structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so the description adds meaning by explaining what the tool reports, exceeding the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool reports VMD availability, version, and loaded molecules, which is specific and distinguishes it from sibling tools like list_molecules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking status but does not provide explicit guidance on when to use this tool vs alternatives like list_molecules or other sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zoom_viewA
Zoom the view by a multiplicative factor (>1 zoom in, <1 zoom out).
| Name | Required | Description | Default |
|---|---|---|---|
| factor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description reveals the multiplicative zoom behavior but does not disclose potential side effects or limitations (e.g., whether the zoom is relative to current view or absolute).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no redundant information, efficiently conveying the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter, the description is nearly complete; it could mention that factor should be positive, but the functionality is well-covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains the factor parameter's meaning (>1 zoom in, <1 zoom out) adding value beyond the schema which only provides a default and type.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (zoom view) and the effect (multiplicative factor) with explicit conditions for zoom in/out, distinguishing it from siblings like rotate_view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly conveys when to use (to zoom the view) but does not provide explicit guidance on when not to use or alternatives beyond what is obvious from the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
17 tool updates
v0.2.0- First observed
add_representation - First observed
clear_representations - First observed
hbond_network - First observed
hydrate_order_params - First observed
identify_cages - First observed
list_molecules - First observed
load_structure - First observed
measure_geometry - First observed
radius_of_gyration - First observed
render - First observed
render_cages - First observed
reset_view - First observed
resolve_selection - First observed
rotate_view - First observed
set_representation - First observed
vmd_status - First observed
zoom_view
TDQS
Scored across 17 tools
Each tool targets a specific operation—loading, selection, measurement, rendering, or hydrate-specific analysis—with no functional overlap. Even similar tools like set_representation and add_representation are clearly differentiated by whether they clear existing representations.
Most tool names follow a verb_noun pattern (load_structure, list_molecules, set_representation, etc.), but a few nouns (radius_of_gyration, vmd_status, hbond_network) break the pattern. This is a minor inconsistency that does not impede understanding.
With 17 tools covering loading, visualization, analysis, and rendering specifically for clathrate hydrates, the count feels well-scoped. Each tool earns its place, and the set is neither bloated nor sparse.
The surface covers core lifecycle: load, list, select, measure, analyze (hydrate-specific), and render. Minor gaps like trajectory manipulation or file export are absent, but the focus on hydrate analysis is fully covered, so agents can accomplish their goals without dead ends.
Maintenance
Related MCP Connectors
MD workbench for agents: 13 analysis tools, renders, hosted GPU runs; LAMMPS + OpenMM.
- WauldoOAuthcom.wauldo
Stateless agentic tools over MCP: concept extraction, long-context, knowledge graph, planning.
AI orchestration for computational chemistry and HPC workflows.
- mcpOAuthio.scispot
Turn any LLM into your lab assistant: search samples, track experiments, analyze data with AI.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables AI assistants to interact with LAMMPS for molecular dynamics simulations through natural language commands.14Apache 2.0
- FlicenseNot gradedqualityDmaintenanceEnables control of VMD2 for molecular dynamics analysis through natural language, allowing users to load structures, set representations, measure distances, compute RMSD, and render images without Tcl scripting.6-
- AlicenseNot gradedqualityFmaintenanceIntegrates GROMACS molecular dynamics simulations with VMD visualization, enabling setup, execution, analysis, and 3D visualization of molecular dynamics workflows through natural language.23MIT
- AlicenseBqualityAmaintenanceEnables running GROMACS molecular dynamics simulations through natural language, with tools for topology building, solvation, simulation management, and trajectory processing via the Model Context Protocol.31MIT
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/wjgoarxiv/vmd-hydrate-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server