Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
google-deepmind avatar

Jaspar Database

  • 1.2k installs
  • 2.6k repo stars
  • Updated July 7, 2026
  • google-deepmind/science-skills

jaspar-database is a Python agent skill that queries the JASPAR transcription factor binding profile database via API for developers who need programmatic motif and TFBS lookups in genomics pipelines.

About

jaspar-database is a Google DeepMind science-skills wrapper around the JASPAR API for AI coding agents. The skill ships as a Python ≥3.10 script module that depends on scienceskillscommon and exposes transcription factor binding profile queries without leaving the agent session. Developers reach for jaspar-database when building or extending genomics, regulatory genomics, or motif-analysis code that must fetch curated PWM/profile data from JASPAR instead of hard-coding matrices or scraping the web UI. The README positions it explicitly as a JASPAR API skill wrapper under Apache 2.0, making it suitable for reproducible bioinformatics automation inside Claude Code, Cursor, or Codex workflows.

  • Wraps the official JASPAR REST API (https://jaspar.elixir.no/api/v1/) with rate-limited HTTP client
  • Supports all official output formats: json, jsonp, jaspar, meme, transfac, pfm, yaml
  • Automatic output truncation at 50,000 characters with clear continuation notice
  • Built on scienceskillscommon with shared HTTP utilities and 10 QPS throttling
  • Ready-to-use argparse CLI for interactive and scripted database queries

Jaspar Database by the numbers

  • 1,246 all-time installs (skills.sh)
  • +166 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #917 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/google-deepmind/science-skills --skill jaspar-database

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs1.2k
repo stars2.6k
Security audit2 / 3 scanners passed
Last updatedJuly 7, 2026
Repositorygoogle-deepmind/science-skills

How do you query JASPAR TF binding profiles from code?

Query the JASPAR transcription factor binding profile database directly from their AI coding agent.

Who is it for?

Bioinformatics and computational biology developers wiring JASPAR motif data into Python pipelines, notebooks, or agent-driven analysis scripts.

Skip if: Developers who only need general-purpose REST clients or who are not working with transcription factor binding sites and regulatory genomics data.

When should I use this skill?

The user mentions JASPAR, transcription factor binding profiles, PWM matrices, TFBS lookup, or motif databases in genomics code.

What you get

Programmatic JASPAR API query results, PWM/profile metadata, and agent-ready binding-site lookup outputs for downstream analysis code.

  • JASPAR API query results
  • TF binding profile metadata

By the numbers

  • Requires Python ≥3.10
  • Depends on scienceskillscommon package

Files

SKILL.mdMarkdownGitHub ↗

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 LICENSE_NOTIFICATION.txt does not already exist in this skill 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

Maps a transcription factor name to a stable Matrix ID. Required step before fetching motifs if only a gene name is provided.

uv run scripts/jaspar_api.py resolve_tf_id --name "JUN" --tax-id 9606

2. Get TF Motif (PFM)

Retrieves the raw Position Frequency Matrix for a specific TF. Supports --format flag.

uv run scripts/jaspar_api.py get_tf_motif --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_motif --matrix-id "MA0488.2" --format meme

3. Get TF Metadata

Retrieves TF class, family, and links to external databases (e.g., UniProt). Supports --format flag.

uv run scripts/jaspar_api.py get_tf_metadata --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_metadata --matrix-id "MA0488.2" --format yaml

4. Compute PWM (Position Weight Matrix)

Fetches the PFM for a matrix and converts it to log-odds scores (PWM).

uv run scripts/jaspar_api.py get_tf_pwm --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_pwm --matrix-id "MA0488.2" --pseudocount 0.1

5. Infer Matrix from Protein Sequence

Infers potential JASPAR matrix profiles from a raw transcription factor protein sequence.

uv run scripts/jaspar_api.py infer_from_sequence --sequence "QAQLLPSHHVG"

6. Get TF Flexible Model (TFFM)

Retrieves metadata for a JASPAR TF Flexible Model. (Note: The JASPAR TFFM endpoints occasionally experience 500 Internal Server errors).

uv run scripts/jaspar_api.py get_tffm --tffm-id "TFFM0001.1"

Output Formats

The get_tf_motif and get_tf_metadata commands accept an optional --format flag. Supported formats: json (default), jsonp, jaspar, meme, transfac, pfm, yaml.

Anti-Patterns

  • DON'T pass gene symbols (e.g., JUN) to get_tf_motif. You must pass

the MA... Matrix ID.

  • DON'T forget the --tax-id when resolving a TF name.
  • DON'T use this skill for determining tissue-specific epigenetic

availability (JASPAR shows potential binding, not actual tissue expression context).

  • DON'T use this skill to model how a specific protein mutation affects

binding.

Related skills

FAQ

What does jaspar-database query?

jaspar-database queries the JASPAR transcription factor binding profile database through its API wrapper. Developers use the skill from an AI coding agent to retrieve curated PWM and binding-site profile data for genomics and motif-analysis code.

What are jaspar-database prerequisites?

jaspar-database requires Python 3.10 or newer and the scienceskillscommon package listed in its script metadata. The skill is distributed as part of google-deepmind/science-skills under Apache 2.0.

Is Jaspar Database safe to install?

skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

AI & Agent Buildingagentsautomationresearch

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.