{"id":21562,"library":"meeko","title":"Meeko","description":"Meeko is a Python package for preparing small molecules for docking with AutoDock Vina and other docking programs. It converts RDKit mol objects to PDBQT format, handling protonation, tautomers, and flexible rotatable bonds. Current version is 0.7.1, with irregular release cadence.","status":"active","version":"0.7.1","language":"python","source_language":"en","source_url":"https://github.com/forlilab/meeko","tags":["docking","PDBQT","AutoDock Vina","small molecule","cheminformatics","RDKit"],"install":[{"cmd":"pip install meeko","lang":"bash","label":"PyPI"},{"cmd":"conda install -c conda-forge meeko","lang":"bash","label":"Conda"}],"dependencies":[{"reason":"Core dependency for molecule handling","package":"rdkit","optional":false},{"reason":"Numerical operations","package":"numpy","optional":false},{"reason":"Only if using legacy openbabel templates (deprecated)","package":"openbabel","optional":true}],"imports":[{"note":"","wrong":"","symbol":"MoleculePreparation","correct":"from meeko import MoleculePreparation"},{"note":"","wrong":"","symbol":"RDKitMoleculeCreate","correct":"from meeko import RDKitMoleculeCreate"},{"note":"","wrong":"","symbol":"MoleculeSetup","correct":"from meeko import MoleculeSetup"}],"quickstart":{"code":"from rdkit import Chem\nfrom meeko import MoleculePreparation, RDKitMoleculeCreate\n\nmol = Chem.MolFromSmiles('Cc1ccccc1')\npreparator = MoleculePreparation()\nsetup_list = preparator.prepare(mol)\npdbqt_string = setup_list[0].write_pdbqt_string()\nprint(pdbqt_string[:200])","lang":"python","description":"Prepare a small molecule and output PDBQT string."},"warnings":[{"fix":"Use from meeko import Polymer, Monomer","message":"In v0.6.0, class LinkedRDKitChorizo was renamed to Polymer, and ChorizoResidue to Monomer. Old imports will break.","severity":"breaking","affected_versions":">=0.6.0"},{"fix":"Switch to RDKit-based methods. Remove openbabel dependency.","message":"OpenBabel support was dropped in v0.6.0. Templates based on OpenBabel no longer work.","severity":"deprecated","affected_versions":">=0.6.0"},{"fix":"setup = preparator.prepare(mol)[0]","message":"The MoleculePreparation.prepare() method returns a list of MoleculeSetup objects, not a single object. Iterate or index the list.","severity":"gotcha","affected_versions":"all"},{"fix":"Use meeko_prepare or the Python API directly.","message":"The mk_export.py script from older versions is removed. Use the Python API or CLI meeko_prepare.py.","severity":"deprecated","affected_versions":">=0.6.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run: pip install meeko","cause":"Meeko not installed or wrong Python environment.","error":"ModuleNotFoundError: No module named 'meeko'"},{"fix":"Use setup = preparator.prepare(mol)[0] before calling write_pdbqt_string().","cause":"MoleculePreparation.prepare returns a list, not a single object.","error":"AttributeError: 'list' object has no attribute 'write_pdbqt_string'"},{"fix":"Use from meeko import Polymer instead.","cause":"Class renamed in v0.6.0.","error":"ImportError: cannot import name 'LinkedRDKitChorizo' from 'meeko'"},{"fix":"Ensure RDKit mol has explicit hydrogens (Chem.AddHs(mol)).","cause":"Atom type not recognized by Meeko's templates; often due to unusual valence or implicit hydrogens.","error":"ValueError: Unknown atom type: C1"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}