kohulan/chemaudit/chemaudit-database-integrations
Claude Code and agent skill by kohulan/chemaudit
- community
Checking that the SKILL.md file is still in the repository.
Look up molecules across PubChem, ChEMBL, COCONUT, Wikidata, and SureChEMBL patent databases, resolve chemical identifiers (CAS, ChEMBL ID, PubChem CID, ChEBI, UNII, DrugBank, names), and run cross-database consistency checks. Use when user says "look up in PubChem", "ChEMBL bioactivity", "natural product search", "COCONUT lookup", "Wikidata lookup", "resolve CAS number", "resolve ChEMBL ID", "cross-database check", "find this compound", "patent search", "SureChEMBL", or "identifier resolution". Supports SMILES, InChI, InChIKey, CAS, ChEMBL ID, PubChem CID, ChEBI, UNII, DrugBank ID, Wikipedia URL, and compound names (OPSIN + PubChem fallback).
Install
npx vskill@latest install kohulan/chemaudit/chemaudit-database-integrationsSKILL.md
ChemAudit Database Integrations
Overview
Five external-database lookups plus two cross-database tools:
| Endpoint | Purpose | |
|---|---|---|
POST /api/v1/integrations/pubchem/lookup | PubChem compound info (CID, IUPAC, synonyms, formula, MW) | |
POST /api/v1/integrations/chembl/bioactivity | ChEMBL molecule + bioactivity records | |
POST /api/v1/integrations/coconut/lookup | COCONUT natural-product database (>400K entries, organism, NP-likeness) | |
POST /api/v1/integrations/wikidata/lookup | Wikidata via SPARQL (label, CAS, Wikipedia link) | |
POST /api/v1/integrations/surechembl/lookup | SureChEMBL patent presence | |
POST /api/v1/integrations/compare | Consistency check across PubChem + ChEMBL + COCONUT | |
POST /api/v1/resolve | Universal identifier resolver for 11 identifier types |
All lookup endpoints accept {smiles: "...", inchikey: "..."} — provide at least one. Identifier resolution accepts anything.
Workflow
1. PubChem
Response:
2. ChEMBL bioactivity
Response:
max_phase: 0 (preclinical), 1-3 (clinical trials), 4 (approved).
3. COCONUT natural products
Response:
4. Wikidata
Returns label, canonical SMILES, InChIKey, CAS, formula, MW, and a Wikidata entity URL. SPARQL-based — typically slower than the other integrations. For a Wikipedia URL, use /resolve and read cross_references.wikipedia_url.
5. SureChEMBL patent lookup
Response:
Binary present/absent with direct link; patent count populated when SureChEMBL's enrichment API is reachable.
6. Cross-database comparison
At least one of smiles or inchikey required. Runs PubChem, ChEMBL, COCONUT in parallel and aligns outputs.
Response:
Verdicts: consistent, consistent_minor (minor numeric differences), inconsistent (structural disagreement), no_data (no database found the compound).
7. Universal identifier resolver
Accepts 11 identifier types and resolves to canonical SMILES with cross-references. Use this before any other lookup when you don't know the structural representation.
Supported types: auto, smiles, inchi, inchikey, pubchem_cid, chembl_id, cas, drugbank_id, chebi_id, unii, wikipedia, name.
Response:
resolution_chain shows the UniChem/PubChem hops taken. confidence values: high, medium, low, none.
Examples
Example 1 — "Look up aspirin in all databases"
- Resolve the name first:
POST /resolve {"identifier": "aspirin"}→ get InChIKey. POST /integrations/comparewith the InChIKey → one consolidated response covering PubChem, ChEMBL, COCONUT.- For patent info:
POST /integrations/surechembl/lookupseparately.
Example 2 — "Convert this CAS number to SMILES"
Just one call: POST /resolve {"identifier": "50-78-2"} → returns canonical SMILES plus UniChem cross-references to all other databases.
Example 3 — "Has anyone filed a patent on this compound?"
POST /integrations/surechembl/lookup {"inchikey": "..."} → found tells you yes/no, patent_count tells you how many when enrichment API is available.
Example 4 — "Get all ChEMBL bioactivity records for aspirin and filter to IC50 values in nM"
- Resolve to ChEMBL ID or InChIKey.
POST /integrations/chembl/bioactivity {"inchikey": "..."}.bioactivities[]has per-recordactivity_type,activity_value,activity_unit. Filter client-side toactivity_type=="IC50"andactivity_unit=="nM".
Example 5 — "Are the PubChem and ChEMBL SMILES consistent for this compound?"
POST /integrations/compare with the InChIKey → comparisons[] has per-property agreement status. overall_verdict = "inconsistent" means structures disagree — worth investigating.
Rate limits
/integrations/pubchem/lookup,/chembl/bioactivity,/coconut/lookup,/wikidata/lookup,/surechembl/lookup: 30/min./integrations/compare: 10/min./resolve: 30/min.
Upstream APIs (PubChem, ChEMBL, etc.) have their own rate limits. Excessive queries may trigger temporary blocks from the upstream source — the ChemAudit service respects Retry-After headers where provided.
Troubleshooting
found: false but the compound definitely exists in PubChem
Try the other identifier. Some compounds are indexed by InChIKey but not easily queried by SMILES (and vice-versa) due to tautomer/isomer normalization on the upstream side. If /resolve finds it via name, use the returned InChIKey.
/resolve: resolved: false, confidence: "none"
None of the 11 resolvers matched. Common causes:
- Typo in the identifier.
- Non-standard format (e.g. CAS with no dashes).
- Compound is too new and hasn't been indexed in UniChem yet.
Slow Wikidata responses
SPARQL endpoint latency is highly variable. Wikidata is typically the slowest integration; consider skipping it for bulk workflows.
/integrations/compare: verdict: "inconsistent"
Structural disagreement across databases — usually a charge state, tautomer, or salt-form difference. Read comparisons[] to isolate which property differs. Often resolved by standardizing first (chemaudit-standardization) and re-querying.
ChEMBL returns 0 bioactivities for a known drug
Rare but possible when the compound is registered under a different ChEMBL ID (e.g. a salt form vs parent). /resolve the name, get the chembl_id from cross_references, then query directly.
SureChEMBL found: false but you know the compound is patented
UniChem's SureChEMBL cross-reference isn't comprehensive. When found-by-UniChem misses, the SureChEMBL direct API may still succeed — the service attempts both in sequence.
Further reading
chemaudit-molecule-validation— validate the structure once resolved.chemaudit-standardization— before cross-database comparison, standardize to reduce salt-form mismatches.chemaudit-dataset-intelligence— for dataset-level cross-database consistency checks.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/chemaudit-database-integrations/SKILL.md
Popularity
- Repository stars
- 63
- Repository forks
- 7
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/kohulan/chemaudit/chemaudit-database-integrations)