Skip to main content
Glama

1000 Genomes Project Dataset MCP Server

Natursprachlicher Zugriff auf das 1000 Genomes Project Dataset, gehostet online im Dnaerys Variant Store

Sequenziert & aligniert durch das New York Genome Center (GRCh38). 3202 Proben: 2504 nicht verwandte Proben aus dem Phase-3-Panel + 698 Proben aus 602 Familientrios - Details zum Datensatz

Hauptmerkmale

  • Echtzeit-Zugriff auf 138 044 723 einzigartige Varianten und ~442 Milliarden individuelle Genotypen

  • Auswahl von Varianten, Proben und Genotypen basierend auf Koordinaten, Annotationen, Zygotie, Population

  • Filterung nach VEP (Auswirkung, Biotyp, Feature-Typ, Variantenklasse, Konsequenzen), ClinVar Clinical Significance (202502), gnomADe + gnomADg 4.1, AlphaMissense Score & AlphaMissense Class Annotationen

  • zurückgegebene Varianten annotiert mit HGVSp, gnomADe + gnomADg, AlphaMissense Score + kohortenweiten Statistiken

    • HGVSp-Annotationen beziehen sich auf kanonische Transkripte, um die kognitive Belastung für LLMs zu reduzieren

  • Proben annotiert mit: familyId, gender, paternalId, maternalId, relationship, children, population, superpopulation, phase3 indicator

Online-Dienst

Remote-MCP-Dienst via Streamable HTTP:

Beispiele

Makromolekulare Strukturkomplexe

Behandeln Sie das 26S-Proteasom als eine mechanisch redundante 3D-Maschine und bilden Sie jede Missense-Variante der KGP-Individuen über alle 33 Untereinheiten ab. Führen Sie eine räumliche Analyse durch, um festzustellen, ob pathogene Variationen statistisch eher auf den distalen 'Deckel' (Zone C) verteilt sind als auf die evolutionär stärker eingeschränkten 'Kern'- (Zone A) oder 'Gating'- (Zone B) Schnittstellen. Identifizieren Sie Individuen mit einer hohen kumulativen Belastung (2+ 'wahrscheinlich pathogene' Varianten), um die inter-untereinheitliche Kompensation zu untersuchen, und suchen Sie nach gepaarten 'schwächenden' und 'stabilisierenden' Mutationen an Protein-Protein-Gelenken. Definieren Sie abschließend die 'mechanische Toleranz' des Proteasoms, indem Sie die maximale kumulative strukturelle Störung festlegen, die bei einem einzelnen gesunden Individuum beobachtet wurde, basierend auf AlphaMissense-Scores und berechneten ΔΔG-Werten.

Fallstudie: Workflow, Aufgabenberichte, Manuskriptentwürfe →

Makromolekulare Strukturkomplexe

Der MCM2-7-Komplex (der "DNA-Helikase-Motor") ist ein molekulares Meisterwerk. Es handelt sich um einen heterohexameren Ring, bei dem jede Untereinheit ein eigenes "Zahnrad" im DNA-entwindenden Motor darstellt. Im Gegensatz zu homomeren Ringen (bei denen jede Untereinheit gleich ist), ist dieser Komplex asymmetrisch. Jede Schnittstelle zwischen den Untereinheiten ist einzigartig, und sie verbrauchen ATP nicht alle mit der gleichen Rate. Die MCM2/5-Schnittstelle ist das "Tor", das sich physisch öffnen muss, damit DNA in den Ring eintreten kann, und dann zuschnappen muss. Dies ist ein mechanischer Punkt unter hoher Belastung.

Identifizieren Sie Individuen in der KGP-Kohorte, die Missense-Varianten an der MCM2/5-Schnittstelle tragen. Suchen Sie insbesondere nach 'Ladungsumkehr'-Varianten (z. B. Aspartat zu Lysin). Analysieren Sie in diesen spezifischen Proben die 'kompensatorische Kopplung': Tragen sie eine sekundäre, reziproke Ladungsumkehr-Variante an der gegenüberliegenden Untereinheitsschnittstelle, die den elektrostatischen 'Riegel' wiederherstellt?

