MolDraw › Chemistry tools › PDB to MOL2 Converter

PDB to MOL2 Converter (Tripos, SYBYL types)

In short: Paste a PDB file or open one, pick the ligand, and get a Tripos MOL2 file with SYBYL atom types (C.ar, C.2, N.am, O.co2 and so on) and bond types (1, 2, ar, am). It is free, runs in your web browser and needs no download.

Works for a small-molecule PDB and for a protein–ligand complex. The coordinates are copied from the PDB file. Partial charges are not calculated: the file says NO_CHARGES and every charge is 0.0000.

Quick answer: Press Load example. It reads a cut-down PDB 1A28 (progesterone receptor) file, picks the ligand STR A 1 (progesterone) and writes MOL2 with 23 atoms and 26 bonds. The bond orders are estimated, so the SMILES shown matches progesterone, C21H30O2.

Ready.

MOL2 output

How to convert PDB to MOL2

  1. Paste the PDB text or press Open .pdb file.
  2. Choose the ligand in Which atoms to convert. For a file that holds one small molecule, use Whole file.
  3. Keep Estimate bond orders ticked if the file has no bond orders.
  4. Press Convert to MOL2. Check the list of SYBYL types under the button.
  5. Press Download .mol2 or Copy.

PDB and MOL2: what changes

PDB stores atoms with residue names and coordinates but no atom types and, usually, no bond orders. Tripos MOL2 adds a SYBYL atom type to each atom and a type to each bond. Docking and modelling programs (for example DOCK, GOLD and many force-field tools) read these types.

TypeMeaningTypeMeaning
C.3sp3 carbonN.amamide nitrogen
C.2sp2 carbonN.pl3trigonal planar nitrogen (aniline, nitro)
C.araromatic carbonN.4sp3 nitrogen with four bonds (cation)
C.1sp carbonO.2 / O.3sp2 / sp3 oxygen
N.araromatic nitrogenO.co2carboxylate or phosphate oxygen
N.2 / N.3sp2 / sp3 nitrogenS.O2, S.O, S.3sulfone, sulfoxide, sp3 sulfur

Bond types are 1, 2, 3, ar (aromatic) and am (amide C–N).

How bonds are found

A PDB file stores atoms, not bonds. The converter uses CONECT records when the file has them. Atoms with no CONECT entry are bonded by distance: two atoms are bonded when they are closer than the sum of their covalent radii plus 0.45 Å. Hydrogen keeps one bond, carbon at most four.

How bond orders are found

Some programs (Open Babel, RDKit, PyMOL) write a double bond as two CONECT entries. When the file has such duplicates, they give the bond orders directly. Files from the Protein Data Bank do not have them. Then, with the estimate box ticked, the tool works out bond orders from the geometry: it decides whether each atom is sp, sp2 or sp3 from bond angles and bond lengths, finds flat 5- and 6-membered rings, gives aromatic rings alternating double bonds, and sets C=O, C=C, C=N and similar double bonds where the bond is short. This works well for well-resolved ligands, but it is an estimate. Always check the result.

Limitations

Want to check the ligand? Open it in MolDraw, a free online chemical structure editor, to see the bonds and edit them.

Open MolDraw editor

Frequently asked questions

How do I convert a PDB ligand to MOL2?

Paste the PDB text or open the .pdb file, choose the ligand in the list and press Convert to MOL2. Then press Download .mol2. The tool writes the MOLECULE, ATOM, BOND and SUBSTRUCTURE sections of a Tripos MOL2 file.

How are SYBYL atom types assigned?

Each atom gets a type from its element, hybridisation and neighbours: for example C.3 for sp3 carbon, C.2 for sp2, C.ar for aromatic, N.am for an amide nitrogen, N.pl3 for a trigonal planar nitrogen, O.co2 for carboxylate and phosphate oxygen. Hybridisation comes from bond orders when the file has them, otherwise from bond angles and lengths.

Does the MOL2 file have partial charges?

No. The charge type is NO_CHARGES and each atom has charge 0.0000. Add Gasteiger, AM1-BCC or other charges in your docking or modelling program.

Why do some atom types look wrong?

PDB files from the Protein Data Bank have no bond orders and usually no hydrogens, so the types are worked out from the geometry. Bent or poorly resolved ligands can give a wrong hybridisation. Check the type list under the Convert button.

Last updated: