← Life Science ResearchCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Life Science Research
Snapshot Sep 30, 2026 · 23:18 UTC · version 1.0.3
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "eqtl-catalogue-skill",
"description": "Submit compact eQTL Catalogue API requests for association retrieval and documented metadata endpoints. Use when a user wants concise public eQTL Catalogue summaries",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 98
},
{
"relative_path": "scripts/rest_request.py",
"size_in_bytes": 13525
},
{
"relative_path": "scripts/test_rest_request.py",
"size_in_bytes": 3299
}
],
"skill_md_contents": "---\nname: eqtl-catalogue-skill\ndescription: Submit compact eQTL Catalogue API requests for association retrieval and documented metadata endpoints. Use when a user wants concise public eQTL Catalogue summaries\n---\n\n## Operating rules\n- Use `scripts/rest_request.py` for all eQTL Catalogue calls.\n- Use `base_url=https://www.ebi.ac.uk/eqtl/api`.\n- Prefer targeted association endpoints over broad list endpoints.\n- The public API currently appears strict about query validation, and live smoke tests returned intermittent `400`/`500`/timeout failures even with documented parameter sets; treat this source as usable but upstream-fragile.\n- For association endpoints, the script now backfills compatibility defaults for `quant_method`, `p_lower`, `p_upper`, and blank filter strings because the live API is currently rejecting omitted optional filters.\n- Prefer `variant_id` in requests; the script mirrors it to the legacy `snp` query key to accommodate the current server-side validator.\n- Re-run requests in long conversations instead of relying on older tool output.\n\n## Execution behavior\n- Return concise markdown summaries from the script JSON by default.\n- Return raw JSON only if the user explicitly asks for machine-readable output.\n- Prefer documented versioned paths such as `v3/studies`, `v3/associations`, `v3/studies/<study_id>/associations`, or legacy `v1/.../associations` routes with explicit filters, and surface upstream `400`/`500` errors verbatim when they occur.\n\n## Input\n- Read one JSON object from stdin.\n- Required fields: `base_url`, `path`\n- Optional fields: `method`, `params`, `headers`, `json_body`, `form_body`, `record_path`, `response_format`, `max_items`, `max_depth`, `timeout_sec`, `save_raw`, `raw_output_path`\n- Common eQTL Catalogue patterns:\n - `{\"base_url\":\"https://www.ebi.ac.uk/eqtl/api\",\"path\":\"v3/studies\",\"max_items\":10}`\n - `{\"base_url\":\"https://www.ebi.ac.uk/eqtl/api\",\"path\":\"v3/associations\",\"params\":{\"gene_id\":\"ENSG00000141510\",\"rsid\":\"rs7903146\",\"size\":10},\"max_items\":10}`\n - `{\"base_url\":\"https://www.ebi.ac.uk/eqtl/api\",\"path\":\"v1/genes/ENSG00000141510/associations\",\"params\":{\"variant_id\":\"rs7903146\",\"size\":10},\"max_items\":10}`\n\n## Output\n- Success returns `ok`, `source`, `path`, `method`, `status_code`, `warnings`, and either compact `records` or a compact `summary`.\n- Use `raw_output_path` when `save_raw=true`.\n- Failure returns `ok=false` with `error.code` and `error.message`.\n\n## Execution\n```bash\necho '{\"base_url\":\"https://www.ebi.ac.uk/eqtl/api\",\"path\":\"v3/studies\",\"max_items\":10}' | python scripts/rest_request.py\n```\n\n## References\n- No additional runtime references are required; keep the import package limited to this file and `scripts/rest_request.py`.\n"
}SHA-256: b6416d868e9a7f17f2de28adb6a0b7934a51a4046527253736b5132608846982