Detección de variantes multinucleotídicas (Multi-Nucleotide Variant) - anotación a nivel de codón a partir de VCF o TSV de iVar. Rust puro · sin dependencias de C · multiplataforma (macOS, Linux, Windows)
Documentación · Instalación · Inicio rápido · Citación · Pregunta una duda
English · Español
Paula Ruiz-Rodriguez1
y Mireia Coscolla1
1. Institute for Integrative Systems Biology, I2SysBio, University of Valencia-CSIC, Valencia, Spain
get_MNV detecta los casos en los que dos o más SNV caen en el mismo codón y deben interpretarse de forma conjunta. Estos cambios combinados pueden producir un efecto sobre el aminoácido distinto al de los SNV por separado.
Toma llamadas de variantes (VCF o variants.tsv de iVar), un FASTA de
referencia y una anotación de genes (GFF/GFF3/GTF o un TSV sencillo),
opcionalmente las lecturas alineadas, y escribe las variantes anotadas en TSV,
VCF o ambos, además de un informe HTML interactivo y autocontenido.
- Agrupa los SNV por codón y reporta llamadas SNP, MNV o SNP/MNV
- Recalcula los cambios de aminoácido desde el haplotipo completo del codón
- Descompone los alelos
REF/ALTen componentes SNV, MNV, inserción, deleción, delins e indel complejo - Cuenta el soporte de SNP, MNV e indel exacto desde un BAM, con sesgo de hebra
- Admite 9 tablas de código genético del NCBI
- Incluye una GUI de escritorio con arrastrar y soltar y un visor de pistas genómicas
Descarga la última versión para tu plataforma:
| Plataforma | Descarga |
|---|---|
| 🍎 macOS (Apple Silicon) | get_MNV_1.1.5_aarch64.dmg |
| 🍎 macOS (Intel) | get_MNV_1.1.5_x64.dmg |
| 🐧 Linux | Página de releases |
| 🪟 Windows | Página de releases |
Note
Usuarios de macOS: la aplicación no está firmada con un certificado de desarrollador de Apple. La primera vez, haz clic derecho sobre la app → Abrir → pulsa Abrir en el diálogo. Consulta el soporte de Apple para más detalles.
conda install -c bioconda get_mnvo descarga un binario precompilado:
wget https://github.com/PathoGenOmics-Lab/get_MNV/releases/latest/download/get_mnv
chmod +x get_mnv
./get_mnv --helpo compila desde el código fuente:
git clone https://github.com/PathoGenOmics-Lab/get_MNV.git
cd get_MNV
cargo install --path .get_mnv \
--vcf variants.vcf \
--bam reads.bam \
--fasta reference.fasta \
--gff genes.gff3 \
--both \
--report run.html--bam es opcional y es lo que convierte "estos dos cambios están en un codón"
en "estos dos cambios están en una misma molécula". Usa --tsv en vez de
--vcf para un variants.tsv de iVar, y --genes en vez de --gff para una
anotación de cuatro columnas. get_mnv --help lista todas las opciones, y la
referencia de CLI
explica qué cambia cada una en la respuesta.
La salida tiene esta pinta:
Chromosome Gene Positions Base Changes AA Changes Variant Type Change Type
MTB_anc Rv0095c 104838 T Asp126Glu SNP Non-synonymous
MTB_anc Rv0095c 104941,104942 T,G Gly92Gln SNP/MNV Non-synonymous
MTB_anc esxL 1341102,1341103 T,C Arg33Ser SNP/MNV Non-synonymous
En example/ hay un conjunto de datos de M. tuberculosis
listo para ejecutar (referencia, genes, VCF y un BAM de demostración pequeño
para el visor de lecturas). El
tutorial lo
recorre entero.
https://pathogenomics-lab.github.io/get_MNV/es/ es el manual, en español y
en inglés: cada opción con su valor por defecto, qué significa cada columna de
salida, y qué hace y qué no hace la herramienta. Las mismas páginas están en
docs/ en este repositorio.
| Empieza por aquí | |
|---|---|
| Tutorial de línea de comandos | Una primera ejecución completa con los datos incluidos, explicando la salida línea a línea |
| Recetas habituales | Comandos listos para los trabajos de siempre |
| Tutorial de la GUI | La misma ejecución en la aplicación, pantalla por pantalla |
| Referencia | |
|---|---|
| Referencia de CLI | Todas las opciones, con su valor por defecto y qué cambian |
| Formatos de entrada | Cómo tienen que ser el VCF, el FASTA, la anotación y el BAM |
| Formatos de salida | Cada columna del TSV, clave INFO del VCF y campo JSON |
| Informe de ejemplo | Un informe HTML real: ábrelo y trastea |
| Cómo funciona | |
|---|---|
| Alcance y compatibilidad | De qué se ocupa get_MNV, qué deja a tu llamador de variantes y dónde están sus límites |
| Indels y haplotipos locales | Cómo se lee un indel de los alineamientos y qué cuenta cada número |
| Ligamiento | Distinguir un haplotipo real de dos variantes que solo comparten codón |
| Resolución de problemas | Los errores que detienen una ejecución, y qué te está diciendo cada aviso |
El historial de versiones está en CHANGELOG.md.
Si el manual no lo responde, pregunta en Q&A. Las preguntas sobre por qué una variante ha salido de una forma concreta van ahí, no al gestor de issues, y una respuesta marcada como tal es la que encuentra el siguiente. Las issues son para algo que se rompió, se negó a ejecutar o está claramente mal.
La CLI y la biblioteca principales están en src/. La aplicación de escritorio
usa Tauri en src-tauri/ y React/TypeScript en frontend/.
cargo test --workspace
npm run build --prefix frontend
bash scripts/build_get_mnv.sh
bash scripts/build_gui_bundle.shtests/scenarios/ es un arnés en Python que construye entradas sintéticas de
FASTA, GFF, VCF y BAM a partir de escenarios declarativos, ejecuta el binario
compilado y comprueba cada fila de la salida; necesita samtools en el PATH.
Consulta tests/scenarios/README.es.md para ver
los casos que cubre y cómo añadir uno.
cargo build # produce target/debug/get_mnv
python3 tests/scenarios/run.py # ejecuta todos los escenariosSi usas get_MNV en tu investigación, cita por favor:
Ruiz-Rodriguez P, Coscolla M. get_MNV: Multi-Nucleotide Variant detection tool. Zenodo. doi: 10.5281/zenodo.13907422
@software{ruiz-rodriguez_get_mnv_2026,
title = {get\_MNV: Multi-Nucleotide Variant detection tool},
author = {Ruiz-Rodriguez, Paula and Coscoll{\'a}, Mireia},
year = {2026},
doi = {10.5281/zenodo.13907422},
url = {https://github.com/PathoGenOmics-Lab/get_MNV},
version = {1.1.5},
license = {AGPL-3.0}
}GNU Affero General Public License v3.0
Haz clic para ver el logo imprimible en 3D:
|
Paula Ruiz-Rodriguez 💻 🔬 🤔 🔣 🎨 🔧 |
Mireia Coscolla 🔍 🤔 🧑🏫 🔬 📓 |
Este proyecto sigue la especificación all-contributors (clave de emojis).

