- Chemical Compound Information Retrieval
- Retrieve comprehensive chemical compound data with proper disambiguation and cross-database validation.
- IMPORTANT
- Always use English compound names and search terms in tool calls, even if the user writes in another language (e.g., translate "阿司匹林" to "aspirin"). Only try original-language terms as a fallback if English returns no results. Respond in the user's language. Workflow Overview Phase 0: Clarify (if needed) ↓ Phase 1: Disambiguate Compound Identity ↓ Phase 2: Retrieve Data (Internal) ↓ Phase 3: Report Compound Profile Phase 0: Clarification (When Needed) Ask the user ONLY if: Compound name is highly ambiguous (e.g., "vitamin E" → α, β, γ, δ-tocopherol?) Multiple distinct compounds share the name (e.g., "aspirin" is clear; "sterol" is not) Skip clarification for: Unambiguous drug names (aspirin, ibuprofen, metformin) Specific identifiers provided (CID, ChEMBL ID, SMILES) Clear structural queries (SMILES, InChI) Phase 1: Compound Disambiguation 1.1 Resolve Primary Identifier from tooluniverse import ToolUniverse tu = ToolUniverse ( ) tu . load_tools ( )
Strategy depends on input type
if user_provided_cid : cid = user_provided_cid elif user_provided_smiles : result = tu . tools . PubChem_get_CID_by_SMILES ( smiles = smiles ) cid = result [ "data" ] [ "cid" ] elif user_provided_name : result = tu . tools . PubChem_get_CID_by_compound_name ( compound_name = name ) cid = result [ "data" ] [ "cid" ] 1.2 Cross-Reference Identifiers Always establish compound identity across both databases:
PubChem → ChEMBL cross-reference
chembl_result
tu . tools . ChEMBL_search_compounds ( query = compound_name , limit = 5 ) if chembl_result [ "data" ] : chembl_id = chembl_result [ "data" ] [ 0 ] [ "molecule_chembl_id" ] 1.3 Handle Naming Collisions For generic names (e.g., "vitamin", "steroid", "acid"): Search returns multiple CIDs → present top matches with structures Verify SMILES/InChI matches user intent Note stereoisomers or salt forms if relevant Identity Resolution Checklist: PubChem CID established ChEMBL ID cross-referenced (if exists) Canonical SMILES captured Stereochemistry noted (if relevant) Salt forms identified (if applicable) Phase 2: Data Retrieval (Internal) Retrieve all data silently. Do NOT narrate the search process. 2.1 Core Properties (PubChem)
Basic properties
props
tu . tools . PubChem_get_compound_properties_by_CID ( cid = cid )
Bioactivity summary
bio
tu . tools . PubChem_get_bioactivity_summary_by_CID ( cid = cid )
Drug label (if approved drug)
drug
tu . tools . PubChem_get_drug_label_info_by_CID ( cid = cid )
Structure image
image
tu . tools . PubChem_get_compound_2D_image_by_CID ( cid = cid ) 2.2 Bioactivity Data (ChEMBL) if chembl_id :
Detailed bioactivity
activity
tu . tools . ChEMBL_get_bioactivity_by_chemblid ( chembl_id = chembl_id )
Protein targets
targets
tu . tools . ChEMBL_get_target_by_chemblid ( chembl_id = chembl_id )
Assay data
assays
tu . tools . ChEMBL_get_assays_by_chemblid ( chembl_id = chembl_id ) 2.3 Optional Extended Data
Patents (for drugs)
patents
tu . tools . PubChem_get_associated_patents_by_CID ( cid = cid )
Similar compounds (for SAR)
similar
tu . tools . PubChem_search_compounds_by_similarity ( cid = cid , threshold = 85 ) Fallback Chains Primary Fallback Notes PubChem_get_CID_by_compound_name ChEMBL_search_compounds → get SMILES → PubChem_get_CID_by_SMILES Name lookup failed ChEMBL_get_bioactivity PubChem_get_bioactivity_summary ChEMBL ID unavailable PubChem_get_drug_label_info Note "Drug label unavailable" Not an approved drug Phase 3: Report Compound Profile Output Structure Present results as a Compound Profile Report . Hide all search process details.
Compound Profile: [Compound Name]
Identity | Property | Value | |
|
| | ** PubChem CID ** | [cid] | | ** ChEMBL ID ** | [chembl_id or "N/A"] | | ** IUPAC Name ** | [full name] | | ** Common Names ** | [synonyms] |
Chemical Properties
Molecular Descriptors | Property | Value | Drug-Likeness | |
|
|
| | ** Formula ** | C₉H₈O₄ | - | | ** Molecular Weight ** | 180.16 g/mol | ✓ (<500) | | ** LogP ** | 1.19 | ✓ (-2 to 5) | | ** H-Bond Donors ** | 1 | ✓ (<5) | | ** H-Bond Acceptors ** | 4 | ✓ (<10) | | ** Polar Surface Area ** | 63.6 Ų | ✓ (<140) | | ** Rotatable Bonds ** | 3 | ✓ (<10) |
Structural Representation
**
SMILES
**
:
CC(=O)Oc1ccccc1C(=O)O
-
**
InChI
**
:
InChI=1S/C9H8O4/...
[2D structure image if available]
Bioactivity Profile
Summary
- **
- Active in
- **
-
[X] assays out of [Y] tested
- **
- Primary Targets
- **
-
[list top targets]
- **
- Mechanism
- **
- [if known]
Key Target Interactions (from ChEMBL) | Target | Activity Type | Value | Units | |
|
|
|
| | [Target 1] | IC50 | [value] | nM | | [Target 2] | Ki | [value] | nM |
Drug Information (if applicable)
Clinical Status | Property | Value | |
|
| | ** Approval Status ** | [Approved/Investigational/N/A] | | ** Drug Class ** | [therapeutic class] | | ** Indication ** | [approved uses] | | ** Route ** | [oral/IV/topical/etc.] |
Safety
- **
- Black Box Warning
- **
-
[Yes/No]
- **
- Major Interactions
- **
- [if any]
Related Compounds (if retrieved) Top 5 structurally similar compounds: | CID | Name | Similarity | Key Difference | |
|
|
|
| | [cid] | [name] | 95% | [note] |
Data Sources
PubChem: [CID link]
ChEMBL: [ChEMBL ID link]
- Retrieved: [date]
- Data Quality Tiers
- Apply to data completeness assessment:
- Tier
- Symbol
- Criteria
- Complete
- ●●●
- All core properties + bioactivity + drug info
- Substantial
- ●●○
- Core properties + bioactivity OR drug info
- Basic
- ●○○
- Core properties only
- Minimal
- ○○○
- CID/name only, limited data
- Include in report header:
- **
- Data Completeness
- **
- ●●● Complete (properties, bioactivity, drug data) Completeness Checklist Every compound profile MUST include these sections (even if "unavailable"): Identity (Required) PubChem CID ChEMBL ID (or "N/A") IUPAC name Canonical SMILES Properties (Required) Molecular formula Molecular weight LogP Lipinski rule assessment Bioactivity (Required) Activity summary (or "No bioactivity data") Primary targets (or "Unknown") Drug Info (If Approved Drug) Approval status Indication Drug class Always Include Data sources with links Retrieval date Quality tier assessment Common Use Cases Drug Property Check User: "Tell me about metformin" → Full compound profile with drug information emphasis Structure Verification User: "Verify this SMILES: CC(=O)Oc1ccccc1C(=O)O" → Disambiguation-focused profile, confirm identity SAR Analysis User: "Find compounds similar to ibuprofen" → Similarity search + comparative property table Target Identification User: "What proteins does gefitinib target?" → ChEMBL bioactivity emphasis with target list Error Handling Error Response "Compound not found" Try synonyms, verify spelling, offer SMILES search "No ChEMBL ID" Note in Identity section, continue with PubChem data "No bioactivity data" Include section with "No bioactivity screening data available" "API timeout" Retry once, note unavailable data with "(retrieval failed)" Tool Reference PubChem (Chemical Database) Tool Purpose PubChem_get_CID_by_compound_name Name → CID PubChem_get_CID_by_SMILES Structure → CID PubChem_get_compound_properties_by_CID Molecular properties PubChem_get_compound_2D_image_by_CID Structure visualization PubChem_get_bioactivity_summary_by_CID Activity overview PubChem_get_drug_label_info_by_CID FDA drug labels PubChem_get_associated_patents_by_CID IP information PubChem_search_compounds_by_similarity Find analogs PubChem_search_compounds_by_substructure Substructure search ChEMBL (Bioactivity Database) Tool Purpose ChEMBL_search_compounds Name/structure search ChEMBL_get_compound_by_chemblid Compound details ChEMBL_get_bioactivity_by_chemblid Activity data ChEMBL_get_target_by_chemblid Protein targets ChEMBL_search_targets Target search ChEMBL_get_assays_by_chemblid Assay metadata