primekg
Has your agent query a precision medicine knowledge graph for information on genes, drugs, and diseases. It's useful for biological research and hypothesis generation.
What it does
This agent searches a database called PrimeKG for information. It can find connections between genes, drugs, diseases, and traits, and provide details about these relationships.
When to use it
- ✓To check known connections between genes and diseases.
- ✓To find drugs associated with a specific disease.
- ✓To explore traits related to a medical condition.
Example of what to ask your AI
“What genes are associated with Alzheimer's disease?”
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
You provide a term (like a disease or gene name), and the agent searches the PrimeKG database for related information. It returns direct connections and also paths up to two steps to help understand the relationships.
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 primekgOr download just the file:
curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/primekg/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
PrimeKG Knowledge Graph
When to use
Use for reproducing PrimeKG analyses, resolving entities in a specific graph artifact, or exploring recorded gene, drug, disease, phenotype, anatomy, and pathway associations. A path supports a research hypothesis; it does not establish causality, treatment efficacy, a prescribing recommendation, or a diagnostic conclusion.
PrimeKG upstream now recommends OptimusKG for new work. This skill remains scoped to PrimeKG CSVs; the helper is not an OptimusKG client. Published PrimeKG integrates 20 resources, with approximately 129,000 nodes and 4.05 million undirected relationships. CSVs contain reverse rows, so row counts differ from distinct undirected relationship counts. Count the actual pinned artifact.
1. Pin and verify the input
The official dataset remained V2.1, published
2022-05-02, at the 2026-10-01 review. Its kg.csv has Dataverse file ID 6180620,
size 981751236 bytes, and provider MD5 aac8191d4fbc5bf09cdf8c3c78b4e75f.
The record declares CC0 1.0; upstream construction code is MIT. These are distinct
from this skill's retained license declaration and from terms of individual source
resources used in a rebuild.
Use the artifact and API reference to obtain metadata,
verify the file checksum, or distinguish kg.csv, kg_grouped.csv, features, and PyTDC.
The 2023 construction/OMIM updates in GitHub do not make the published 2022 artifact a
2023 dataset. Record DOI, version, filename, file ID, checksum, retrieval date, and any
subset/rebuild steps with every result.
The helper makes no remote graph queries. Download the CSV deliberately after checking storage and RAM. This full-download example is illustrative; validation used small HTTP byte ranges and synthetic data, not the 982 MB file:
curl --fail --location --output kg.csv \
'https://dataverse.harvard.edu/api/access/datafile/6180620'
export PRIMEKG_DATA="$PWD/kg.csv"
PRIMEKG_DATA is read when the module is imported; the default is data/PrimeKG/kg.csv.
The module reads the whole CSV for each public query. low_memory parsing is not a
bounded-memory graph engine. For many queries or limited RAM, build an indexed local
store from the pinned file and validate its node keys, edge multiplicities, and counts.
2. Resolve a typed entity before traversal
Run from this skill's directory with pandas installed, so scripts.query_primekg is
importable. The following is an illustrative real-data query; no disease result or ID
is promised without inspecting the pinned file:
from scripts.query_primekg import search_nodes, get_neighbors
candidates = search_nodes("Alzheimer", node_type="disease", limit=None)
for node in candidates:
print(node) # id, type, name, source, and index when present
# Review the candidates and select the intended disease before calling:
# get_neighbors(selected["id"], node_type=selected["type"],
# node_source=selected["source"])
Search is literal, case insensitive, and returns at most 20 matches by default;
limit=None removes that cap. Preserve IDs as strings, including numeric-looking and
underscore-joined IDs. Drug nodes use DrugBank identifiers; diseases can use
MONDO or MONDO_grouped, including IDs joining multiple diseases. Do not invent EFO,
ChEMBL, Wikidata, or prefixed MONDO IDs from labels. x_index/y_index are local release
indexes, not ontology accessions and not stable across rebuilds.
The helper identifies a node by (id, type, source) and rejects ambiguous bare IDs
or a key mapping to multiple release indexes. Supply node_type and node_source
from the search result. Equal numeric IDs from different namespaces are different nodes.
3. Retrieve associations without losing their meaning
get_neighbors(node_id, relation_type=None, *, node_type=None, node_source=None)
collects both stored orientations. Reverse rows are consolidated into one adjacency
per neighboring identity/name, relation, and display_relation; all original rows
remain in edge_rows. Extra CSV evidence columns and release indexes are preserved.
Do not multiply evidence counts by the number of reverse copies.
Use exact stored relation names. Common published relations include:
relation |
Interpretation to retain |
|---|
…
FAQ
What is PrimeKG?
PrimeKG is a large database that organizes information about genes, drugs, diseases, and traits, showing how they are related.
Can this agent tell me if a treatment works?
No, the agent only shows recorded associations in the database. It cannot confirm treatment effectiveness or make recommendations.
Do I need to download a file?
Yes, to use this agent, you need to download a specific file from the PrimeKG database. The agent does not search the internet in real-time.
Details
Original description by the author
Queries a pinned Precision Medicine Knowledge Graph (PrimeKG) CSV for typed gene, drug, disease, and phenotype nodes, direct associations, disease context, and one- or two-hop paths. Use for PrimeKG reproducibility, biological association lookup, and hypothesis generation with relation and data provenance preserved.
Popularity
- GitHub stars
- 51k
- Ranking position
- #1940
- 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
data-throughput-accelerator
Makes your agent speed up the movement of large data volumes. It finds bottlenecks and ensures data is transferred quickly and correctly.
affaan-m/ECC
inventory-demand-planning
Helps your agent predict product demand in stores. It optimizes stock and plans when to run promotions to sell more.
affaan-m/ECC
market-research
Helps your agent conduct market research and competitive analysis. Provides summaries with source attribution.
affaan-m/ECC