Skip to main content

BioOpenMCP: Model Context Protocol tools and CLI for bioinformatics workflows.

Project description

OpenBioMCP

OpenBioMCP is a Python package for running Model Context Protocol (MCP) tools, including FastQC integration and other bioinformatics utilities with comprehensive background execution and status checking capabilities.

Features

  • Modular design - Organized by feature/domain for scalability
  • Background execution - Run long-running bioinformatics tools without blocking
  • Real-time status monitoring - Check job progress and retrieve results
  • Job management - Start, stop, and clean up background jobs
  • CLI entry point - Command-line interface for easy access
  • MCP integration - Expose tools through Model Context Protocol
  • Ready for PyPI distribution

Supported Tools

FastQC

  • Quality control analysis for FASTQ files
  • Background execution with status monitoring
  • HTML report generation

Cutadapt

  • Adapter trimming for sequencing data
  • Background execution with real-time monitoring
  • Flexible command-line argument support

Trim Galore

  • Automated adapter and quality trimming
  • Background execution with comprehensive monitoring
  • Integration with FastQC and Cutadapt
  • Quality and length filtering options

STAR Alignment

  • RNA-seq alignment tool
  • Genome index support
  • Background execution with status monitoring
  • Configurable thread count for performance optimization

Background Execution

All supported tools can be run in the background, allowing you to:

from openbiomcp.modules.fastqc.fastqc import fastqc_background, get_fastqc_status
from openbiomcp.modules.cutadapt.cutadapt import cutadapt_background
from openbiomcp.modules.trim_galore.trim_galore import trim_galore_background
from openbiomcp.modules.star_alignment.star_alignment import star_alignment_background

# Start FastQC in background
job = fastqc_background("sample.fastq", job_id="qc_001")

# Check status
status = get_fastqc_status("qc_001")
print(f"Status: {status['status']}")

# Start Cutadapt in background
trim_job = cutadapt_background(
    args=["-a", "AGATCGGAAGAGC"],
    input_file="sample.fastq",
    output_file="trimmed.fastq"
)

# Start Trim Galore in background
trim_galore_job = trim_galore_background(
    fastq_path="sample.fastq",
    extra_args="--quality 20 --length 50"
)

# Start STAR alignment in background
star_job = star_alignment_background(
    fastq_path="sample.fastq",
    genome_dir="/path/to/genome/index",
    output_dir="/path/to/alignment",
    threads=8
)

Documentation

Installation

pip install openbiomcp

Usage

from openbiomcp.modules.fastqc import fastqc_background, get_fastqc_status
from openbiomcp.modules.cutadapt import cutadapt_background
from openbiomcp.modules.trim_galore import trim_galore_background

# Run quality control
qc_job = fastqc_background("sample.fastq")

# Run adapter trimming
trim_job = cutadapt_background(
    args=["-a", "AGATCGGAAGAGC"],
    input_file="sample.fastq",
    output_file="trimmed.fastq"
)

# Run quality trimming
trim_galore_job = trim_galore_background(
    fastq_path="sample.fastq",
    extra_args="--quality 20 --length 50"
)

# Monitor jobs
status = get_fastqc_status(qc_job['job_id'])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openbiomcp-0.1.0.tar.gz (28.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openbiomcp-0.1.0-py3-none-any.whl (35.4 kB view details)

Uploaded Python 3

File details

Details for the file openbiomcp-0.1.0.tar.gz.

File metadata

  • Download URL: openbiomcp-0.1.0.tar.gz
  • Upload date:
  • Size: 28.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for openbiomcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e8787c2625d108c1d95195cb994289327ccd564671d5ab29a4ceb9b35bc090bf
MD5 7dac1fcdeb5de68a5ba09f875321c554
BLAKE2b-256 12e20b07dbd3f3cee7d73d95dabf6ffc399f09c1ed2e7681fbd82a7d899cfa1e

See more details on using hashes here.

File details

Details for the file openbiomcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: openbiomcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 35.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for openbiomcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bfae6a12f11d6ceeb6a6c0ae30185270310dcdc5877e991733d93e32d5d9bb9d
MD5 a619b3cc2eb471c46197e60d3db6a1b5
BLAKE2b-256 ad702b54fe43960007f029f14d024f557da70064050692ca75661b9cbb749335

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page