Skip to main content
Glama

Jean — Molecular Biology & Genomics

cluster_molecules

Read-only

Cluster or diversity-pick a list of small molecules on 1 − Tanimoto of Morgan radius-2 fingerprints: Butina sphere exclusion (RDKit ClusterData, optional reordering), MaxMin diversity picking (RDKit MaxMinPicker, seeded), or average linkage (UPGMA) cut into k clusters.

Input Schema

NameRequiredDescriptionDefault
seedNoMaxMin: seed of the first pick, as RDKit's seed.
picksNoMaxMin: how many structures to pick.
_filesNoThe project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name.
methodNothe clustering method. Values: butina (Butina (sphere exclusion)), maxmin (MaxMin diversity pick), average (Average linkage (UPGMA)).butina
_subjectNoThe record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several.
clustersNoaverage linkage: how many clusters to cut the tree into.
moleculesYesthe structures: one SMILES or molfile per entry.
thresholdNoButina: neighbors within this distance (1 − Tanimoto), 0–1.
reorderingNoButina: recount unassigned neighbors after each cluster.

Output Schema

NameRequiredDescriptionDefault
picksYesMaxMin: input indices in pick order
groupsYesButina and average linkage: clusters of input indices (Butina: centroid first)
unreadYesinput indices RDKit could not read, left out
summaryYesthe clustering in words, generated from this run

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, non-destructive and closed-world, so the safety profile is covered. The description adds genuine behavioral context beyond that: the specific distance function and fingerprint, the RDKit backends behind each mode, and the fact that MaxMin is seeded and Butina optionally reorders. It omits tie-breaking behavior and any performance limits on large libraries, keeping it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with the verb, the resource and the metric before the three algorithm options. No filler. Density is high but justified for a three-algorithm tool; a brief clause separating 'cluster' from 'pick' semantics would have improved parseability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the nine parameters are fully documented in the schema. Combined with the description, an agent has enough to call the tool correctly. Missing only edge-case behavior: what happens with fewer molecules than requested clusters or picks, and how duplicate/invalid SMILES are handled.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and every parameter is already documented there, including defaults, ranges and per-method applicability. The description only restates the method list and the distance metric, adding no new meaning about how threshold, picks, clusters or reordering interact across methods. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb+resource ('Cluster or diversity-pick a list of small molecules') and pins down the exact chemistry: distance = 1 − Tanimoto on Morgan radius-2 fingerprints, with the three algorithms named. An agent knows precisely what computation happens. It does not name any sibling (e.g. map_chemical_space, matched_molecular_pairs, compare_molecules) to disambiguate, which keeps it short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the enumerated methods rather than stated: an agent must infer that butina/maxmin exist for grouping vs. representative selection and average for k-way partitioning. There is no explicit guidance on when to choose this tool over sibling chemical-space tools, and no prerequisites or input-size caveats are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources