Skip to main content
Glama

Servidor MCP del conjunto de datos del Proyecto 1000 Genomas

Acceso en lenguaje natural al conjunto de datos del Proyecto 1000 Genomas, alojado en línea en el almacén de variantes de Dnaerys

Secuenciado y alineado por el New York Genome Center (GRCh38). 3202 muestras: 2504 muestras no relacionadas del panel de la fase tres + 698 muestras de 602 tríos familiares - detalles del conjunto de datos

Características clave

  • Acceso en tiempo real a 138 044 723 variantes únicas y ~442 mil millones de genotipos individuales

  • Selección de variantes, muestras y genotipos basada en coordenadas, anotaciones, cigosidad y población

  • Filtrado por VEP (impacto, biotipo, tipo de característica, clase de variante, consecuencias), significancia clínica de ClinVar (202502), anotaciones de gnomADe + gnomADg 4.1, puntuación AlphaMissense y clase AlphaMissense

  • Variantes devueltas anotadas con HGVSp, gnomADe + gnomADg, puntuación AlphaMissense + estadísticas de toda la cohorte

    • Las anotaciones HGVSp son para transcritos canónicos para reducir la carga cognitiva de los LLM

  • Muestras anotadas con: familyId, gender, paternalId, maternalId, relationship, children, population, superpopulation, phase3 indicator

Servicio en línea

Servicio MCP remoto mediante HTTP transmitible (Streamable HTTP):

Ejemplos

Complejos estructurales macromoleculares

Trate el proteasoma 26S como una máquina 3D mecánicamente redundante y mapee cada variante de sentido erróneo (missense) de los individuos del KGP a través de las 33 subunidades. Realice un análisis espacial para determinar si la variación patogénica está estadísticamente particionada hacia la 'tapa' distal (Zona C) en lugar de las interfaces más evolutivamente restringidas del 'núcleo' (Zona A) o de 'activación' (Zona B). Identifique individuos con una alta carga acumulativa (2+ variantes 'probablemente patogénicas') para investigar la compensación entre subunidades, buscando mutaciones emparejadas de 'debilitamiento' y 'estabilización' en las bisagras proteína-proteína. Finalmente, defina la 'tolerancia mecánica' del proteasoma estableciendo la interrupción estructural acumulativa máxima observada en un solo individuo sano basado en las puntuaciones AlphaMissense y los valores ΔΔG calculados.

Caso de estudio: flujo de trabajo, informes de tareas, borradores de manuscritos →

Complejos estructurales macromoleculares

El complejo MCM2-7 (el "motor de la ADN helicasa") es una obra maestra molecular. Es un anillo heterohexamérico donde cada subunidad es un "engranaje" distinto en el motor de desenrollado del ADN. A diferencia de los anillos homoméricos (donde cada subunidad es igual), este complejo es asimétrico. Cada interfaz entre subunidades es única y no todas consumen ATP a la misma velocidad. La interfaz MCM2/5 es la "puerta" que debe abrirse físicamente para permitir que el ADN entre en el anillo y luego cerrarse de golpe. Este es un punto mecánico de alta tensión.

Identifique individuos en la cohorte KGP que porten variantes de sentido erróneo en la interfaz MCM2/5. Específicamente, busque variantes de 'inversión de carga' (p. ej., aspartato a lisina). En estas muestras específicas, analice el 'acoplamiento compensatorio': ¿portan una variante secundaria y recíproca de inversión de carga en la interfaz de la subunidad opuesta que restaura el 'pestillo' electrostático?

Identifique individuos en la cohorte KGP que porten variantes de alta patogenicidad en los motivos Walker A o Walker B (el corazón que consume ATP) de cualquier subunidad MCM en el complejo MCM2-7. Para estos individuos, realice un análisis de 'Flujo Sistémico': observe sus variantes en la polimerasa de la hebra conductora (POLE) y la abrazadera deslizante (PCNA). ¿Detecta una firma de 'desaceleración coordinada' donde el motor, la abrazadera y la polimerasa portan variantes que sugieren una horquilla de replicación más lenta pero altamente precisa?

Complejos estructurales macromoleculares

El exosoma de ARN humano (núcleo Exo-9) es una "máquina muerta" que actúa como andamio. En organismos inferiores, el anillo en sí puede degradar el ARN. En humanos, el anillo de 9 subunidades ha perdido todos sus dientes catalíticos y es puramente un túnel estructural que guía el ARN hacia las subunidades catalíticas (DIS3 o EXOSC10) unidas en la parte inferior. Dado que el ARN es un polímero altamente cargado negativamente, los residuos que recubren este poro suelen estar cargados positivamente (lisina, arginina), pero no demasiado "pegajosos" o el ARN se atascará. Por lo tanto, para llegar a la "trituradora" en la parte inferior debe deslizarse a través de un poro estrecho formado por el anillo Exo-9.

La tarea: analizar todas las variantes de sentido erróneo en la cohorte KGP que se mapean a los residuos que recubren el poro interno del anillo Exo-9. Busque variantes de 'intercambio de carga' donde un residuo positivo (K, R) sea reemplazado por uno negativo (D, E). Si un individuo está sano a pesar de tener un 'parche negativo' en el túnel que debería repeler el ARN, ¿porta una variante compensatoria en las subunidades de la tapa (EXOSC1, 2, 3) que ensancha la entrada? Utilice un mapa de superficie electrostática 3D para determinar si la cohorte 'sana' mantiene un gradiente electrostático específico.

Epistasis sinérgica en la homeostasis redox

