# Jaspar Database

Query the JASPAR database for Transcription Factor (TF) binding profiles.

- Repository: https://github.com/google-deepmind/science-skills (3377 stars)
- Category: Data and ML
- License: Apache-2.0
- Last updated: 2026-10-23
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add google-deepmind/science-skills --skill jaspar-database -g -a claude-code -y`
Codex: `npx skills add google-deepmind/science-skills --skill jaspar-database -g -a codex -y`
Cursor: `npx skills add google-deepmind/science-skills --skill jaspar-database -g -a cursor -y`
Gemini CLI: `npx skills add google-deepmind/science-skills --skill jaspar-database -g -a gemini-cli -y`

## Description

Query the JASPAR database for Transcription Factor (TF) binding profiles. Use when retrieving Position Frequency Matrices (PFMs) or Position Weight Matrices (PWMs) for specific TFs, resolving gene symbols to JASPAR Matrix IDs, or getting TF metadata. Supports multiple output formats (MEME, TRANSFAC, PFM, JASPAR, YAML).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# JASPAR Skill

JASPAR is the definitive open-access database for Transcription Factor (TF)
binding profiles, stored as Position Frequency Matrices (PFMs).

Use this skill to map abstract sequence motifs or genomic regions to specific
biological regulators (e.g., "what TFs bind here?" or "what is the motif for
CTCF?").

## Prerequisites

1.  **`uv`**: Read the `uv` skill and follow its Setup instructions to ensure
    `uv` is installed and on PATH.
2.  **User Notification**: If .licenses/jaspar_database_LICENSE.txt does not
    already exist in the workspace root directory then (1) prominently notify
    the user to check the terms at https://jaspar.elixir.no/ and
    https://jaspar.elixir.no/api/, then (2) create the file recording the
    notification text and timestamp.

## Core Rules

**CRITICAL**: You MUST respect the JASPAR API Terms of Use by adhering to the
following:

-   **Use the Wrapper**: ALWAYS execute the provided helper scripts to query the
    database rather than accessing the database directly. The scripts
    automatically enforce the required rate limit gracefully.
-   **Maximum API Window Size**: The genomic window for a single API query MUST
    NOT exceed 100,000 bp (100kb). The `jaspar_api.py` script automatically
    chunks larger requests for you to bypass this limitation when querying
    larger regions.
-   **Valid Matrix IDs**: `get_tf_motif`, `get_tf_metadata`, and `get_tf_pwm`
    require a stable JASPAR Matrix ID (e.g., `MA0488.2`). If a user provides a
    gene symbol (e.g., `JUN`), you must resolve it first using `resolve_tf_id`.
-   **Taxonomy Required**: Resolving IDs requires a `tax_id` to ensure targeted
    searches. Common IDs: Human=9606, Mouse=10090.
-   **Notification**: If this skill is used, ensure this is mentioned in the
    output.

## Utility Scripts

Run all commands using the bundled Python script:

### 1. Resolve TF to Matrix ID

The rest: https://github.com/google-deepmind/science-skills/blob/HEAD/skills/jaspar_database/SKILL.md