Identifizieren Sie Individuen in der KGP-Kohorte, die hochpathogene Varianten in den Walker-A- oder Walker-B-Motiven (dem ATP-verbrauchenden Herzstück) einer beliebigen MCM-Untereinheit im MCM2-7-Komplex tragen. Führen Sie für diese Individuen eine 'Systemic Flux'-Analyse durch: Betrachten Sie ihre Varianten in der Leading-Strand-Polymerase (POLE) und der Gleitklammer (PCNA). Erkennen Sie eine Signatur der 'koordinierten Verlangsamung', bei der der Motor, die Klammer und die Polymerase alle Varianten tragen, die auf eine langsamere, aber hochpräzise Replikationsgabel hindeuten?

Makromolekulare Strukturkomplexe

Das menschliche RNA-Exosom (Exo-9-Kern) ist eine "tote Maschine", die als Gerüst fungiert. Bei niederen Organismen kann der Ring selbst RNA abbauen. Beim Menschen hat der 9-Untereinheiten-Ring alle seine katalytischen Zähne verloren und ist rein ein struktureller Tunnel, der RNA in die katalytischen Untereinheiten (DIS3 oder EXOSC10) leitet, die am Boden befestigt sind. Da RNA ein stark negativ geladenes Polymer ist, sind die Reste, die diese Pore auskleiden, typischerweise positiv geladen (Lysin, Arginin), aber nicht zu "klebrig", sonst würde die RNA stecken bleiben. Um also den "Schredder" am Boden zu erreichen, muss sie durch eine enge Pore gleiten, die vom Exo-9-Ring gebildet wird.

Die Aufgabe: Analysieren Sie alle Missense-Varianten in der KGP-Kohorte, die auf die internen Poren-auskleidenden Reste des Exo-9-Rings abgebildet werden. Suchen Sie nach 'Ladungstausch'-Varianten, bei denen ein positiver Rest (K, R) durch einen negativen (D, E) ersetzt wird. Wenn ein Individuum trotz eines 'negativen Flecks' im Tunnel, der RNA abstoßen sollte, gesund ist, trägt es eine kompensatorische Variante in den Kappen-Untereinheiten (EXOSC1, 2, 3), die den Eingang erweitert? Verwenden Sie eine 3D-elektrostatische Oberflächenkarte, um festzustellen, ob die 'gesunde' Kohorte einen spezifischen elektrostatischen Gradienten beibehält.

Synergistische Epistase bei der Redox-Homöostase

Die zelluläre Redox-Homöostase wird durch zwei parallele Antioxidationssysteme aufrechterhalten: das Glutathion-System und das Thioredoxin-System. Der vollständige Verlust von GSR oder TXNRD1 ist mit der Entwicklung von Säugetieren nicht vereinbar, dennoch enthalten Populationsdatenbanken Individuen, die Varianten tragen, von denen vorhergesagt wird, dass sie die Enzymfunktion beeinträchtigen.

Identifizieren Sie Cluster von Individuen in der KGP-Kohorte, die mehrere VEP-Varianten mit 'moderater' Auswirkung in beiden Systemen tragen. Können Sie durch das Durchdenken der strukturellen Auswirkungen von AlphaMissense einen 'Balanceakt' erkennen, bei dem ein Effizienzverlust bei der Glutathion-Reduktase konsistent mit hochkonfidenten benignen oder potenziell aktivierenden Varianten im Thioredoxin-System gepaart ist? Synthetisieren Sie ein Modell der 'Redox-Robustheit' basierend auf dem gemeinsamen Auftreten dieser Varianten in der gesamten Kohorte.

Weitere Beispiele


Architektur

Implementiert als Java EE-Dienst, der über gRPC-Aufrufe auf den öffentlichen Dnaerys Variant Store-Dienst auf das KGP-Dataset zugreift.

  • bietet MCP über Streamable HTTP, HTTP/SSE und STDIO-Transporte

  • die Dienstimplementierung basiert auf dem Quarkus MCP Server Framework

  • Probenpopulation und Metadaten werden von einer eingebetteten DuckDB-Instanz verwaltet

  • MCP-Tools:

    • Genomik-Datenbank: countSamples, countSamplesHomozygousReference, countVariants, countVariantsInSamples, getDatasetInfo, getKinshipDegree, selectSamples, selectSamplesHomozygousReference, selectVariants, selectVariantsInSamples, computeAlphaMissenseAvg, computeVariantBurden

    • Population und Metadaten: listPopulations, listSuperpopulations, getPopulationStats, getSuperpopulationSummary, getSampleMetadata, selectSamplesByPopulation

    • Implementierung

