Search 70+ biological databases.
SYNTAX: biobtree_search(terms="entity")
BEFORE SEARCHING - Use your training knowledge to plan:
1. What type of entity is this? (disease, process, drug, gene, protein)
2. What is the query asking for? (drugs, genes, function, etc.)
3. What equivalent terms might give better results?
(e.g., "temperature homeostasis" is a process → related condition is "fever")
4. Choose best entry point for query type (disease terms for drug queries)
WORKFLOW:
1. Search WITHOUT dataset filter first (discover where entity exists)
2. Use IDs from results with biobtree_map
QUERY PATTERNS (choose based on question):
"DRUG FOR DISEASE/CONDITION X":
- Prefer disease terms (mesh/mondo/efo) over GO terms for drug queries
- If search only returns GO term, search for the related CONDITION instead
(e.g., "temperature homeostasis" → search "fever" instead)
- Search disease → mondo → clinical_trials → chembl_molecule
- OR search drug class directly (e.g., "antipyretic", "NSAID", "antibiotic")
- Verify mechanism for top 2-3 drugs only (don't enumerate all proteins!)
"DRUG TARGETS" (use BOTH paths for complete picture):
- chembl: >>chembl_molecule>>chembl_target>>uniprot (mechanism-level)
- pubchem: >>pubchem>>pubchem_activity>>uniprot (protein-level, often 50+ targets)
- Filter approved: >>chembl_molecule[highestDevelopmentPhase==4]
"DISEASE GENES":
- Search disease → mondo/hpo → gencc/clinvar/orphanet → hgnc
"PROTEIN FUNCTION":
- Search protein → uniprot → go/reactome
"MECHANISM QUERIES" (drug-disease):
- Use biobtree_entry to see what's connected (xrefs)
- Check EDGES to see where each xref leads
- Follow connections relevant to your question
- Build chain: Drug → Target → [connections] → Disease
RETURNS: id | dataset | name | xref_count