pytdc
Lets your agent use datasets and benchmarks for drug discovery. It's useful for health and biology research.
What it does
PyTDC is a tool that helps scientists find and use data for drug discovery research. It allows you to discover datasets, load information, and evaluate test results.
When to use it
- ✓When you need to find data about drug testing.
- ✓When loading datasets for analysis.
- ✓To evaluate the accuracy of drug prediction models.
Example of what to ask your AI
“What datasets are available for drug toxicity research?”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
PyTDC organizes and provides access to drug research data. It lets you choose which data to use and how to evaluate it, without needing to download everything at once.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add K-Dense-AI/scientific-agent-skills --skill pytdcOr download just the file:
curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/pytdc/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
PyTDC (Therapeutics Data Commons)
Use the official PyTDC distribution (import tdc) to discover therapeutic ML
tasks, load approved datasets, apply task-appropriate splits, evaluate predictions,
and work with curated benchmark groups. Prefer package metadata over copied dataset
lists, and plan network/storage effects before constructing any loader.
Verified snapshot
- Research date: 2026-10-01
- PyPI stable: PyTDC 1.1.15, released 2025-03-31
- Package/source repository:
mims-harvard/TDC - Code license: MIT
- PyPI supplies only a source distribution and declares no
Requires-Python - The dependency graph makes CPython 3.11 the reproducible target used here:
cellxgene-census==1.15.0excludes Python 3.12, and PyTDC's constrained RDKit release has no CPython 3.13 wheel - PyTDC imports deprecated
pkg_resourcesat runtime. Setuptools 82 removed that module; pin the verified compatibility release setuptools 80.9.0. tdc.readthedocs.iostill identifies itself as TDC 0.4.1; use it as API cross-reference, not as release-version evidence- Upstream publishes no GitHub tags/releases or maintained changelog. Treat undocumented migration claims as uncertainty and verify against the installed 1.1.15 source/metadata.
See references/sources.md for dated evidence and known documentation conflicts.
Installation
Use an isolated CPython 3.11 environment and pin the reviewed snapshot:
uv venv --python 3.11 .venv-pytdc
uv pip install --dry-run --python .venv-pytdc/bin/python \
"setuptools==80.9.0" "PyTDC==1.1.15"
uv pip install --python .venv-pytdc/bin/python \
"setuptools==80.9.0" "PyTDC==1.1.15"
The current macOS ARM64 test resolution installed 128 packages, including large
scientific/ML dependencies, so the environment itself can transfer and occupy
hundreds of megabytes before any dataset is downloaded. Review the dry run and
available disk first. The direct pins identify the reviewed API snapshot; generate
a platform-specific uv.lock in the user's project when every transitive version
must also be frozen.
For an ephemeral command:
uv run --no-project --isolated --python 3.11 \
--with "setuptools==80.9.0" --with "PyTDC==1.1.15" \
python scripts/discover_metadata.py --kind tasks
To check for a newer release, inspect the PyPI release history at
https://pypi.org/project/pytdc/. Before changing the pin, compare its source
distribution, dependencies, official repository, task registries, and smoke tests;
do not silently substitute the separate pytdc-nextml package.
Non-negotiable data and network policy
- Discover first. Reading
tdc.metadataor usingscripts/discover_metadata.pydoes not instantiate a loader or download data. - Plan second. Record the exact task/dataset, official task page, license, expected size, cache directory, split, metric, and reproducibility seed.
- Confirm the authorized scope before downloading. Loader constructors fetch missing data. Some datasets and benchmark-group archives are large; model-backed oracles can fetch checkpoints; remote/docking oracles can transmit molecular structures.
- Execute within that scope. In bundled CLIs,
--executeacknowledges execution and--downloadis additionally required for MolGen corpora or supported oracle checkpoints. - Keep outputs bounded. Emit counts, schema, and small previews rather than full datasets, sequences, prediction arrays, or molecule corpora.
Cache and cost behavior
- Ordinary loaders default to
path="./data"and save files beneath that path. The bundled scripts instead default to explicit.pytdc-*directories. - Core downloads use Harvard Dataverse file endpoints when a local filename is absent. Newer resource classes may use other upstream services.
admet_group(path=...)and other benchmark-group constructors download and extract the group archive when<path>/<group>is absent.- Download-backed
Oracle(...)construction uses./oracleinternally. The bundled oracle CLI changes into a safe runtime directory before approved calls. - PyTDC 1.1.15 does not provide a universal cache quota, eviction policy, or
dataset-wide checksum manifest. Use
scripts/cache_audit.pyand manage disk retention explicitly. - Network transfer, local storage, decompression, parsing, feature generation,
…
FAQ
What are 'Therapeutics Data Commons'?
These are organized collections of data to aid in the research and development of new medicines.
Do I need to download all the data to start?
No, you can first discover what data exists and then choose what you need to download.
Is this tool free to use?
The PyTDC code is MIT licensed, but the data and tasks may have different licenses. It's important to check the terms for each dataset.
Details
Original description by the author
Provides Therapeutics Data Commons workflows through PyTDC for registry discovery, dataset access, task-aware splits, evaluator metrics, benchmark groups, and bounded molecular-oracle scoring. Use when working with TDC therapeutic ML datasets or benchmarks.
Popularity
- GitHub stars
- 51k
- Ranking position
- #1955
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
13c-metabolic-flux
Estimates metabolic fluxes using carbon-13 isotope tracing data. It is useful for analyzing cellular metabolism and biochemical pathways.
K-Dense-AI/scientific-agent-skills
adaptyv
Designs protein characterization experiments using the Adaptyv API. It helps estimate costs, submit sequences, and monitor lab results.
K-Dense-AI/scientific-agent-skills
aeon
Performs machine learning tasks on time series data. It is useful for classifying, forecasting, detecting anomalies, and finding patterns in sequential data.
K-Dense-AI/scientific-agent-skills
alphagenome
Looks up precomputed genomic effects for genetic variants. It provides scores and explanations to understand the impact of variants on the genome.
K-Dense-AI/scientific-agent-skills
Similar skills
pytorch-patterns
Helps your agent use PyTorch for machine learning models. It applies best practices for efficient model training and ensures reproducible results.
affaan-m/ECC
evm-token-decimals
Helps your agent avoid errors with decimal numbers across different blockchain networks. It ensures token values are accurate in transactions and calculations.
affaan-m/ECC
knowledge-agent
Creates and queries knowledge bases using AI. It allows asking questions about past work or compiling expertise on a topic.
thedotmack/claude-mem