{
  "slug": "io-github-yeyuan98-biomcp-ts",
  "name": "BioMCP-TS",
  "auditedAt": "2026-10-24T01:05:16Z",
  "version": "1.4.3",
  "ecosystem": "npm",
  "package": "biomcp",
  "disclaimer": "Automated smoke test, not a security guarantee.",
  "complete": true,
  "checks": {
    "versionPin": {
      "status": "pass",
      "detail": "Pinned npm biomcp@1.4.3",
      "version": "1.4.3"
    },
    "vulnerabilities": {
      "status": "pass",
      "detail": "No critical, high, or medium advisories were returned.",
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 0,
      "packagesScanned": 2
    },
    "license": {
      "status": "pass",
      "detail": "Apache-2.0",
      "spdx": "Apache-2.0"
    },
    "installScripts": {
      "status": "pass",
      "detail": "No preinstall, install, postinstall, or prepare script.",
      "scripts": []
    },
    "secrets": {
      "status": "pass",
      "detail": "No credential patterns in the published artifact.",
      "findings": []
    },
    "packageSize": {
      "status": "pass",
      "detail": "820954 bytes",
      "bytes": 820954
    },
    "activity": {
      "status": "pass",
      "detail": "Active 0 days ago.",
      "ageDays": 0
    },
    "sandbox": {
      "status": "pass",
      "detail": "MCP handshake completed. 41 tools listed.",
      "starts": true,
      "handshake": true,
      "timeToReadyMs": 477,
      "tools": [
        {
          "name": "gene_search",
          "description": "Search for genes by symbol, name, or keyword"
        },
        {
          "name": "gene_get",
          "description": "Get detailed gene information by symbol"
        },
        {
          "name": "gene_diseases",
          "description": "Get diseases associated with a gene. Requires DISGENET_API_KEY environment variable for DisGeNET data; falls back to OpenTargets gene-disease associations when unavailable."
        },
        {
          "name": "gene_drugs",
          "description": "Find drugs targeting a gene"
        },
        {
          "name": "gene_trials",
          "description": "Find clinical trials for a gene"
        },
        {
          "name": "gene_articles",
          "description": "Find articles about a gene"
        },
        {
          "name": "gene_enrich",
          "description": "Perform pathway enrichment analysis for a gene list"
        },
        {
          "name": "variant_search",
          "description": "Search for variants. Use structured parameters for best results:\n- rsid: e.g. query=\"rs113488022\"\n- HGVS: e.g. query=\"NM_004333.4:c.1799T>A\"\n- Gene filter: e.g. gene=\"BRAF\" with hgvsp=\"V600E\" or consequence=\"missense\"\n- ClinVar significance"
        },
        {
          "name": "variant_get",
          "description": "Get detailed variant information with optional sections. Core data (id, gene, rsid, significance) is always returned at the top level. Use sections to request additional data."
        },
        {
          "name": "variant_oncokb",
          "description": "Get OncoKB annotations for a variant in a cancer gene. Requires ONCOKB_TOKEN environment variable."
        },
        {
          "name": "variant_trials",
          "description": "Find clinical trials for a variant"
        },
        {
          "name": "drug_search",
          "description": "Search for drugs by name, mechanism, or keyword"
        },
        {
          "name": "drug_get",
          "description": "Get detailed drug information by name"
        },
        {
          "name": "drug_trials",
          "description": "Find clinical trials for a drug"
        },
        {
          "name": "disease_search",
          "description": "Search for diseases by name, phenotype, or keyword"
        },
        {
          "name": "disease_get",
          "description": "Get detailed disease information by ID"
        },
        {
          "name": "disease_drugs",
          "description": "Get drugs for a disease via OpenTargets"
        },
        {
          "name": "disease_trials",
          "description": "Get clinical trials for a disease"
        },
        {
          "name": "article_search",
          "description": "Search literature across multiple backends with federated search and deduplication"
        },
        {
          "name": "article_get",
          "description": "Get article by PMID/PMCID/DOI. Citation: fast mode (~4s, 4 providers, auto-fallback to PubMed) or full mode (~15-30s, all 5 providers incl. PubMed). Forward citation lists come from Europe PMC, Semantic Scholar, and OpenCitations; Crossref "
        },
        {
          "name": "trial_search",
          "description": "Search clinical trials by condition, intervention, or keyword"
        },
        {
          "name": "trial_get",
          "description": "Get detailed trial information by NCT ID"
        },
        {
          "name": "discover",
          "description": "Free-text concept resolution - find entities matching a free-text query"
        },
        {
          "name": "batch_get",
          "description": "Get multiple entities in parallel"
        },
        {
          "name": "pdb",
          "description": "Access the Protein Data Bank (RCSB PDB) for macromolecular structure data.\n\n  SEARCH: Provide \"query\" to find structures (e.g., \"kinase inhibitor\", \"hemoglobin\").\n  GET: Provide \"pdb_id\" to retrieve entry metadata with optional detail secti"
        },
        {
          "name": "patent_search",
          "description": "Search patents worldwide (US, EP, WO, JP, and 100+ authorities). Quote exact multi-word concepts (e.g. \"mRNA display\") to avoid off-topic matches. Backend characters: ppubs = USPTO Public Search full-text conceptual search (US only, keyless"
        },
        {
          "name": "patent_get",
          "description": "Get patent details by publication number (e.g. \"US11027025B2\", \"EP3904939B1\", \"US20260240819A1\"). Sections: abstract, claims (US fulltext via USPTO Public Search; EP/WO via EPO OPS), citations (backward + forward), family, classifications."
        },
        {
          "name": "geo_search",
          "description": "Search NCBI GEO (Gene Expression Omnibus) for functional genomics studies \u2014 expression microarrays, RNA-seq, and other high-throughput sequencing series.\n\nQueries accept plain terms (\"breast cancer RNA-seq\", \"melanoma single cell\") or NCBI "
        },
        {
          "name": "geo_get",
          "description": "Get the full SOFT record details for a GEO entry: series (GSE...), sample (GSM...), or platform (GPL...).\n\nA series detail includes summary, organisms, platform_ids, a sample preview, supplementary file URLs, and cross-references for chaini"
        },
        {
          "name": "sra_search",
          "description": "Search NCBI's Sequence Read Archive (SRA) for sequencing experiments and runs.\n\nThe query may be free text, an accession (SRP study, SRX experiment, SRR run, SRS sample), or NCBI field syntax (\"RNA-SEQ AND Homo sapiens[Organism]\"). Results "
        },
        {
          "name": "sra_get",
          "description": "Get full details for an NCBI SRA accession: SRR run (instrument, spots, bases, size), SRX experiment (library design), SRP study (experiment list), or SRS sample.\n\nChain from geo_get (sra field) or sra_search (experiment_accession / first_r"
        },
        {
          "name": "genbank_search",
          "description": "Search NCBI nucleotide records (GenBank/RefSeq/INSDC).\n\nQueries may be plain terms, an accession, or NCBI field syntax (\"TP53[Gene Name] AND Homo sapiens[Organism]\", \"BRCA1[Gene Name]\"). Results include accession.version, definition, length"
        },
        {
          "name": "genbank_get",
          "description": "Fetch a GenBank/RefSeq nucleotide record as text (GenBank flat file or FASTA).\n\nWhole-record fetches are capped at 2,000,000 bp \u2014 larger records require a seq_start/seq_stop region (1-based, inclusive, up to 10 Mb span; set strand=2 for a r"
        },
        {
          "name": "genbank_genes",
          "description": "Map a GenBank/RefSeq nucleotide accession to its NCBI Gene IDs (elink nuccore\u2192gene).\n\nThe returned gene_ids are entrezgene IDs usable directly with MyGene-backed gene tools (gene_get, gene_search). Useful bridge from a sequence record to ge"
        },
        {
          "name": "gtex_expression",
          "description": "Get median gene expression across GTEx tissues (GTEx Analysis v10, 54 tissue sites, TPM, sorted highest first).\n\nAccepts an HGNC symbol (TP53) or Ensembl gene ID (ENSG00000141510, versioned or bare). Optionally filter to a single tissue via"
        },
        {
          "name": "gtex_eqtl",
          "description": "Get significant cis-eQTL associations for a gene in a specific GTEx tissue (GTEx Analysis v10): variant_id, p_value, and NES (effect direction/size), sorted by ascending p-value.\n\ntissue is a required GTEx tissueSiteDetailId (e.g. Whole_Blo"
        },
        {
          "name": "ensembl_lookup",
          "description": "Resolve a gene in Ensembl terms for ANY Ensembl species (356 available): stable ID (ENSG\u2026), symbol\u2194ID mapping, versioned identifier, canonical transcript, and coordinates on the current assembly (GRCh38 human, GRCm39 mouse, \u2026). With expand="
        },
        {
          "name": "ensembl_homology",
          "description": "Find orthologues or paralogues of a gene across species (Ensembl Compara) \u2014 the cross-species gene mapping source in biomcp.\n\nReturns target stable IDs, species, taxonomy level, and percent identity, sorted by identity. Accepts an HGNC symb"
        },
        {
          "name": "ensembl_consequence",
          "description": "Predict the functional consequence of a variant on demand via Ensembl VEP \u2014 works even for NOVEL variants absent from every database, and for non-human species.\n\nInput forms: HGVS c./p./g. notation (\"NM_004333:c.1799T>A\", \"ENST00000288602:c"
        },
        {
          "name": "ensembl_region",
          "description": "Query what lives in a genomic interval on the current assembly (GRCh38 for human): genes/transcripts (stable IDs, symbols, biotypes) and known variants (rsIDs, alleles, consequence terms, clinical significance).\n\nIdeal for locus triage \u2014 \"w"
        },
        {
          "name": "biomcp_configure",
          "description": "Inspect and configure biomcp \u2014 unified observability and restricted controllability for every parameter.\n\n**What it covers:** three optional feature groups (database, analysis_r, analysis_biowasm) whose knobs live in the .biomcp.json projec"
        }
      ],
      "toolCount": 41,
      "resourceCount": null,
      "promptCount": null,
      "stderrExcerpt": "",
      "requiresCredentials": false,
      "network": "disabled",
      "networkAttemptedWhileOffline": false,
      "outboundHosts": []
    }
  },
  "tier": "gold",
  "tierReason": "Sandbox handshake completed and the published checks passed.",
  "logExcerpt": ""
}