La homeostasis redox celular se mantiene mediante dos sistemas antioxidantes paralelos: el sistema del glutatión y el sistema de la tiorredoxina. La pérdida completa de GSR o TXNRD1 es incompatible con el desarrollo de los mamíferos, sin embargo, las bases de datos de población contienen individuos que portan variantes que se predice que alteran la función enzimática.

Identifique grupos de individuos en la cohorte KGP que porten múltiples variantes VEP de impacto 'moderado' en ambos sistemas. Razonando a través de las implicaciones estructurales de AlphaMissense, ¿puede detectar un 'acto de equilibrio' donde una pérdida de eficiencia en la glutatión reductasa se empareja consistentemente con variantes benignas o potencialmente activadoras de alta confianza en el sistema de la tiorredoxina? Sintetice un modelo de 'Robustez Redox' basado en la coocurrencia de estas variantes en toda la cohorte.

Más ejemplos


Arquitectura

Implementado como un servicio Java EE, accediendo al conjunto de datos KGP mediante llamadas gRPC al servicio público de almacén de variantes de Dnaerys.

  • proporciona MCP a través de transportes HTTP transmitible, HTTP/SSE y STDIO

  • la implementación del servicio se basa en el marco de trabajo Quarkus MCP Server

  • la población de muestras y los metadatos son gestionados por una instancia de DuckDB integrada

  • Herramientas MCP:

    • Base de datos de genómica: countSamples, countSamplesHomozygousReference, countVariants, countVariantsInSamples, getDatasetInfo, getKinshipDegree, selectSamples, selectSamplesHomozygousReference, selectVariants, selectVariantsInSamples, computeAlphaMissenseAvg, computeVariantBurden

    • Población y metadatos: listPopulations, listSuperpopulations, getPopulationStats, getSuperpopulationSummary, getSampleMetadata, selectSamplesByPopulation

    • implementación

Instalación

El proyecto se puede ejecutar localmente con MCP a través de transportes stdio y/o http

  • compile el proyecto y empaquételo como un único über-jar:

    • el jar se encuentra en target/onekgpd-mcp-runner.jar e incluye todas las dependencias

./mvnw clean package -DskipTests -Dquarkus.package.jar.type=uber-jar

con omisión de la compilación de pruebas

./mvnw  clean package -Dmaven.test.skip=true -Dquarkus.package.jar.type=uber-jar
  • ejecútelo localmente con el perfil de desarrollo (dev profile)

    • ambos transportes, stdio y http, están habilitados

    • el transporte http está en el puerto 9000 (quarkus.http.port en la configuración)

    • el proyecto espera que JRE 21 esté disponible en tiempo de ejecución

java -Dquarkus.profile=dev -jar <full path>/onekgpd-mcp-runner.jar

Conexión con clientes MCP

  • para conectarse a través del transporte http, remoto o local, simplemente dirija el cliente a un destino, p. ej. http://localhost:9000/mcp o https://db.dnaerys.org:443/mcp

    • NB: Claude Desktop no funcionará con la opción http://localhost:9000/mcp. Esta opción es para clientes como Goose.

  • para conectarse a través del transporte stdio, el cliente MCP debe iniciar la aplicación con el perfil de desarrollo y con una ruta completa al archivo jar

    • p. ej., para Claude Desktop añada a los archivos de configuración (p. ej., claude_desktop_config.json):

{
  "mcpServers": {
    "OneKGPd": {
      "command": "java",
      "args": ["-Dquarkus.profile=dev", "-jar", "/full/path/onekgpd-mcp-runner.jar"]
    }
  }
}

Verificación

¿Cuántas variantes existen en el Proyecto 1000 Genomas?

Estado de cobertura de pruebas

Componente

Tipo

Pruebas

Estado

Mapeadores de entidades (9 clases)

Unidad

314

✅ Completo

DnaerysClient

Unidad

58 (7 deshabilitadas)

✅ Completo

DnaerysClient

Integración

5 (1 deshabilitada)

✅ Completo

OneKGPdMCPServer

Unidad

26

✅ Completo

OneKGPdMCPServer

Integración

5

✅ Completo

Otro

Unidad

1

✅ Completo

Otro

Integración

1

✅ Completo

Total

410 pruebas

402 aprobadas, 8 deshabilitadas

Desglose de pruebas:

  • Pruebas unitarias: 399 (7 deshabilitadas, 392 aprobadas)

  • Pruebas de integración: 11 (1 deshabilitada, 10 aprobadas)

Pruebas deshabilitadas:

  • 7 pruebas unitarias de DnaerysClient (PaginationTests, limitación de gRPC de streaming - wiremock-grpc-extension:0.11.0 aún no puede simular RPCs de streaming)

  • 1 prueba de integración de DnaerysClient (PaginationLogicTests, limitación de gRPC de streaming - wiremock-grpc-extension:0.11.0 aún no puede simular RPCs de streaming)

Ejecución de pruebas

# Unit tests only (no server required)
./mvnw test

# Integration tests (requires db.dnaerys.org access)
./mvnw verify -DskipITs=false

# Update test baselines after data changes
./mvnw verify -DskipITs=false -DupdateBaseline=true

La parte de pruebas de este proyecto está escrita por Claude. La parte divertida está escrita por humanos.


Política de privacidad

El servidor MCP OneKGPd funciona como una capa de interfaz de solo lectura para el conjunto de datos del Proyecto 1000 Genomas. El servidor no recopila, almacena ni transmite ningún dato del usuario. No se registran datos de conversación. No se recopila información personal. No se utilizan cookies, mecanismos de seguimiento ni autenticación.

Soporte

Licencia

Este proyecto tiene la licencia Apache License 2.0; consulte el archivo LICENSE para obtener más detalles.

-
security - not tested
A
license - permissive license
-
quality - not tested

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/dnaerys/OneKGP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server