Install any skill in seconds. Free to start, no credit card required.
Get Started Free →GPCR receptor pharmacology — agonist/antagonist/inverse-agonist/biased-agonist classification, GPCRdb structural data, receptor-ligand binding analysis, antibody-target interface (SAbDab). Use for GPCR drug discovery, biased-agonism analysis, receptor subtype selectivity questions, and orthosteric vs allosteric pocket characterization.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 135% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 175% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 108% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 101% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 92% | 0% |
GPCR pharmacology: agonist vs antagonist vs inverse agonist vs biased agonist — each has different clinical implications. Biased agonism (preferential G-protein vs β-arrestin signaling) can separate efficacy from side effects; for example, G-protein-biased opioid agonists aim to retain analgesia while reducing β-arrestin-mediated respiratory depression. Always classify retrieved ligands by their pharmacological type, not just their chemical structure. Receptor state (active vs inactive crystal structure) determines which ligands and mutations are interpretable — an inactive-state structure is appropriate for antagonist binding analysis, active-state for agonist-bound complexes. Generic GPCR numbering (Ballesteros-Weinstein) enables cross-receptor mutation comparison; always report positions in this system alongside sequence positions.
LOOK UP DON'T GUESS: never assume GPCRdb entry names (e.g., adrb2_human) or PDB IDs — always use GPCRdb_list_proteins to find the correct entry name and GPCRdb_get_structures to confirm available structures.
Research skill integrating GPCRdb (GPCR receptor biology), SAbDab (antibody structures), and PDBePISA (protein interface analysis) to support structural pharmacology, antibody engineering, and GPCR-targeted drug discovery.
KEY PRINCIPLES:
Apply when user asks:
| Tool | Key Parameters | Notes | |------|---------------|-------| | GPCRdb_get_protein | protein | GPCRdb entry name (e.g., adrb2_human), NOT gene symbol or UniProt accession | | GPCRdb_list_proteins | family (optional), protein_class (optional) | Lists all GPCRs; filter by family slug (e.g., "adrenoceptors") OR by human-readable class name via protein_class (e.g., "chemokine receptors", "opioid receptors") | | GPCRdb_get_structures | protein (optional), state (optional) | state: "active", "inactive", "intermediate" | | GPCRdb_get_ligands | protein | Returns agonists, antagonists, biased ligands with affinities | | GPCRdb_get_mutations | protein | Returns mutation effects on receptor function and ligand binding | | SAbDab_search_structures | query | Antigen name, species, or keywords; returns browse URL + metadata | | SAbDab_get_structure | pdb_id | 4-character PDB code (e.g., "6W41"); returns CDR annotations | | SAbDab_get_summary | (no required params) | Database statistics and summary | | PDBePISA_get_interfaces | pdb_id | 4-character PDB code; returns all interface pairs with buried area | | PDBePISA_get_assemblies | pdb_id | Predicted biological assemblies from crystal packing | | PDBePISA_get_monomer_analysis | pdb_id | Per-chain solvent-accessible surface area (SASA) breakdown |
GPCRdb uses its own entry name format: {receptor_slug}_{species}. Common examples:
adrb2_humanadrb1_humanoprm1_humandrd2_humanglp1r_humancxcr4_humanIf entry name is unknown, use GPCRdb_list_proteins() to browse and find the correct slug. You can also filter by receptor class using the protein_class parameter with a human-readable name — e.g., GPCRdb_list_proteins(protein_class="chemokine receptors") — instead of the numeric family slug. Both family and protein_class are accepted and serve overlapping purposes; prefer protein_class when the user provides a receptor class name.
Phase 1: Receptor Identification (for GPCR queries)
-> GPCRdb_list_proteins: find receptor family and entry name
-> GPCRdb_get_protein: receptor details, family, species
Phase 2: Ligand Landscape
-> GPCRdb_get_ligands: all known ligands by pharmacology class
-> Cross-reference with ChEMBL/PubChem for chemical properties
Phase 3: Structural Data
-> GPCRdb_get_structures: available PDB/EMDB structures with resolution
-> PDBePISA_get_interfaces: interface analysis on best structure
-> PDBePISA_get_assemblies: biological assembly determination
Phase 4: Mutation & Pharmacology Data
-> GPCRdb_get_mutations: pharmacological mutation map
-> Compare to ligand binding sites from structure
Phase 5: Antibody Structures (for antibody queries)
-> SAbDab_search_structures: find structures by antigen
-> SAbDab_get_structure: CDR annotations, chain details
-> PDBePISA_get_interfaces: antibody-antigen interface analysispython# List all GPCRs in a family to find entry name (by slug) family_list = GPCRdb_list_proteins(family="adrenoceptors") # Filter by human-readable class name (new -- preferred when user says e.g. "chemokine receptors") chemokine_list = GPCRdb_list_proteins(protein_class="chemokine receptors") # Browse all GPCRs (no family filter) all_gpcrs = GPCRdb_list_proteins() # Get detailed protein info once you have the entry name receptor = GPCRdb_get_protein(protein="adrb2_human") # Returns: family classification, endogenous ligands, tissue expression, # GPCRdb-specific annotations, sequence features
python# Get all known ligands for a GPCR ligands = GPCRdb_get_ligands(protein="adrb2_human") # Returns: ligand names, types (agonist/antagonist/partial/biased/allosteric), # binding affinities (Ki, IC50, EC50), references # Ligand type classification: # - Agonist: activates receptor # - Antagonist/Inverse agonist: blocks or suppresses receptor # - Partial agonist: submaximal activation # - Biased agonist: selective signaling (Gs vs. beta-arrestin bias) # - Positive/Negative allosteric modulator (PAM/NAM)
After retrieving ligands from GPCRdb, optionally cross-reference with:
PubChem_get_CID_by_compound_name(compound_name=ligand_name) — get CID, SMILESChEMBL_search_molecules(query=ligand_name) — get ChEMBL ID, bioactivity datapython# Get available crystal/cryo-EM structures structures = GPCRdb_get_structures(protein="adrb2_human", state="inactive") # state options: "active", "inactive", "intermediate" (omit for all) # Returns: PDB IDs, resolution, ligand in structure, publication info # Analyze a specific structure's interfaces interfaces = PDBePISA_get_interfaces(pdb_id="2rh1") # adrb2 inactive structure # Returns: interface pairs, buried solvent-accessible area (BSA), # interface residues, hydrogen bonds, salt bridges # Determine biological assembly assemblies = PDBePISA_get_assemblies(pdb_id="2rh1") # Returns: predicted oligomeric state, assembly stability score, # subunit composition # Per-chain SASA breakdown monomers = PDBePISA_get_monomer_analysis(pdb_id="2rh1") # Returns: accessible/buried surface area per chain
Interface Analysis Interpretation:
python# Get all mutations characterized for a GPCR mutations = GPCRdb_get_mutations(protein="adrb2_human") # Returns: mutation positions (generic GPCR numbering), effects on: # - Expression/folding # - Ligand binding (affinity changes) # - G-protein coupling # - Receptor activation # Generic GPCR numbering (Ballesteros-Weinstein): # e.g., 3.32 = position 32 in TM helix 3 — conserved across GPCR classes
python# Search SAbDab for antibody structures by antigen results = SAbDab_search_structures(query="EGFR", limit=20) # Returns: browse URL + metadata table of matching structures # Get detailed annotations for a specific antibody structure structure = SAbDab_get_structure(pdb_id="1IQD") # Returns: VH/VL chain IDs, CDR1-3 (Kabat/IMGT), antigen info, # heavy/light chain types, resolution # Get database overview summary = SAbDab_get_summary() # Returns: total structures, species breakdown, antigen coverage stats
CDR Analysis:
PDBePISA_get_interfaces(pdb_id=...) to compute antibody-antigen buried surface areaInput: GPCR name (e.g., "GLP-1 receptor")
Flow: GPCRdb_list_proteins -> find "glp1r_human" ->
GPCRdb_get_protein (receptor details) ->
GPCRdb_get_ligands (approved + investigational drugs) ->
GPCRdb_get_structures (available PDB structures) ->
PDBePISA_get_interfaces on best structure ->
GPCRdb_get_mutations (pharmacological mutants)
Output: Complete GPCR pharmacology profile with structural contextInput: Target antigen (e.g., "PD-L1") or specific PDB code
Flow: SAbDab_search_structures(query="PD-L1") ->
SAbDab_get_structure(pdb_id="best hit") (CDR annotations) ->
PDBePISA_get_interfaces(pdb_id=...) (buried area, key contacts) ->
PDBePISA_get_assemblies (assembly context)
Output: CDR sequences, epitope contact residues, interface energeticsInput: Drug class question (e.g., "beta-adrenergic receptors")
Flow: GPCRdb_list_proteins(family="adrenoceptors") ->
GPCRdb_get_protein per receptor (adrb1/2/3) ->
GPCRdb_get_ligands per receptor (selectivity landscape) ->
GPCRdb_get_structures per receptor (structural coverage)
Output: Family-wide selectivity map, structural availability, ligand classesInput: PDB code
Flow: PDBePISA_get_assemblies (oligomeric state) ->
PDBePISA_get_interfaces (all interface pairs ranked by BSA) ->
PDBePISA_get_monomer_analysis (per-chain surface burial)
Output: Biologically relevant assembly, key interface residues, buried areasThis skill complements other ToolUniverse skills:
| Goal | This skill provides | Complement with | |------|--------------------|--------------------| | GPCR drug discovery | Receptor/ligand/structure data | tooluniverse-binder-discovery for virtual screening | | Antibody engineering | SAbDab structure + CDR data | tooluniverse-antibody-engineering for optimization | | Variant impact on GPCR | GPCRdb mutation effects | tooluniverse-variant-functional-annotation for ACMG | | Target validation | GPCR expression, ligand data | tooluniverse-drug-target-validation | | PDB structure analysis | PDBePISA interfaces | tooluniverse-protein-structure-retrieval for RCSB/PDBe |
| Primary Tool | Fallback | Use When | |-------------|----------|----------| | GPCRdb_get_protein | UniProt search + PubMed | Entry name unknown or non-GPCR target | | GPCRdb_get_ligands | ChEMBL bioactivity search | Receptor not in GPCRdb | | GPCRdb_get_structures | RCSB PDB text search | Structures not yet in GPCRdb | | SAbDab_search_structures | RCSB PDB antibody search | Antigen not indexed in SAbDab | | PDBePISA_get_interfaces | PDBe graph API | PDBePISA returns no interfaces |
For GPCR profiling:
GPCRdb_list_proteins or GPCRdb_get_proteinFor antibody structure:
SAbDab_get_structureOther measured skills in the registry, with their headline benchmark lift.