Agent skill

Singlecell Portal

by aipoch in aipoch/medical-research-skills

Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type…

MITAuto-check passedResearch & Science

Install Singlecell Portal

skills CLI
$ npx skills add aipoch/medical-research-skills --skill singlecell-portal -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install aipoch/medical-research-skills singlecell-portal --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/aipoch/medical-research-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/'scientific-skills/Data Analysis/singlecell-portal' .claude/skills/singlecell-portal && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
singlecell-portal
GitHub stars
2k
Token cost
~1.2k tokens
SKILL.md length
314 words
Files
4 (incl. scripts, references)
Skills in repo
578
Repo updated
First seen
Licence
MIT

At a glance

Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type…

  • Tasks that involve Bioinformatics
  • SKILL.md covers When to Use, Key Features, Dependencies and Example Usage, plus 1 more section
  • Runs Python scripts from its folder; reaches singlecell.broadinstitute.org
  • Tasks that involve REST APIs

What it does

Singlecell Portal is an agent skill from aipoch/medical-research-skills. Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type without an API key.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/evaluation-checklist.md`, `scripts/query.py` and `singlecell-portal_audit_result_v1.json`).

It sits in Research & Science, covering Bioinformatics and REST APIs. The repository describes itself as: Hundreds of agent skills for medical research, including protocol design, data analysis, evidence insights, and academic writing. The licence is MIT.

When your agent uses it

  • Tasks that involve Bioinformatics
  • Tasks that involve REST APIs

Example prompts

  • “/singlecell-portal”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit 686e09d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • singlecell.broadinstitute.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Singlecell Portal loads about 1.2k tokens when it runs, and up to ~1.4k if it reads all its reference files. Until then it costs about 59 tokens; SKILL.md has 314 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from aipoch/medical-research-skills at commit 686e09d, republished under its MIT licence (© aipoch). 314 words, ~1,174 tokens.

Download SKILL.mdSave it as .claude/skills/singlecell-portal/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
singlecell-portal
description
Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type without an API key.
license
MIT
author
AIPOCH

Source: https://github.com/aipoch/medical-research-skills

When to Use

  • You need to discover relevant public single-cell studies by filtering on organism (e.g., human/mouse) and tissue (e.g., lung/brain).
  • You want to quickly retrieve study-level metadata (e.g., study name, accession, cell counts) for downstream curation or reporting.
  • You are building a script or tool that needs no authentication and should work reliably on Windows with minimal setup.
  • You want to inspect available filter facets (what tissues/diseases/cell types exist in the index) before constructing queries.
  • You need a lightweight way to validate that a study exists and fetch its details by accession.

Key Features

  • Direct REST access to the official Single Cell Portal API (/single_cell/api/v1/*)
  • No API key required (public endpoints)
  • Faceted search for studies (organism, tissue, disease, cell type, etc.)
  • Retrieve facet dictionaries to build valid filters
  • Retrieve study details by accession
  • Minimal dependency footprint (only requests)
  • Windows-friendly behavior (optional SSL verification disablement for certificate issues)

Dependencies

  • requests==2.31.0

Example Usage

python
import requests

BASE_URL = "https://singlecell.broadinstitute.org/single_cell/api/v1"

def scp_get(path: str, params=None, verify_ssl: bool = True, timeout: int = 30):
    """
    Minimal helper for Single Cell Portal API calls.

    Security note:
    - Only call official endpoints under:
      https://singlecell.broadinstitute.org/single_cell/api/v1/*
    - If you encounter Windows certificate issues, set verify_ssl=False.
    """
    url = f"{BASE_URL}{path}"
    resp = requests.get(url, params=params or {}, timeout=timeout, verify=verify_ssl)
    resp.raise_for_status()
    return resp.json()

def search_studies(facets: str, size: int = 5):
    return scp_get("/search", params={"facets": facets, "size": size})

def get_facets():
    return scp_get("/search/facets")

def get_study(accession: str):
    return scp_get(f"/studies/{accession}")

if __name__ == "__main__":
    # 1) Search: human lung studies
    results = search_studies("organism:human,tissue:lung", size=5)
    studies = results.get("studies", [])
    print("Top matches:")
    for s in studies:
        print(f"- {s.get('name')} | accession={s.get('accession')} | cells={s.get('cell_count')}")

    # 2) Inspect available facet values (useful to build valid filters)
    facet_info = get_facets()
    print("\nFacet keys available:", ", ".join(sorted(facet_info.keys())))

    # 3) Fetch details for the first returned study (if any)
    if studies and studies[0].get("accession"):
        acc = studies[0]["accession"]
        detail = get_study(acc)
        print(f"\nStudy detail for {acc}:")
        print("Name:", detail.get("name"))
        print("Description:", detail.get("description"))

Implementation Details

  • Base endpoint constraint: All network requests must target
    https://singlecell.broadinstitute.org/single_cell/api/v1/*
    (no third-party URLs).
  • Core endpoints:
    • GET /search: returns study search results (metadata)
    • GET /search/facets: returns available facet keys/values for filtering
    • GET /studies/{accession}: returns details for a specific study
  • Facet filtering (facets parameter):
    • Format: comma-separated key:value pairs, e.g. organism:human,tissue:lung
    • Common facet keys include: organism, tissue, disease, cell_type
    • Some values may be multi-word (e.g., T cell); pass them as-is in the string.
  • Pagination / result size:
    • size controls the number of returned studies (default behavior depends on the API; set explicitly for deterministic results).
  • SSL handling on Windows:
    • If certificate verification fails in certain environments, you may set verify=False in requests.get(...).
    • Prefer verify=True when possible; disabling verification reduces transport security.
  • Error handling:
    • Use response.raise_for_status() to surface HTTP errors.
    • Treat missing keys defensively (dict.get) because response shapes may evolve.
  • Data scope:
    • The API primarily returns metadata; raw data downloads typically occur via the portal’s dataset pages and are not covered by these endpoints.

© aipoch, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references) in scientific-skills/Data Analysis/singlecell-portal of aipoch/medical-research-skills.

  • SKILL.md
  • references/evaluation-checklist.md
  • scripts/query.py
  • singlecell-portal_audit_result_v1.json

Open the folder on GitHubat commit 686e09d

Compare with similar skills

Singlecell Portal next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Singlecell Portal compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Singlecell Portal this skillaipoch/medical-research-skills2k—~1.2kAutomated safety check: PassMIT
UniProt Database Accessdavila7/claude-code-templates32k14 repos~1.7kAutomated safety check: PassMIT
Bio Ensembl RESTGPTomics/bioSkills1.2k2 repos~3.6kAutomated safety check: PassMIT
Pride FetchClawBio/ClawBio1.2k—~4.2kAutomated safety check: PassMIT
Remap Databasejaechang-hits/SciAgent-Skills3712 repos~7.2kAutomated safety check: PassCC-BY-4.0
Cbioportal Databasejaechang-hits/SciAgent-Skills3711 repos~8.2kAutomated safety check: PassAGPL-3.0

Similar skills

  • UniProt Database Access

    davila7/claude-code-templates

    Queries the UniProt REST API directly to search proteins, fetch FASTA sequences, map IDs between databases and read Swiss-Prot and TrEMBL entries.

    32k GitHub starsUsed in 14 repos~1.7k tokens
    Research & ScienceAuto-check passed
  • Bio Ensembl REST

    GPTomics/bioSkills

    Query the Ensembl REST API for gene/transcript/protein lookup, sequence retrieval, comparative genomics (Compara), variant effect prediction (VEP), regulatory features, and cross-species…

    1.2k GitHub starsUsed in 2 repos~3.6k tokens
    Research & ScienceAuto-check passed
  • Pride Fetch

    ClawBio/ClawBio

    Query metadata and download data from the PRIDE Archive, EMBL-EBI's proteomics identifications database, via the PRIDE Archive REST API v3.

    1.2k GitHub stars~4.2k tokensUpdated yesterday
    Research & ScienceAuto-check passed
  • Remap Database

    jaechang-hits/SciAgent-Skills

    Query ReMap 2022 TF ChIP-seq peak database via REST API and BED downloads.

    371 GitHub starsUsed in 2 repos~7.2k tokens
    Research & ScienceAuto-check passed
  • Cbioportal Database

    jaechang-hits/SciAgent-Skills

    Cancer genomics (TCGA et al.) via cBioPortal REST API. An agent skill from jaechang-hits/SciAgent-Skills.

    371 GitHub starsUsed in 1 repo~8.2k tokens
    Research & ScienceAuto-check passed
  • Jaspar Database

    jaechang-hits/SciAgent-Skills

    JASPAR 2024 TF binding profiles via REST API and pyJASPAR. An agent skill from jaechang-hits/SciAgent-Skills.

    371 GitHub starsUsed in 1 repo~7.1k tokens
    Research & ScienceAuto-check passed

More from aipoch/medical-research-skills

All 578 skills in this repo
  • Academic Poster Generator

    aipoch/medical-research-skills

    Complete workflow for generating academic research posters from PDF literature; use when you need to extract paper content from PDFs and produce a LaTeX-based poster…

    2k GitHub stars~2.2k tokensUpdated 22 days ago
    Auto-check passed
  • Diagnostic Study Quality Assessment Quadas

    aipoch/medical-research-skills

    Analyzes clinical diagnostic accuracy studies for bias using the QUADAS-2 tool.

    2k GitHub stars~1.4k tokensUpdated 22 days ago
    Auto-check passed
  • Exploratory Data Analysis

    aipoch/medical-research-skills

    Perform comprehensive exploratory data analysis on scientific data files across 200+ file formats.

    2k GitHub stars~3.7k tokensUpdated 22 days ago
    Auto-check passed
  • Iso Certification

    aipoch/medical-research-skills

    A toolkit for preparing ISO 13485:2016 certification documentation for medical device QMS.

    2k GitHub stars~1.8k tokensUpdated 22 days ago
    Auto-check passed
  • Journal Skills

    aipoch/medical-research-skills

    Recommends target journals for manuscript submission by analyzing the paper topic/abstract and the journal distribution of similar PubMed literature; use when users ask for journal…

    2k GitHub stars~1.7k tokensUpdated 22 days ago
    Auto-check passed
  • Latex Posters

    aipoch/medical-research-skills

    Creates academic-poster writing packages for LaTeX using beamerposter, tikzposter, or baposter.

    2k GitHub stars~1.3k tokensUpdated 22 days ago
    Auto-check passed

Questions about Singlecell Portal

What does Singlecell Portal do?

Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type…. Singlecell Portal is an agent skill from aipoch/medical-research-skills. Programmatically query public single-cell study metadata from the Broad Institute Single Cell Portal REST API when you need to search and filter datasets by organism, tissue, disease, or cell type without an API key.

When should I use Singlecell Portal?

Singlecell Portal fits situations like: tasks that involve Bioinformatics; tasks that involve REST APIs.

How do I install Singlecell Portal in Claude Code?

Run `npx skills add aipoch/medical-research-skills --skill singlecell-portal -a claude-code`. Or copy the skill folder (scientific-skills/Data Analysis/singlecell-portal in aipoch/medical-research-skills) into .claude/skills/singlecell-portal in your project. Claude Code loads it when a task matches its description.

How do I install Singlecell Portal in Codex?

Run `npx skills add aipoch/medical-research-skills --skill singlecell-portal -a codex`. Or copy the skill folder (scientific-skills/Data Analysis/singlecell-portal in aipoch/medical-research-skills) into .agents/skills/singlecell-portal in your project. Codex loads it when a task matches its description.

Can I use Singlecell Portal in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aipoch/medical-research-skills --skill singlecell-portal -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/singlecell-portal, .gemini/skills/singlecell-portal, .github/skills/singlecell-portal and .opencode/skills/singlecell-portal in your project.

What does Singlecell Portal need to run?

Going by SKILL.md and its folder, Singlecell Portal needs Python for the scripts in its folder. Our summary lists: Python 3.

Does Singlecell Portal access the network?

SKILL.md names 1 domain. In commands or code: singlecell.broadinstitute.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Singlecell Portal safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Singlecell Portal use?

Singlecell Portal is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Singlecell Portal use?

About 1.2k tokens (SKILL.md is roughly 4.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 208 tokens, read only when the agent opens those files.

What are the alternatives to Singlecell Portal?

Skills that share tags, products or a category with Singlecell Portal: UniProt Database Access (davila7/claude-code-templates, 32k stars), Bio Ensembl REST (GPTomics/bioSkills, 1.2k stars), Pride Fetch (ClawBio/ClawBio, 1.2k stars) and Remap Database (jaechang-hits/SciAgent-Skills, 371 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Singlecell Portal?

aipoch (a GitHub organization) maintains it in aipoch/medical-research-skills, which has 1,978 GitHub stars. The repository holds 578 skills in this directory. The repository was last updated on September 17, 2026.

Source: aipoch/medical-research-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.