cBioPortal MCP-Server
Ein leistungsstarker asynchroner Model Context Protocol (MCP)-Server, der KI-Assistenten die Interaktion mit Krebsgenomikdaten von cBioPortal ermöglicht, einer Plattform zur Erforschung multidimensionaler Krebsgenomik-Datensätze. Entwickelt mit modernem asynchronem Python für deutlich schnelleren Datenabruf.
Merkmale
- 🔍 Krebsstudien : Durchsuchen und suchen Sie nach Krebsstudien, die im cBioPortal verfügbar sind
- 🧬 Genomische Daten : Zugriff auf Genmutationen, klinische Daten und molekulare Profile
- 🔎 Suchfunktionen : Finden Sie Studien, Gene und Proben mit der Stichwortsuche
- 📊 Mehrere Datentypen : Abrufen von Mutationen, klinischen Daten und Studienmetadaten
- ⚡ Asynchrone Leistung : Vollständig asynchrone Implementierung für deutlich schnelleren Datenabruf (bis zu 4,5-mal schneller)
- 📚 Massenvorgänge : Gleichzeitiges Abrufen mehrerer Studien und Gene für eine verbesserte Leistung
- 🔄 FastMCP-Integration : Basierend auf dem leistungsstarken FastMCP-Framework
Inhaltsverzeichnis
Installation
Voraussetzungen
- Python 3.8 oder höher
- pip (Python-Paketinstallationsprogramm)
- Git (optional, zum Klonen des Repository)
Umgebung einrichten
Option 1: Verwenden von venv und pip (Standardmethode)
Installieren Sie Abhängigkeiten mit pip
Option 2: Verwendung von UV (schnellere Alternative)
UV ist ein moderner, leistungsstarker Python-Paketmanager und Umgebungsmanager, der deutlich schneller ist als pip.
Installieren Sie Abhängigkeiten mit UV
Server herunterladen
Laden Sie das Skript cbioportal_server.py
in Ihr Arbeitsverzeichnis herunter oder klonen Sie dieses Repository:
Machen Sie das Skript ausführbar (nur Linux/macOS)
Verwendung
Starten des Servers
So starten Sie den Server mit den Standardeinstellungen:
Dadurch wird der Server mithilfe der öffentlichen cBioPortal-API unter https://www.cbioportal.org/api
gestartet.
Erweiterte Optionen
Passen Sie das Serververhalten mit Befehlszeilenargumenten an:
Konfiguration
Verwendung mit Claude Desktop
- Installieren Sie Claude Desktop
- Öffnen Sie Claude Desktop
- Klicken Sie auf das MCP-Server-Symbol in der Symbolleiste
- Fügen Sie einen neuen MCP-Server mit der folgenden Konfiguration hinzu:
Ersetzen Sie /path/to/cbioportal_server.py
durch den tatsächlichen Pfad zu Ihrem Skript.
Verwendung mit VS Code
Konfigurieren Sie den MCP-Server in Ihren Arbeitsbereichseinstellungen:
Verfügbare Tools
Der cBioPortal MCP-Server bietet die folgenden Tools:
Werkzeugname | Beschreibung |
---|---|
get_cancer_studies | Listen Sie alle verfügbaren Krebsstudien im cBioPortal auf |
get_cancer_types | Holen Sie sich eine Liste aller Krebsarten |
get_study_details | Erhalten Sie detaillierte Informationen zu einer bestimmten Krebsstudie |
get_samples_in_study | Holen Sie sich eine Liste der mit einer Studie verbundenen Proben |
get_genes | Erhalten Sie Informationen zu bestimmten Genen anhand ihres Hugo-Symbols oder ihrer Entrez-ID |
search_genes | Suche nach Genen anhand von Schlüsselwörtern in ihrem Symbol oder Namen |
get_mutations_in_gene | Erhalten Sie Mutationen in einem bestimmten Gen für eine bestimmte Studie |
get_clinical_data | Erhalten Sie klinische Daten für Patienten in einer Studie |
get_molecular_profiles | Erhalten Sie eine Liste der für eine Studie verfügbaren Molekülprofile |
search_studies | Suche nach Krebsstudien anhand von Schlüsselwörtern |
get_multiple_studies | Rufen Sie mehrere Studien gleichzeitig ab, um eine bessere Leistung zu erzielen |
get_multiple_genes | Rufen Sie mehrere Gene gleichzeitig mit automatischer Batchverarbeitung ab |
Beispiele
Hier sind Beispiele für Fragen, die Sie KI-Assistenten stellen können, die mit diesem Server verbunden sind:
Leistung
Dieser Server implementiert vollständige asynchrone Unterstützung für eine deutlich verbesserte Leistung beim Abrufen von Daten aus der cBioPortal-API.
Benchmark-Ergebnisse
Unsere Tests zeigen erhebliche Leistungsverbesserungen durch die asynchrone Implementierung:
- 4,57-mal schneller beim gleichzeitigen Abrufen von Studien im Vergleich zu sequentiellen Vorgängen
- Effiziente Stapelverarbeitung zum Abrufen mehrerer Gene
- Konsistente Datenqualität zwischen sequentiellen und gleichzeitigen Vorgängen
Vorteile von Massenvorgängen
Der Server bietet spezielle Tools für Massenvorgänge, die Parallelität nutzen:
get_multiple_studies
: Ruft mehrere Studien parallel mit asyncio.gather abget_multiple_genes
: Implementiert intelligentes Batching für eine effiziente gleichzeitige Genabfrage
Diese Methoden umfassen detaillierte Leistungsmesswerte wie Ausführungszeit und Batchanzahl, damit Sie die Effizienzgewinne besser verstehen.
Fehlerbehebung
Server kann nicht gestartet werden
- Stellen Sie sicher, dass Sie Python 3.8+ installiert haben:
python --version
- Überprüfen Sie, ob alle Abhängigkeiten installiert sind:
pip list | grep mcp
- Suchen Sie in der Konsole nach Fehlermeldungen
Verbindungsprobleme mit Claude Desktop
- Überprüfen Sie, ob der Pfad zum Skript in Ihrer Konfiguration korrekt ist.
- Stellen Sie sicher, dass das Skript über Ausführungsberechtigungen verfügt
- Überprüfen Sie die Claude-Protokolle auf detaillierte Fehlermeldungen
API-Verbindungsprobleme
- Stellen Sie sicher, dass Sie über eine Internetverbindung verfügen
- Überprüfen Sie, ob auf die cBioPortal-API zugegriffen werden kann:
curl https://www.cbioportal.org/api/cancer-types
- Versuchen Sie, einen anderen API-Endpunkt zu verwenden, falls verfügbar.
Entwicklung
Erweiterung des Servers
Sie können die Funktionalität des Servers erweitern, indem Sie der Klasse CBioPortalMCPServer
neue Methoden hinzufügen und diese als Tools registrieren:
Zukünftige Verbesserungen
Mögliche Verbesserungen für zukünftige Versionen:
- Caching für häufig abgerufene Daten
- Authentifizierungsunterstützung für private cBioPortal-Instanzen
- Zusätzliche Endpunkte für umfassenderen Datenzugriff
- Feinabstimmung der Parallelitätsgrenzen basierend auf den Serverfunktionen
- Fügen Sie Anforderungswiederholungsmechanismen für eine robustere Fehlerbehandlung hinzu
- Implementieren Sie mehr gleichzeitige Massenoperationsmethoden für andere Endpunkte
Updates und Wartung
So aktualisieren Sie auf die neueste Version des MCP SDK:
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE.
Danksagung
- cBioPortal für die Bereitstellung der Open-Access-Datenplattform zur Krebsgenomik
- Model Context Protocol zur Ermöglichung von KI-Tool-Interaktionen
- FastMCP für das leistungsstarke MCP-Server-Framework
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Ein Server, der es KI-Assistenten ermöglicht, mit Krebsgenomikdaten von cBioPortal zu interagieren, sodass Benutzer Krebsstudien untersuchen, auf Genomdaten zugreifen und Mutationen und klinische Informationen abrufen können.
Related MCP Servers
- -securityFlicense-qualityEnables AI assistants to interact with Metabase databases and dashboards, allowing users to list and execute queries, access data visualizations, and interact with database resources through natural language.Last updated -9JavaScript
- -securityFlicense-qualityEnables AI assistants to interact with Metabase, providing access to dashboards, questions, databases, and tools for executing queries and viewing data through natural language.Last updated -JavaScript
- -securityAlicense-qualityAn MCP server enabling AI assistants to search and analyze pharmaceutical data through Cortellis. Features comprehensive drug search, ontology exploration, and real-time clinical trial data access.Last updated -PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server providing AI assistants with access to healthcare data tools, including FDA drug information, PubMed research, health topics, clinical trials, and medical terminology lookup.Last updated -1Python