CyberRXN Docs
Chemistry and evidence

Universal representation conversion

Convert explicit molecular and reaction formats with visible preservation checks.

Choose formats explicitly

Use MCP convert_representation or POST /v1/chemistry/convert-representation:

{"data":"C[C@H](O)Cl","input_format":"smiles","output_format":"sdf","allow_lossy":false}
Input formatsOutput formats
smiles, inchi, mol, sdfsmiles, inchi, inchikey, mol, mol_v3000, sdf, formula, unicode_formula
reaction_smiles, rxnreaction_smiles, rxn, rxn_v3000, formula, unicode_formula

Do not guess a format from a chemical name. A formula or InChIKey cannot uniquely reconstruct a molecular structure, so these are output projections rather than structure-input formats. No external structure-name lookup is implied.

Preserve identity and detect losses

The result includes output, record_count, per-record canonical structures, and preservation checks for molecular graph, stereochemistry, isotopes, charge, atom mapping, properties and coordinates. Inspect lossy, warnings and limitations.

The default allow_lossy:false rejects known information loss. Set it to true only for a deliberate projection, such as a formula or a conversion dropping coordinates or SDF properties. Explicit permission does not claim the target format can represent the lost data.

from cyberrxn import Client

with Client() as client:
    result = client.convert_representation(
        "CCO", input_format="smiles", output_format="unicode_formula", allow_lossy=True
    )
    print(result.output)
import { CyberRXN } from 'cyberrxn';
const client = new CyberRXN();
const result = await client.convertRepresentation('CCO', {
  inputFormat: 'smiles', outputFormat: 'inchi', allowLossy: false,
});
console.log(result.output);

Molecule collections and reactions

Multi-record SDF is bounded to 32 records and 2000 atoms total. SMILES/InChI output retains separate records on separate lines. A multi-record collection cannot fit into one MOL record; use SDF. Reaction conversion preserves participants, agents, multiplicities and atom mapping when the formats permit it.

Wildcard fragments such as *CC* can be converted structurally. MOL/SDF polymer substance groups (including SRU) are explicitly rejected rather than expanded into a fabricated finite molecule. They do not define a finite polymer molecular formula or a polymerization prediction. Polymer boundaries.

For a quick readable rendering of existing SMILES, convert_smiles / POST /v1/chemistry/convert returns ASCII and Unicode formulae plus optional InChI/InChIKey. Formula rendering loses structural/isomer identity; retain canonical SMILES alongside the display.

RXN input with a nonempty name/comment header or trailing payload is rejected when those metadata cannot be retained. allow_lossy must be a JSON boolean, not a string or number.

On this page