SAMtools MCP (Modellkontrollprotokoll)
Eine Model Control Protocol-Implementierung für SAMtools, die eine standardisierte Schnittstelle für die Arbeit mit SAM/BAM/CRAM-Dateien bietet.
Merkmale
Anzeigen und Konvertieren von SAM/BAM/CRAM-Dateien
Alignment-Dateien sortieren
BAM/CRAM-Dateien indizieren
Statistiken erstellen
Mehrere BAM-Dateien zusammenführen
Lesetiefe berechnen
Indexieren Sie FASTA-Dateien
Und mehr...
Kernkompetenzen
Dateiformatunterstützung : Verarbeitung von SAM- (Text), BAM- (Binär) und CRAM- (komprimierten) Ausrichtungsdateien
Formatkonvertierung : Nahtlose Konvertierung zwischen den Formaten SAM, BAM und CRAM
Regionsspezifische Analyse : Extrahieren und analysieren Sie bestimmte Genomregionen
Flag-basiertes Filtern : Filtern Sie Lesevorgänge basierend auf SAM-Flags
Leistungsoptimierung : Multithread-Operationen zum Sortieren und Zusammenführen
Statistische Analyse : Erstellen Sie umfassende Ausrichtungsstatistiken
Werkzeugübersicht
Werkzeug | Beschreibung | Hauptmerkmale |
| Anzeigen und Konvertieren von Ausrichtungsdateien | - Formatkonvertierung (SAM/BAM/CRAM) - Regionsfilterung - Flag-basierte Filterung - Header-Manipulation |
| Alignment-Dateien sortieren | - Koordinatenbasierte Sortierung - Namensbasierte Sortierung - Speicher pro Thread-Steuerung - Multithreading-Unterstützung |
| BAM/CRAM-Dateien indizieren | - BAI-Indexgenerierung - CSI-Indexunterstützung - CRAM-Indexerstellung |
| Mehrere BAM/CRAM-Dateien zusammenführen | - Zusammenführen mehrerer Dateien - Thread-fähige Verarbeitung - Header-Abgleich |
| Lesetiefe berechnen | - Tiefenberechnung pro Basis - Regionsspezifische Analyse - Unterstützung mehrerer Dateien |
| Generieren von Ausrichtungsstatistiken | - Umfassende Flaggenstatistiken - Qualitätsprüfungen - Paired-End-Metriken |
| BAM/CRAM-Indexstatistiken | - Referenzsequenzstatistiken - Zugeordnete/nicht zugeordnete Zählungen - Längeninformationen |
| Indexieren Sie FASTA-Dateien | - FASTA-Indizierung - Regionsextraktion - Sequenzabruf |
Related MCP server: Filesystem MCP Server
Installation
Docker verwenden (empfohlen)
Der einfachste Weg, SAMtools MCP zu verwenden, ist über 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:latestLokale Installation
Klonen Sie das Repository:
git clone https://github.com/your-username/samtools_mcp.git
cd samtools_mcpInstallieren Sie Abhängigkeiten:
pip install uv
uv pip install -r requirements.txtKonfiguration
MCP-Serverkonfiguration
Um den MCP-Server für die Verwendung des Docker-Images zu konfigurieren, fügen Sie Ihrer MCP-Konfigurationsdatei Folgendes hinzu:
{
"servers": {
"samtools": {
"type": "docker",
"image": "nadhir/samtools-mcp:latest",
"volumes": [
{
"source": "/path/to/your/data",
"target": "/data"
}
]
}
}
}Lokale MCP-Konfiguration
Um MCP für die Ausführung mit uv zu konfigurieren, fügen Sie Folgendes zu Ihrer ~/.cursor/mcp.json hinzu:
{
"samtools_mcp": {
"command": "uv",
"args": ["run", "--with", "fastmcp", "fastmcp", "run", "/path/to/samtools_mcp.py"]
}
}Ersetzen Sie /path/to/samtools_mcp.py durch den tatsächlichen Pfad zu Ihrer Datei samtools_mcp.py .
Verwendung
Grundlegende Befehle
BAM-Datei anzeigen:
from samtools_mcp import SamtoolsMCP
mcp = SamtoolsMCP()
result = mcp.view(input_file="/data/example.bam")BAM-Datei sortieren:
result = mcp.sort(input_file="/data/example.bam", output_file="/data/sorted.bam")BAM-Datei indizieren:
result = mcp.index(input_file="/data/sorted.bam")Erweiterte Nutzung
Bestimmte Regionen mit Flaggen anzeigen:
result = mcp.view(
input_file="/data/example.bam",
region="chr1:1000-2000",
flags_required="0x2",
output_format="SAM"
)Nach gelesenem Namen sortieren:
result = mcp.sort(
input_file="/data/example.bam",
output_file="/data/namesorted.bam",
sort_by_name=True
)Berechnen Sie die Tiefe mit mehreren Eingabedateien:
result = mcp.depth(
input_files=["/data/sample1.bam", "/data/sample2.bam"],
region="chr1:1-1000000"
)Beitragen
Beiträge sind willkommen! Senden Sie gerne einen Pull Request.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE.
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sirusb/samtools_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
