@longevity-genie/biostratum-mcp-plugin
Version:
ElizaOS MCP plugin for biostratum - a comprehensive MCP composer and adapter solution
595 lines • 19.8 kB
JSON
{
"server": "gget",
"toolCount": 19,
"tools": [
{
"name": "gget_search",
"description": "Search for genes using gene symbols, names, or synonyms.\n \n Use this tool FIRST when you have gene names/symbols and need to find their Ensembl IDs.\n Returns Ensembl IDs which are required for get_gene_info and get_sequences tools.\n \n Args:\n search_terms: List of gene symbols (e.g., ['TP53', 'BRCA1']) or names\n species: Target species (e.g., 'homo_sapiens', 'mus_musculus')\n limit: Maximum number of results per search term\n \n Example:\n Input: search_terms=['BRCA1'], species='homo_sapiens'\n Output: {'BRCA1': {'ensembl_id': 'ENSG00000012048', 'description': 'BRCA1 DNA repair...'}}\n \n Downstream tools that need the Ensembl IDs from this search:\n - get_gene_info: Get detailed gene information \n - get_sequences: Get DNA/protein sequences\n ",
"inputSchema": {
"type": "object",
"properties": {
"search_terms": {
"items": {
"type": "string"
},
"title": "Search Terms",
"type": "array"
},
"species": {
"default": "homo_sapiens",
"title": "Species",
"type": "string"
},
"limit": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
"required": [
"search_terms"
]
}
},
{
"name": "gget_info",
"description": "Get detailed information for genes using their Ensembl IDs.\n \n PREREQUISITE: Use search_genes first to get Ensembl IDs from gene names/symbols.\n \n Args:\n ensembl_ids: List of Ensembl gene IDs (e.g., ['ENSG00000141510'])\n verbose: Include additional annotation details\n \n Example workflow:\n 1. search_genes(['TP53'], 'homo_sapiens') → get Ensembl ID 'ENSG00000141510'\n 2. get_gene_info(['ENSG00000141510']) \n \n Example output:\n {'ENSG00000141510': {'symbol': 'TP53', 'biotype': 'protein_coding', \n 'start': 7661779, 'end': 7687550, 'chromosome': '17'...}}\n ",
"inputSchema": {
"type": "object",
"properties": {
"ensembl_ids": {
"items": {
"type": "string"
},
"title": "Ensembl Ids",
"type": "array"
},
"verbose": {
"default": true,
"title": "Verbose",
"type": "boolean"
}
},
"required": [
"ensembl_ids"
]
}
},
{
"name": "gget_seq",
"description": "Fetch nucleotide or amino acid sequences for genes.\n \n PREREQUISITE: Use search_genes first to get Ensembl IDs from gene names/symbols.\n \n Args:\n ensembl_ids: List of Ensembl gene IDs (e.g., ['ENSG00000141510'])\n translate: If True, returns protein sequences; if False, returns DNA sequences\n isoforms: Include alternative splice isoforms\n \n Example workflow for protein sequence:\n 1. search_genes(['TP53'], 'homo_sapiens') → 'ENSG00000141510'\n 2. get_sequences(['ENSG00000141510'], translate=True)\n \n Example output (protein):\n {'ENSG00000141510': 'MEEPQSDPSVEPPLSQETFSDLWKLLPENNVLSPLPSQAMDDLMLSP...'}\n \n Example output (DNA):\n {'ENSG00000141510': 'ATGGAGGAGCCGCAGTCAGATCCTAGCGTCGAGCCCCCTCTGAGTC...'}\n \n Downstream tools that use protein sequences:\n - alphafold_predict: Predict 3D structure from protein sequence\n - blast_sequence: Search for similar sequences\n ",
"inputSchema": {
"type": "object",
"properties": {
"ensembl_ids": {
"items": {
"type": "string"
},
"title": "Ensembl Ids",
"type": "array"
},
"translate": {
"default": false,
"title": "Translate",
"type": "boolean"
},
"isoforms": {
"default": false,
"title": "Isoforms",
"type": "boolean"
}
},
"required": [
"ensembl_ids"
]
}
},
{
"name": "gget_ref",
"description": "Get reference genome information from Ensembl.",
"inputSchema": {
"type": "object",
"properties": {
"species": {
"default": "homo_sapiens",
"title": "Species",
"type": "string"
},
"which": {
"default": "all",
"title": "Which",
"type": "string"
},
"release": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Release"
}
}
}
},
{
"name": "gget_blast",
"description": "BLAST a nucleotide or amino acid sequence.",
"inputSchema": {
"type": "object",
"properties": {
"sequence": {
"title": "Sequence",
"type": "string"
},
"program": {
"default": "blastp",
"title": "Program",
"type": "string"
},
"database": {
"default": "nr",
"title": "Database",
"type": "string"
},
"limit": {
"default": 50,
"title": "Limit",
"type": "integer"
},
"expect": {
"default": 10,
"title": "Expect",
"type": "number"
}
},
"required": [
"sequence"
]
}
},
{
"name": "gget_blat",
"description": "Find genomic location of a sequence using BLAT.",
"inputSchema": {
"type": "object",
"properties": {
"sequence": {
"title": "Sequence",
"type": "string"
},
"seqtype": {
"default": "DNA",
"title": "Seqtype",
"type": "string"
},
"assembly": {
"default": "hg38",
"title": "Assembly",
"type": "string"
}
},
"required": [
"sequence"
]
}
},
{
"name": "gget_muscle",
"description": "Align multiple sequences using MUSCLE.",
"inputSchema": {
"type": "object",
"properties": {
"sequences": {
"items": {
"type": "string"
},
"title": "Sequences",
"type": "array"
},
"super5": {
"default": false,
"title": "Super5",
"type": "boolean"
}
},
"required": [
"sequences"
]
}
},
{
"name": "gget_diamond",
"description": "Align amino acid sequences to a reference using DIAMOND.",
"inputSchema": {
"type": "object",
"properties": {
"sequences": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
],
"title": "Sequences"
},
"reference": {
"title": "Reference",
"type": "string"
},
"sensitivity": {
"default": "very-sensitive",
"title": "Sensitivity",
"type": "string"
},
"threads": {
"default": 1,
"title": "Threads",
"type": "integer"
}
},
"required": [
"sequences",
"reference"
]
}
},
{
"name": "gget_archs4",
"description": "Get tissue expression data from ARCHS4.",
"inputSchema": {
"type": "object",
"properties": {
"gene": {
"title": "Gene",
"type": "string"
},
"which": {
"default": "tissue",
"title": "Which",
"type": "string"
},
"species": {
"default": "human",
"title": "Species",
"type": "string"
}
},
"required": [
"gene"
]
}
},
{
"name": "gget_enrichr",
"description": "Perform functional enrichment analysis using Enrichr.",
"inputSchema": {
"type": "object",
"properties": {
"genes": {
"items": {
"type": "string"
},
"title": "Genes",
"type": "array"
},
"database": {
"default": "KEGG_2021_Human",
"title": "Database",
"type": "string"
},
"species": {
"default": "human",
"title": "Species",
"type": "string"
}
},
"required": [
"genes"
]
}
},
{
"name": "gget_bgee",
"description": "Find orthologs of a gene using Bgee database.\n \n PREREQUISITE: Use search_genes to get Ensembl ID first.\n \n Args:\n gene_id: Ensembl gene ID (e.g., 'ENSG00000012048' for BRCA1)\n type: Type of data ('orthologs' or 'expression')\n \n Example workflow:\n 1. search_genes(['BRCA1']) → 'ENSG00000012048' \n 2. bgee_orthologs('ENSG00000012048') → ortholog data\n ",
"inputSchema": {
"type": "object",
"properties": {
"gene_id": {
"title": "Gene Id",
"type": "string"
},
"type": {
"default": "orthologs",
"title": "Type",
"type": "string"
}
},
"required": [
"gene_id"
]
}
},
{
"name": "gget_pdb",
"description": "Fetch protein structure data from PDB using specific PDB IDs.\n \n IMPORTANT: This tool requires a specific PDB ID (e.g., '2GS6'), NOT gene names.\n \n For gene-to-structure workflows:\n 1. Use search_genes to get Ensembl ID\n 2. Use get_sequences with translate=True to get protein sequence \n 3. Use alphafold_predict for structure prediction, OR\n 4. Search external databases (PDB website) for known PDB IDs, then use this tool\n \n Args:\n pdb_id: Specific PDB structure ID (e.g., '2GS6', '1EGF')\n resource: Database resource ('pdb' or 'alphafold')\n \n Example:\n Input: pdb_id='2GS6'\n Output: Structure data with coordinates, resolution, method, etc.\n \n Alternative workflow for gene structure prediction:\n 1. search_genes(['EGFR']) → get Ensembl ID\n 2. get_sequences([ensembl_id], translate=True) → get protein sequence\n 3. alphafold_predict(protein_sequence) → predict structure\n ",
"inputSchema": {
"type": "object",
"properties": {
"pdb_id": {
"title": "Pdb Id",
"type": "string"
},
"resource": {
"default": "pdb",
"title": "Resource",
"type": "string"
}
},
"required": [
"pdb_id"
]
}
},
{
"name": "gget_alphafold",
"description": "Predict protein structure using AlphaFold from protein sequence.\n \n PREREQUISITE: Use get_sequences with translate=True to get protein sequence first.\n \n Workflow for gene structure prediction:\n 1. search_genes → get Ensembl ID\n 2. get_sequences with translate=True → get protein sequence\n 3. alphafold_predict → predict structure\n \n Args:\n sequence: Amino acid sequence (protein, not DNA)\n out: Optional output directory for structure files\n \n Example full workflow:\n 1. search_genes(['TP53']) → 'ENSG00000141510'\n 2. get_sequences(['ENSG00000141510'], translate=True) → 'MEEPQSDPSVEPPLSQ...'\n 3. alphafold_predict('MEEPQSDPSVEPPLSQ...')\n \n Example output:\n AlphaFold structure prediction data with confidence scores and coordinates\n ",
"inputSchema": {
"type": "object",
"properties": {
"sequence": {
"title": "Sequence",
"type": "string"
},
"out": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Out"
}
},
"required": [
"sequence"
]
}
},
{
"name": "gget_elm",
"description": "Find protein interaction domains and functions in amino acid sequences.",
"inputSchema": {
"type": "object",
"properties": {
"sequence": {
"title": "Sequence",
"type": "string"
},
"sensitivity": {
"default": "very-sensitive",
"title": "Sensitivity",
"type": "string"
},
"threads": {
"default": 1,
"title": "Threads",
"type": "integer"
},
"uniprot": {
"default": false,
"title": "Uniprot",
"type": "boolean"
},
"expand": {
"default": false,
"title": "Expand",
"type": "boolean"
}
},
"required": [
"sequence"
]
}
},
{
"name": "gget_cosmic",
"description": "Search COSMIC database for cancer mutations and cancer-related data.\n \n Args:\n searchterm: Gene symbol or name to search for (e.g., 'PIK3CA', 'BRCA1')\n cosmic_tsv_path: Path to COSMIC TSV file (optional, uses default if None)\n limit: Maximum number of results to return\n \n Example:\n Input: searchterm='PIK3CA'\n Output: Mutation data including positions, amino acid changes, cancer types, etc.\n \n Note: This tool accepts gene symbols directly, no need for Ensembl ID conversion.\n ",
"inputSchema": {
"type": "object",
"properties": {
"searchterm": {
"title": "Searchterm",
"type": "string"
},
"cosmic_tsv_path": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cosmic Tsv Path"
},
"limit": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
"required": [
"searchterm"
]
}
},
{
"name": "gget_mutate",
"description": "Mutate nucleotide sequences based on specified mutations.",
"inputSchema": {
"type": "object",
"properties": {
"sequences": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
],
"title": "Sequences"
},
"mutations": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
],
"title": "Mutations"
},
"k": {
"default": 30,
"title": "K",
"type": "integer"
}
},
"required": [
"sequences",
"mutations"
]
}
},
{
"name": "gget_opentargets",
"description": "Explore diseases and drugs associated with a gene using Open Targets.\n \n PREREQUISITE: Use search_genes to get Ensembl ID first.\n \n Args:\n ensembl_id: Ensembl gene ID (e.g., 'ENSG00000141510' for APOE)\n resource: Type of information ('diseases', 'drugs', 'tractability', etc.)\n limit: Maximum number of results (optional)\n \n Example workflow:\n 1. search_genes(['APOE']) → 'ENSG00000141510'\n 2. opentargets_analysis('ENSG00000141510') → disease associations\n ",
"inputSchema": {
"type": "object",
"properties": {
"ensembl_id": {
"title": "Ensembl Id",
"type": "string"
},
"resource": {
"default": "diseases",
"title": "Resource",
"type": "string"
},
"limit": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
}
},
"required": [
"ensembl_id"
]
}
},
{
"name": "gget_cellxgene",
"description": "Query single-cell RNA-seq data from CellxGene.",
"inputSchema": {
"type": "object",
"properties": {
"gene": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Gene"
},
"tissue": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Tissue"
},
"cell_type": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Cell Type"
},
"species": {
"default": "homo_sapiens",
"title": "Species",
"type": "string"
}
}
}
},
{
"name": "gget_setup",
"description": "Setup databases for gget modules that require local data.",
"inputSchema": {
"type": "object",
"properties": {
"module": {
"title": "Module",
"type": "string"
}
},
"required": [
"module"
]
}
}
],
"fetchedAt": "2025-06-07T16:03:53.518Z"
}