biothings-mcp

by longevity-genie

33 stars
316 downloads
Not rated
GitHub

About

MCP (Model Context Protocol) server for biothings

Details

Author
longevity-genie
GitHub stars
33
Downloads
316
Categories
Other

- Standard MCP interface for BioThings biomedical data
- Supports gene, variant, chemical, taxon, and download tools
- Local file saving with automatic directory creation and unique filenames
- Supports STDIO, HTTP streamable, and SSE transport modes
- Type safety via the biothings-typed-client library
- Ready-to-use configuration for AI clients like Cursor and Claude Desktop

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name biothings-mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install and run the server using uvx (no cloning required) or by cloning the repository. For STDIO mode, use uvx biothings-mcp; for HTTP streamable mode, use uvx --from biothings-mcp server run; for SSE mode, use uvx --from biothings-mcp sse. Optionally specify a custom output directory with --output-dir. Configure your MCP‑compatible AI client using the provided JSON configuration files (e.g., mcp-config.json for local servers, mcp-config-remote.json for the public hosted server).

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "biothings-mcp": {
            "biothings-mcp": {
                "command": "uvx",
                "args": [
                    "biothings-mcp"
                ]
            }
        }
    }
}

McpServers

{
    "biothings-mcp": {
        "command": "uvx",
        "args": [
            "biothings-mcp"
        ]
    }
}

biothings-mcp

Tests PyPI version

MCP (Model Context Protocol) server for Biothings.io

This server implements the Model Context Protocol (MCP) for BioThings, providing a standardized interface for accessing and manipulating biomedical data. MCP enables AI assistants and agents to access specialized biomedical knowledge through structured interfaces to authoritative data sources. Supported BioThings data sources include:

- mygene.info — Gene annotation and query service
- myvariant.info — Variant annotation and query service
- mychem.info — Chemical compound annotation and query service

If you want to understand more what is Model Context Protocol and how to use it more efficiently you can take DeepLearning AI Course or just search for MCP videos on YouTube.

About MCP (Model Context Protocol)

MCP is a protocol that bridges the gap between AI systems and specialized domain knowledge. It enables:

- Structured Access: Direct connection to authoritative biomedical data sources
- Natural Language Queries: Simplified interaction with specialized databases
- Type Safety: Strong typing and validation through biothings-typed-client
- AI Integration: Seamless integration with AI assistants and agents

Available API Interfaces

This server provides dedicated API interfaces for different BioThings data types, leveraging the biothings-typed-client library. These interfaces are implemented using the following tool handlers:

- Gene Interface: GeneTools (wraps GeneClientAsync)
- Variant Interface: VariantTools (wraps VariantClientAsync)
- Chemical Interface: ChemTools (wraps ChemClientAsync)
- Taxon Interface: TaxonTools (wraps TaxonClientAsync)
- Download Interface: DownloadTools (provides file download and sequence analysis capabilities)

Local File Saving Features

The server includes local file saving capabilities through the DownloadTools interface, which provides:

Download Tools

- download_entrez_data: Download data from NCBI Entrez databases (returns content as string) - download_entrez_data_local: Download data from NCBI Entrez databases and save to local file

Output Directory Management

- Default Location: Files are saved to biothings_output/ directory in the current working directory - Custom Location: Use --output-dir parameter to specify a custom output directory - Automatic Creation: Output directories are created automatically if they don't exist - Unique Filenames: Auto-generated filenames include UUID prefixes to avoid conflicts

Supported File Formats

- FASTA: .fasta extension for sequence data - GenBank: .gb extension for GenBank format data - Alignment: .aln extension for alignment results - JSON: .json extension for structured data - Text: .txt extension for general text data

Quick Start

Installing uv

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.