Installation

Das Projekt kann lokal mit MCP über stdio- und/oder http-Transporte ausgeführt werden

  • bauen Sie das Projekt und verpacken Sie es als ein einzelnes Über-Jar:

    • das Jar befindet sich in target/onekgpd-mcp-runner.jar und enthält alle Abhängigkeiten

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

mit Überspringen der Testkompilierung

./mvnw  clean package -Dmaven.test.skip=true -Dquarkus.package.jar.type=uber-jar
  • führen Sie es lokal mit dem dev-Profil aus

    • sowohl stdio- als auch http-Transporte sind aktiviert

    • der http-Transport läuft auf Port 9000 (quarkus.http.port in config)

    • das Projekt erwartet, dass JRE 21 zur Laufzeit verfügbar ist

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

Verbindung mit MCP-Clients

  • um sich über den http-Transport zu verbinden, remote oder lokal, leiten Sie den Client einfach an ein Ziel weiter, z.B. http://localhost:9000/mcp oder https://db.dnaerys.org:443/mcp

    • Hinweis: Claude Desktop funktioniert nicht mit der Option http://localhost:9000/mcp. Diese Option ist für Clients wie Goose gedacht.

  • um sich über den stdio-Transport zu verbinden, sollte der MCP-Client die Anwendung mit dem dev-Profil und mit einem vollständigen Pfad zur Jar-Datei starten

    • z.B. für Claude Desktop in Konfigurationsdateien hinzufügen (z.B. claude_desktop_config.json):

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

Verifizierung

Wie viele Varianten gibt es im 1000 Genomes Project?

Testabdeckungsstatus

Komponente

Typ

Tests

Status

Entity Mappers (9 Klassen)

Unit

314

✅ Abgeschlossen

DnaerysClient

Unit

58 (7 deaktiviert)

✅ Abgeschlossen

DnaerysClient

Integration

5 (1 deaktiviert)

✅ Abgeschlossen

OneKGPdMCPServer

Unit

26

✅ Abgeschlossen

OneKGPdMCPServer

Integration

5

✅ Abgeschlossen

Sonstiges

Unit

1

✅ Abgeschlossen

Sonstiges

Integration

1

✅ Abgeschlossen

Gesamt

410 Tests

402 bestanden, 8 deaktiviert

Testaufschlüsselung:

  • Unit-Tests: 399 (7 deaktiviert, 392 bestanden)

  • Integrationstests: 11 (1 deaktiviert, 10 bestanden)

Deaktivierte Tests:

  • 7 DnaerysClient Unit-Tests (PaginationTests, Streaming-gRPC-Einschränkung - wiremock-grpc-extension:0.11.0 kann noch keine Streaming-RPCs mocken)

  • 1 DnaerysClient Integrationstest (PaginationLogicTests, Streaming-gRPC-Einschränkung - wiremock-grpc-extension:0.11.0 kann noch keine Streaming-RPCs mocken)

Tests ausführen

# 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

Der Testteil dieses Projekts wurde von Claude geschrieben. Der spaßige Teil wurde von Menschen geschrieben.


Datenschutzrichtlinie

Der OneKGPd MCP Server fungiert als schreibgeschützte Schnittstellenschicht für das 1000 Genomes Project Dataset. Der Server sammelt, speichert oder überträgt keine Benutzerdaten. Es werden keine Konversationsdaten aufgezeichnet. Es werden keine persönlichen Informationen gesammelt. Es werden keine Cookies, Tracking-Mechanismen oder Authentifizierungen verwendet.

Support

Lizenz

Dieses Projekt ist unter der Apache License 2.0 lizenziert - siehe die LICENSE-Datei für Details.

-
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