jaspar-database

Par mkurman · zorai

Interrogez la base de données JASPAR pour obtenir des profils de liaison des facteurs de transcription (TF). À utiliser pour récupérer des matrices de fréquence de position (PFM) ou des matrices de poids de position (PWM) pour des TF spécifiques, résoudre des symboles de gènes en identifiants de matrices JASPAR, ou obtenir des métadonnées sur les TF. Prend en charge plusieurs formats de sortie (MEME, TRANSFAC, PFM, JASPAR, YAML).

npx skills add https://github.com/mkurman/zorai --skill jaspar-database

Skill JASPAR

JASPAR est la base de données pionnière en accès libre pour les profils de liaison des Facteurs de Transcription (FT), stockés sous forme de Matrices de Fréquences de Positions (PFM).

Utilisez ce skill pour mapper des motifs de séquences abstraits ou des régions génomiques à des régulateurs biologiques spécifiques (par exemple, « quels FT se lient ici ? » ou « quel est le motif pour CTCF ? »).

Prérequis

  1. uv : Lisez le skill uv et suivez ses instructions de configuration pour vous assurer que uv est installé et accessible dans le PATH.
  2. Notification utilisateur : Si LICENSE_NOTIFICATION.txt n'existe pas déjà dans le répertoire de ce skill, alors (1) notifiez clairement l'utilisateur de consulter les conditions à https://jaspar.elixir.no/ et https://jaspar.elixir.no/api/, puis (2) créez le fichier enregistrant le texte et l'horodatage de la notification.

Règles Fondamentales

CRITIQUE : Vous DEVEZ respecter les Conditions d'Utilisation de l'API JASPAR en adhérant aux éléments suivants :

  • Utilisez le Wrapper : EXÉCUTEZ TOUJOURS les scripts d'assistance fournis pour interroger la base de données plutôt que d'accéder directement à celle-ci. Les scripts appliquent automatiquement le rate limit requis avec élégance.
  • Taille Maximale de la Fenêtre API : La fenêtre génomique pour une seule requête API NE DOIT PAS dépasser 100 000 pb (100kb). Le script jaspar_api.py découpe automatiquement les requêtes plus grandes pour contourner cette limitation lors de l'interrogation de régions plus grandes.
  • Matrix IDs Valides : get_tf_motif, get_tf_metadata et get_tf_pwm nécessitent un Matrix ID JASPAR stable (par exemple, MA0488.2). Si un utilisateur fournit un symbole de gène (par exemple, JUN), vous devez d'abord le résoudre en utilisant resolve_tf_id.
  • Taxonomie Requise : La résolution des IDs nécessite un tax_id pour garantir des recherches ciblées. IDs courants : Humain=9606, Souris=10090.
  • Notification : Si ce skill est utilisé, assurez-vous que cela est mentionné dans la sortie.

Scripts Utilitaires

Exécutez toutes les commandes en utilisant le script Python fourni :

1. Résoudre FT en Matrix ID

Mappe un nom de facteur de transcription à un Matrix ID stable. Étape obligatoire avant de récupérer les motifs si seul un nom de gène est fourni.

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

2. Obtenir le Motif FT (PFM)

Récupère la Matrice de Fréquences de Positions brute pour un FT spécifique. Supporte l'option --format.

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. Obtenir les Métadonnées du FT

Récupère la classe, la famille du FT et les liens vers des bases de données externes (par exemple, UniProt). Supporte l'option --format.

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. Calculer la PWM (Position Weight Matrix)

Récupère la PFM pour une matrice et la convertit en scores log-odds (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. Inférer une Matrice à partir d'une Séquence Protéique

Infère les profils potentiels de matrice JASPAR à partir d'une séquence protéique de facteur de transcription brute.

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

6. Obtenir le Modèle Flexible FT (TFFM)

Récupère les métadonnées pour un Modèle Flexible FT JASPAR. (Remarque : Les endpoints TFFM JASPAR rencontrent occasionnellement des erreurs 500 Erreur Interne du Serveur).

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

Formats de Sortie

Les commandes get_tf_motif et get_tf_metadata acceptent une option --format facultative. Formats supportés : json (défaut), jsonp, jaspar, meme, transfac, pfm, yaml.

Anti-Motifs

  • NE PASSEZ PAS de symboles de gènes (par exemple, JUN) à get_tf_motif. Vous devez passer le Matrix ID MA....
  • N'OUBLIEZ PAS le --tax-id lors de la résolution d'un nom de FT.
  • N'UTILISEZ PAS ce skill pour déterminer la disponibilité épigénétique spécifique aux tissus (JASPAR montre une liaison potentielle, non le contexte réel d'expression tissulaire).
  • N'UTILISEZ PAS ce skill pour modéliser comment une mutation protéique spécifique affecte la liaison.

Skills similaires