Related MCP Server Resources

Explore more AI models, providers, and integration options:

  • Explore AI Models
  • Explore AI Providers
  • Explore MCP Servers
  • LangDB Pricing
  • Documentation
  • AI Industry Blog
  • mcp-llm
  • LSP Tools MCP Server
  • SQL Query MCP Server
  • MCP Screenshot Server
  • Notion Knowledge Base MCP Server
Back to MCP Servers
samtoolsmcp

samtoolsmcp

Public
sirusb/samtools_mcp

Provides a Model Context Protocol implementation for seamless viewing, conversion, sorting, indexing, merging, and statistical analysis of SAM, BAM, and CRAM genomic alignment files with multi-threaded performance and region-specific filtering.

python
0 tools
May 29, 2025
Updated Jun 4, 2025

Supercharge Your AI with samtoolsmcp

MCP Server

Unlock the full potential of samtoolsmcp through LangDB's AI Gateway. Get enterprise-grade security, analytics, and seamless integration with zero configuration.

Unified API Access
Complete Tracing
Instant Setup
Get Started Now

Free tier available • No credit card required

Instant Setup
99.9% Uptime
10,000+Monthly Requests

SAMtools MCP (Model Control Protocol)

A Model Control Protocol implementation for SAMtools, providing a standardized interface for working with SAM/BAM/CRAM files.

Features

  • View and convert SAM/BAM/CRAM files
  • Sort alignment files
  • Index BAM/CRAM files
  • Generate statistics
  • Merge multiple BAM files
  • Calculate read depth
  • Index FASTA files
  • And more...

Core Capabilities

  • File Format Support: Handle SAM (text), BAM (binary), and CRAM (compressed) alignment files
  • Format Conversion: Convert between SAM, BAM, and CRAM formats seamlessly
  • Region-Specific Analysis: Extract and analyze specific genomic regions
  • Flag-Based Filtering: Filter reads based on SAM flags
  • Performance Optimization: Multi-threaded operations for sorting and merging
  • Statistical Analysis: Generate comprehensive alignment statistics

Tools Overview

ToolDescriptionKey Features
viewView and convert alignment files- Format conversion (SAM/BAM/CRAM)- Region filtering- Flag-based filtering- Header manipulation
sortSort alignment files- Coordinate-based sorting- Name-based sorting- Memory per thread control- Multi-threading support
indexIndex BAM/CRAM files- BAI index generation- CSI index support- CRAM index creation
mergeMerge multiple BAM/CRAM files- Multi-file merging- Thread-enabled processing- Header reconciliation
depthCalculate read depth- Per-base depth calculation- Region-specific analysis- Multi-file support
flagstatGenerate alignment statistics- Comprehensive flag statistics- Quality checks- Paired-end metrics
idxstatsBAM/CRAM index statistics- Reference sequence stats- Mapped/unmapped counts- Length information
faidxIndex FASTA files- FASTA indexing- Region extraction- Sequence retrieval

Installation

Using Docker (Recommended)

The easiest way to use SAMtools MCP is through Docker:

# Pull the Docker image docker pull nadhir/samtools-mcp:latest # Run the container docker run -it --rm nadhir/samtools-mcp:latest # To process BAM files, mount a volume: docker run -it --rm -v /path/to/your/bam/files:/data nadhir/samtools-mcp:latest

Local Installation

  1. Clone the repository:
git clone https://github.com/your-username/samtools_mcp.git cd samtools_mcp
  1. Install dependencies:
pip install uv uv pip install -r requirements.txt

Configuration

MCP Server Configuration

To configure the MCP server to use the Docker image, add the following to your MCP configuration file:

{ "servers": { "samtools": { "type": "docker", "image": "nadhir/samtools-mcp:latest", "volumes": [ { "source": "/path/to/your/data", "target": "/data" } ] } } }

Local MCP Configuration

To configure the MCP to run using uv, add the following to your ~/.cursor/mcp.json:

{ "samtools_mcp": { "command": "uv", "args": ["run", "--with", "fastmcp", "fastmcp", "run", "/path/to/samtools_mcp.py"] } }

Replace /path/to/samtools_mcp.py with the actual path to your samtools_mcp.py file.

Usage

Basic Commands

  1. View BAM file:
from samtools_mcp import SamtoolsMCP mcp = SamtoolsMCP() result = mcp.view(input_file="/data/example.bam")
  1. Sort BAM file:
result = mcp.sort(input_file="/data/example.bam", output_file="/data/sorted.bam")
  1. Index BAM file:
result = mcp.index(input_file="/data/sorted.bam")

Advanced Usage

  1. View specific region with flags:
result = mcp.view( input_file="/data/example.bam", region="chr1:1000-2000", flags_required="0x2", output_format="SAM" )
  1. Sort by read name:
result = mcp.sort( input_file="/data/example.bam", output_file="/data/namesorted.bam", sort_by_name=True )
  1. Calculate depth with multiple input files:
result = mcp.depth( input_files=["/data/sample1.bam", "/data/sample2.bam"], region="chr1:1-1000000" )

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Publicly Shared Threads0

Discover shared experiences

Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!

Share your threads to help others
Related MCPs5
  • mcp-llm
    mcp-llm

    Provides Model Context Protocol access to LLMs for generating code, writing code to files, creating ...

    4 tools
    Added May 30, 2025
  • LSP Tools MCP Server
    LSP Tools MCP Server

    Provides Model Context Protocol functionality for text analysis with features to locate regex patter...

    Added May 30, 2025
  • SQL Query MCP Server
    SQL Query MCP Server

    Enables natural language querying of PostgreSQL databases by translating prompts into SQL via LLM in...

    Added May 30, 2025
  • MCP Screenshot Server
    MCP Screenshot Server

    Provides Model Context Protocol-based screenshot capture of web pages and local HTML files with conf...

    1 tools
    Added May 30, 2025
  • Notion Knowledge Base MCP Server
    Notion Knowledge Base MCP Server

    Provides seamless access to Notion knowledge bases via Model Context Protocol, enabling detailed, re...

    Added May 30, 2025