Skip to main content

gtex-eqtl-skill

Fetch GTEx single-tissue eQTL associations from one variant input by accepting rsID, GRCh37, or GRCh38 input and resolving to the required GRCh38 query for the GTEx v2 API. Use when a user wants eQTL associations returned as JSON.

Stars
1,305
Source
openai/plugins
Updated
2026-05-30
Slug
openai--plugins--gtex-eqtl-skill
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/openai/plugins/HEAD/plugins/life-science-research/skills/gtex-eqtl-skill/SKILL.md -o .claude/skills/gtex-eqtl-skill.md

Drops the SKILL.md into .claude/skills/gtex-eqtl-skill.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Operating rules

  • Use Python requests for all network calls.
  • Accept exactly one of rsid, grch37, grch38, or variant, and resolve to a GRCh38 chrom-pos-ref-alt query.
  • Convert to GTEx variantId format: chr{chrom}_{pos}_{ref}_{alt}_b38.
  • Always return one JSON object (no markdown) as final output.

Input

Accept JSON on stdin as either:

  • A string: "10-112998590-C-T" (treated as GRCh38)
  • An object:
{
  "grch38": "10-112998590-C-T",
  "max_results": 200
}

Other accepted object forms include:

{
  "grch37": "10-114758349-C-T"
}
{
  "rsid": "rs7903146",
  "max_results": 50
}

Allowed variant separators include -, :, _, /, or whitespace, for example:

  • 10-112998590-C-T
  • 10:112998590-C-T
  • 10:112998590:C:T
  • chr10 112998590 C T

max_results is optional and truncates returned eQTL rows when provided.

Output

Success shape:

{
  "ok": true,
  "source": "gtex-v2",
  "input": {"type": "grch38", "value": "10-112998590-C-T"},
  "query_variant": {
    "chr": "10",
    "pos": 112998590,
    "ref": "C",
    "alt": "T",
    "canonical": "10:112998590-C-T",
    "variant_id": "chr10_112998590_C_T_b38"
  },
  "eqtl_count": 2,
  "eqtl_count_total": 2,
  "truncated": false,
  "eqtls": [],
  "paging_info": {},
  "warnings": []
}

Failure shape:

{
  "ok": false,
  "error": {"code": "...", "message": "..."},
  "warnings": []
}

Execution

Use:

  • scripts/gtex_eqtl.py

The script reads JSON from stdin and prints JSON to stdout.

Example:

echo '{"grch38":"10-112998590-C-T","max_results":5}' | python scripts/gtex_eqtl.py