/ Directory / Playground / SciAgent-Skills
● Community jaechang-hits ⚡ Instant

SciAgent-Skills

by jaechang-hits · jaechang-hits/SciAgent-Skills

197 bioinformatics and life-science skills — RNA-seq, single-cell, drug discovery, proteomics — 92% on BixBench. Powers OmicsHorizon.

SciAgent Skills is a large library of life-science skills for Claude Code and other agents: RNA-seq and scRNA-seq workflows, drug discovery pipelines, proteomics analysis, sequence alignment, and common wet-lab-adjacent tasks. Reported 92.0% accuracy on BixBench. Designed for scientists who want an agent that follows canonical bioinformatics patterns.

Why use it

Key features

Live Demo

What it looks like in practice

sciagent-skill.replay ▶ ready
0/0

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "sciagent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/jaechang-hits/SciAgent-Skills",
        "~/.claude/skills/SciAgent-Skills"
      ],
      "_inferred": true
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "sciagent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/jaechang-hits/SciAgent-Skills",
        "~/.claude/skills/SciAgent-Skills"
      ],
      "_inferred": true
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "sciagent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/jaechang-hits/SciAgent-Skills",
        "~/.claude/skills/SciAgent-Skills"
      ],
      "_inferred": true
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "sciagent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/jaechang-hits/SciAgent-Skills",
        "~/.claude/skills/SciAgent-Skills"
      ],
      "_inferred": true
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "sciagent-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/jaechang-hits/SciAgent-Skills",
        "~/.claude/skills/SciAgent-Skills"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "sciagent-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/jaechang-hits/SciAgent-Skills",
          "~/.claude/skills/SciAgent-Skills"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add sciagent-skill -- git clone https://github.com/jaechang-hits/SciAgent-Skills ~/.claude/skills/SciAgent-Skills

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use SciAgent-Skills

How to run a bulk RNA-seq differential expression analysis

👤 Biologists and bioinformaticians with FASTQ files and a need for DE results ⏱ ~120 min advanced

When to use: You have paired-end FASTQ, a reference, and a condition table.

Prerequisites
  • Skill installed — git clone https://github.com/jaechang-hits/SciAgent-Skills ~/.claude/skills/sciagent-skills
  • Conda/mamba + compute — Use a Linux server or HPC; macOS fine for small datasets
Flow
  1. Plan the pipeline
    Plan a bulk RNA-seq DE workflow for 2 conditions x 3 reps with salmon + tximport + DESeq2. Output expected files per step.✓ Copied
    → Step list with tools and intermediate outputs
  2. Run quantification
    Run salmon quant for each sample; produce a script.✓ Copied
    → Bash script with salmon invocations
  3. DE analysis
    Load quants via tximport, run DESeq2, produce MA + volcano plots and a top-50 gene table.✓ Copied
    → R script + output files

Outcome: A DE table + plots you can hand to a PI or collaborator.

Pitfalls
  • Mis-matched reference versus annotation GTF — Check release numbers explicitly; salmon and DESeq2 can silently run on mismatched IDs
  • Low-count filtering removes biological signal — Use independent filtering or raise threshold gradually; don't blanket filter

Single-cell RNA-seq QC and clustering baseline

👤 Researchers starting scRNA analysis from 10x output ⏱ ~90 min advanced

When to use: You have a cellranger output directory and need a first-pass Seurat or Scanpy analysis.

Flow
  1. Load + QC
    Load 10x data from cellranger output, do QC (pct.mt, counts, features), filter, normalize.✓ Copied
    → QC plots + filtered object
  2. Cluster
    Run PCA, find neighbors, cluster at resolution 0.5, and UMAP.✓ Copied
    → Cluster labels + UMAP plot
  3. Marker genes
    Find cluster markers, produce a top-5-per-cluster heatmap.✓ Copied
    → Marker table + heatmap

Outcome: An annotated UMAP and marker table ready for biological interpretation.

Pitfalls
  • Over-clustering at the default resolution — Try a sweep 0.2-1.0 and pick based on silhouette + biological plausibility

Germline variant calling from WGS

👤 Genomics teams calling SNPs and indels ⏱ ~180 min advanced

When to use: You have aligned BAMs and need a VCF using best-practices (GATK).

Flow
  1. Plan pipeline
    Plan GATK best-practices germline pipeline from aligned BAMs: BQSR, HaplotypeCaller, joint genotyping with GenomicsDBImport.✓ Copied
    → Pipeline outline with expected runtimes
  2. Generate scripts
    Produce Snakemake rules for each step.✓ Copied
    → Snakefile with rules and config

Outcome: A reproducible Snakemake pipeline ready to run on your cluster.

Pitfalls
  • Skipping BQSR on small cohorts — Still do it — GATK's downstream filters assume recalibrated quality scores

Triage small-molecule hits from a screen

👤 Med-chem groups triaging HTS results ⏱ ~60 min advanced

When to use: You have a hit list and want to rank by drug-likeness + novelty.

Flow
  1. Filter by Lipinski + PAINS
    Compute Lipinski and PAINS flags on this SMILES list, output a filtered table.✓ Copied
    → RDKit-based script + filtered CSV
  2. Similarity to known drugs
    For remaining hits, compute Tanimoto similarity to ChEMBL approved drugs; flag >0.85 as known-scaffold.✓ Copied
    → Similarity table with flags

Outcome: A triaged hit list prioritized for follow-up.

Combinations

Pair with other MCPs for X10 leverage

sciagent-skill + filesystem

Read local FASTQ/BAM files and have SciAgent plan the analysis pipeline on actual data

List the FASTQ files in ~/data/rnaseq/, then use SciAgent to plan a salmon + DESeq2 pipeline for these samples.✓ Copied
sciagent-skill + github

Search nf-core or Bioconductor repos for reference implementations, then adapt with SciAgent

Search nf-core/rnaseq on GitHub for how they handle trimming, then use SciAgent to adapt that step for my pipeline.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
Bulk RNA-seq workflow FASTQ + design Standard DE analysis compute
scRNA-seq workflow 10x output Single-cell baseline compute
Variant calling BAMs WGS/WES cohorts compute
Proteomics analysis MS data MS-based proteomics compute
Drug discovery triage SMILES list Hit triage compute

Cost & Limits

What this costs to run

API quota
None at skill level
Tokens per call
10-50k per pipeline design
Monetary
Free skills; compute costs depend on dataset size
Tip
Plan the pipeline as a script first, then run; don't keep Claude in the loop during long compute.

Security

Permissions, secrets, blast radius

Credential storage: No credentials
Data egress: Pipeline designs and snippets go to Claude. Actual patient data should stay on HIPAA-compliant compute.

Troubleshooting

Common errors and fixes

tximport fails on missing transcript-to-gene mapping

Regenerate tx2gene from the same GTF you used for the salmon index; mismatch is the usual cause.

Seurat object too large for available RAM

Subsample or switch to on-disk storage with BPCells or DelayedArray-backed Seurat

Conda environment conflicts during pipeline setup

Use mamba instead of conda for faster resolution; pin exact versions in environment.yml rather than floating constraints

Verify: mamba env create -f environment.yml --dry-run
Generated script references wrong genome build (hg19 vs hg38)

Explicitly state the genome build in your first prompt; SciAgent defaults may not match your data

Alternatives

SciAgent-Skills vs others

AlternativeWhen to use it insteadTradeoff
Galaxy / nf-coreYou want audited, community pipelines rather than LLM-generated scriptsLess conversational; slower to customize

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills