Zinc Tools

Configuration File: zinc_tools.json Tool Type: Local Tools Count: 5

This page contains all tools defined in the zinc_tools.json configuration file.

Available Tools

ZINC_get_compound (Type: ZincTool)

Get the structure and computed properties for a ZINC22 compound by its ZINC ID, via the CartBlanc…

ZINC_get_compound tool specification

Tool Information:

  • Name: ZINC_get_compound

  • Type: ZincTool

  • Description: Get the structure and computed properties for a ZINC22 compound by its ZINC ID, via the CartBlanche22 API (https://cartblanche22.docking.org/substance/{id}.json). Returns SMILES, molecular formula, molecular weight (mwt), calculated LogP, heavy/hetero atom counts, ring count, InChI, InChIKey, source database (zinc20/zinc22), and the number of vendor catalogs offering it (n_catalogs). Use ZINC_get_purchasable for the full vendor/price list, or ZINC_search_by_smiles to find a ZINC ID from a structure. Replaces the retired zinc15.docking.org service.

Parameters:

  • operation (string) (required) Operation type

  • zinc_id (string) (required) ZINC compound identifier, e.g., ZINC000000000053 (aspirin). Both zinc20 numeric IDs (ZINC000000000053) and zinc22 alphanumeric IDs (e.g. ZINC6m0000002gSu) are accepted; a bare numeric/code is auto-prefixed with ‘ZINC’.

Example Usage:

query = {
    "name": "ZINC_get_compound",
    "arguments": {
        "operation": "example_value",
        "zinc_id": "example_value"
    }
}
result = tu.run(query)

ZINC_get_purchasable (Type: ZincTool)

Get the vendor/catalog purchasability and price list for a ZINC22 compound by its ZINC ID, via th…

ZINC_get_purchasable tool specification

Tool Information:

  • Name: ZINC_get_purchasable

  • Type: ZincTool

  • Description: Get the vendor/catalog purchasability and price list for a ZINC22 compound by its ZINC ID, via the CartBlanche22 API (the catalogs array of /substance/{id}.json). Returns each catalog’s name, supplier code, price, quantity, unit, shipping estimate, purchasable flag, and order URL, plus a total vendor_count. Use this to check commercial availability of a known compound for virtual screening. Find a ZINC ID first with ZINC_search_by_smiles. Replaces the retired zinc15.docking.org service.

Parameters:

  • operation (string) (required) Operation type

  • zinc_id (string) (required) ZINC compound identifier, e.g., ZINC000000000053 (aspirin). zinc20 numeric and zinc22 alphanumeric IDs are both accepted.

Example Usage:

query = {
    "name": "ZINC_get_purchasable",
    "arguments": {
        "operation": "example_value",
        "zinc_id": "example_value"
    }
}
result = tu.run(query)

ZINC_search_by_properties (Type: ZincTool)

NOT SUPPORTED by ZINC22 (CartBlanche22): molecular-property-range search (filtering by MW / LogP …

ZINC_search_by_properties tool specification

Tool Information:

  • Name: ZINC_search_by_properties

  • Type: ZincTool

  • Description: NOT SUPPORTED by ZINC22 (CartBlanche22): molecular-property-range search (filtering by MW / LogP / HBD / HBA / rotatable-bond ranges). CartBlanche22 only offers structure search (SMILES/SMARTS), ZINC-ID lookup, and supplier lookup; it has no property-range query endpoint. This operation returns a clean error directing you to ZINC_search_by_smiles, after which you can read each hit’s MW/LogP via ZINC_get_compound and filter client-side.

Parameters:

  • operation (string) (required) Operation type

  • mwt_min ([‘number’, ‘null’]) (optional) Minimum molecular weight (NOTE: property-range search is not supported by CartBlanche22; this returns a clean error)

  • mwt_max ([‘number’, ‘null’]) (optional) Maximum molecular weight (not supported; see error)

  • logp_min ([‘number’, ‘null’]) (optional) Minimum LogP (not supported; see error)

  • logp_max ([‘number’, ‘null’]) (optional) Maximum LogP (not supported; see error)

Example Usage:

query = {
    "name": "ZINC_search_by_properties",
    "arguments": {
        "operation": "example_value"
    }
}
result = tu.run(query)

ZINC_search_by_smiles (Type: ZincTool)

Structure-search the ZINC22 (and legacy ZINC20) database by SMILES via the CartBlanche22 async st…

ZINC_search_by_smiles tool specification

Tool Information:

  • Name: ZINC_search_by_smiles

  • Type: ZincTool

  • Description: Structure-search the ZINC22 (and legacy ZINC20) database by SMILES via the CartBlanche22 async structure-search API. Submits the query, polls for completion (within 30s), and returns matching compounds with zinc_id, SMILES, the matched substructure SMILES, formula, MW, LogP, InChIKey, source database, and vendor-catalog count. Use dist=0 (default) for exact matches and a small positive dist (e.g. 1-4) for graph-edit-distance similarity; adist is the anonymized (atom-type-agnostic) distance. Returns the ZINC IDs you then feed to ZINC_get_compound / ZINC_get_purchasable. Replaces the retired zinc15.docking.org service.

Parameters:

  • operation (string) (required) Operation type

  • smiles (string) (required) SMILES string to search for. Examples: c1ccccc1 (benzene), CC(=O)Oc1ccccc1C(=O)O (aspirin), CCO (ethanol)

  • dist (integer) (optional) Graph-edit-distance for similarity search. 0 = exact match; higher = more permissive (more, less similar hits).

  • adist (integer) (optional) Anonymized (atom-type-agnostic) graph-edit-distance. 0 = exact on the anonymized graph.

  • database (string) (optional) Comma-separated databases to search: zinc20, zinc22, or both (default).

  • count (integer) (optional) Maximum number of results to return (default: 10, max: 100)

Example Usage:

query = {
    "name": "ZINC_search_by_smiles",
    "arguments": {
        "operation": "example_value",
        "smiles": "example_value"
    }
}
result = tu.run(query)

ZINC_search_compounds (Type: ZincTool)

NOT SUPPORTED by ZINC22 (CartBlanche22): free-text / compound-name search. ZINC has always been s…

ZINC_search_compounds tool specification

Tool Information:

  • Name: ZINC_search_compounds

  • Type: ZincTool

  • Description: NOT SUPPORTED by ZINC22 (CartBlanche22): free-text / compound-name search. ZINC has always been structure- and ID-centric and CartBlanche22 offers no name search endpoint. This operation returns a clean error directing you to ZINC_search_by_smiles (structure search by SMILES) or ZINC_get_compound / ZINC_get_purchasable (lookup by a known ZINC ID). To go from a drug name to a structure, resolve the name to a SMILES first (e.g. via PubChem) and then use ZINC_search_by_smiles.

Parameters:

  • operation (string) (required) Operation type

  • query (string) (optional) Drug name or keyword (NOTE: name search is not supported by CartBlanche22; this returns a clean error pointing to ZINC_search_by_smiles)

Example Usage:

query = {
    "name": "ZINC_search_compounds",
    "arguments": {
        "operation": "example_value"
    }
}
result = tu.run(query)