Molecule Similarity Calculation
SkillDev toolsCalculate both Tanimoto similarities and the count of shared structural fragments between a target molecule and a list of candidate molecules via Morgan fingerprints.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Molecule Similarity Calculation skill
What this skill tells your AI
The instructions your AI receives, as published by internscience/molclaw in skills/L1_tools/molclaw-mol-similarity/SKILL.md and read by ahel’s review.
Note:
- Local files are not directly accessible by the server. Please upload them to the server using
molclaw-file-transferbefore execution. - For PDB file inputs, it is recommended to preprocess them using
molclaw-pdbfixerbefore execution. - Please refer to skill
molclaw-scp-serverto complete tool invocation.
Scene 1: Compute the Tanimoto similarities between a target molecule and a list of candidate molecules using Morgan fingerprints. Need to use the tool calculate_morgan_fingerprint_similarity.
The description of tool calculate_morgan_fingerprint_similarity.
Compute the Tanimoto similarities between a target molecule and a list of candidate molecules using Morgan fingerprints.
Args:
target_smiles (str): SMILES string of the target molecule
candidate_smiles_list (List[str]): List of candidate molecule SMILES strings
radius (int): Required Morgan fingerprint radius (commonly 2)
nBits (int): Required Morgan fingerprint vector bit count (commonly 2048)
Return:
status (str): success/error
msg (str): message
similarities (List[dict]): List of dict, each containing the keys 'smiles' and 'score'.
--smiles (str): A SMILES string of candidate_smiles_list
--score (float): Similarity value between the candidate SMILES and the target SMILES
How to use tool calculate_morgan_fingerprint_similarity :
response = await client.session.call_tool(
"calculate_morgan_fingerprint_similarity",
arguments={
"target_smiles": target_smiles,
"candidate_smiles_list": candidate_smiles_list,
"radius": radius,
"nBits": nBits
}
)
result = client.parse_result(response)
similarities = result["similarities"]
Scene 2: Compute the count of shared structural fragments between a target molecule and a list of candidate molecules using Morgan fingerprints. Need to use the tool calculate_common_fragments.
The description of tool calculate_common_fragments.
Compute the count of shared structural fragments between a target molecule and a list of candidate molecules using Morgan fingerprints.
Args:
target_smiles (str): SMILES string of the target molecule
candidate_smiles_list (List[str]): List of candidate molecule SMILES strings
radius (int): Required Morgan fingerprint radius (commonly 2)
Return:
status (str): success/error
msg (str): message
fragments_info (List[dict]): List of dict, each containing the keys 'smiles' and 'common_fragment_count'.
--smiles (str): A SMILES string of candidate_smiles_list
--common_fragment_count (float): Number of structural fragments shared between the candidate SMILES and the target SMILES
How to use tool calculate_common_fragments :
response = await client.session.call_tool(
"calculate_common_fragments",
arguments={
"target_smiles": target_smiles,
"candidate_smiles_list": candidate_smiles_list,
"radius": radius
}
)
result = client.parse_result(response)
fragments_info = result["fragments_info"]
Signals
- GitHub stars
- 33
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
molclaw-mol-similarity- Source
- github.com/internscience/molclaw