cBioPortal MCP 서버
다차원 암 유전체 데이터세트 탐색 플랫폼인 cBioPortal 의 암 유전체 데이터와 AI 어시스턴트가 상호 작용할 수 있도록 지원하는 고성능 비동기 모델 컨텍스트 프로토콜(MCP) 서버입니다. 최신 비동기 Python으로 구축되어 데이터 검색 속도가 크게 향상되었습니다.
특징
- 🔍 암 연구 : cBioPortal에서 이용 가능한 암 연구를 탐색하고 검색하세요
- 🧬 게놈 데이터 : 유전자 돌연변이, 임상 데이터 및 분자 프로필에 접근
- 🔎 검색 기능 : 키워드 검색으로 연구, 유전자 및 샘플을 찾으세요
- 📊 다양한 데이터 유형 : 돌연변이, 임상 데이터 및 연구 메타데이터 검색
- ⚡ 비동기 성능 : 훨씬 빠른 데이터 검색을 위한 완전 비동기 구현(최대 4.5배 더 빠름)
- 📚 대량 작업 : 성능 향상을 위해 여러 연구 및 유전자를 동시에 가져오기
- 🔄 FastMCP 통합 : 고성능 FastMCP 프레임워크 기반
목차
설치
필수 조건
- Python 3.8 이상
- pip(Python 패키지 설치 프로그램)
- Git(선택 사항, 저장소 복제용)
환경 설정
옵션 1: venv 및 pip 사용(표준 방법)
지엑스피1
pip로 종속성 설치
옵션 2: UV 사용(더 빠른 대안)
UV 는 pip보다 훨씬 빠른 현대적이고 고성능 Python 패키지 관리자이자 환경 관리자입니다.
UV로 종속성 설치
서버 다운로드
cbioportal_server.py
스크립트를 작업 디렉토리에 다운로드하거나 이 저장소를 복제하세요.
스크립트를 실행 가능하게 만들기(Linux/macOS 전용)
용법
서버 시작
기본 설정으로 서버를 시작하려면:
이렇게 하면 https://www.cbioportal.org/api
에 있는 공개 cBioPortal API를 사용하여 서버가 실행됩니다.
고급 옵션
명령줄 인수를 사용하여 서버 동작을 사용자 정의합니다.
구성
Claude Desktop과 함께 사용
- Claude Desktop 설치
- 클로드 데스크톱 열기
- 도구 모음에서 MCP 서버 아이콘을 클릭하세요.
- 다음 구성으로 새로운 MCP 서버를 추가합니다.
참고: 경로를 Python 실행 파일 및 서버 스크립트의 실제 경로로 바꿔야 합니다. command
필드는 가상 환경의 Python 실행 파일(예: .venv/bin/python3
)을 가리켜야 하며, args
배열의 첫 번째 요소는 cbioportal_server.py
스크립트 경로여야 합니다. ENOTDIR
오류가 발생하면 command
필드가 디렉터리가 아닌 Python 실행 파일로 올바르게 설정되어 있는지 확인하십시오.
VS Code와 함께 사용
작업 공간 설정에서 MCP 서버를 구성하세요.
사용 가능한 도구
cBioPortal MCP 서버는 다음과 같은 도구를 제공합니다.
도구 이름 | 설명 |
---|---|
get_cancer_studies | cBioPortal에서 사용 가능한 모든 암 연구를 나열하세요 |
get_cancer_types | 모든 암 유형 목록을 받으세요 |
get_study_details | 특정 암 연구에 대한 자세한 정보를 얻으세요 |
get_samples_in_study | 연구와 관련된 샘플 목록을 받으세요 |
get_genes | Hugo 기호 또는 Entrez ID로 특정 유전자에 대한 정보를 얻으세요. |
search_genes | 유전자를 기호 또는 이름의 키워드로 검색하세요 |
get_mutations_in_gene | 주어진 연구를 위해 특정 유전자의 돌연변이를 얻으세요 |
get_clinical_data | 연구에 참여한 환자의 임상 데이터를 얻으세요 |
get_molecular_profiles | 연구에 사용할 수 있는 분자 프로필 목록을 받으세요 |
search_studies | 키워드로 암 연구 검색 |
get_multiple_studies | 더 나은 성능을 위해 여러 연구를 동시에 가져옵니다. |
get_multiple_genes | 자동 배칭으로 여러 유전자를 동시에 검색 |
예시
이 서버에 연결된 AI 도우미에게 물어볼 수 있는 질문의 예는 다음과 같습니다.
성능
이 서버는 cBioPortal API에서 데이터를 검색할 때 성능을 크게 향상시키기 위해 완전한 비동기 지원을 구현합니다.
벤치마크 결과
테스트 결과 비동기 구현을 통해 상당한 성능 향상이 나타났습니다.
- 순차적 작업과 비교했을 때 동시 연구 페칭 속도가 4.57배 더 빠릅니다.
- 여러 유전자 검색을 위한 효율적인 일괄 처리
- 순차 작업과 동시 작업 간의 일관된 데이터 품질
대량 작업의 이점
서버는 동시성을 활용하는 대량 작업을 위한 특수 도구를 제공합니다.
get_multiple_studies
: asyncio.gather를 사용하여 여러 연구를 병렬로 가져옵니다.get_multiple_genes
: 효율적인 동시 유전자 검색을 위한 스마트 배칭을 구현합니다.
이러한 방법에는 실행 시간, 배치 수 등의 세부적인 성능 측정 항목이 포함되어 있어 효율성 향상을 이해하는 데 도움이 됩니다.
문제 해결
서버 시작 실패
- Python 3.8 이상이 설치되어 있는지 확인하세요:
python --version
- 모든 종속성이 설치되었는지 확인하세요:
pip list | grep mcp
- 콘솔에서 오류 메시지를 확인하세요
Claude Desktop 연결 문제
- 구성에서 스크립트 경로가 올바른지 확인하세요.
- 스크립트에 실행 권한이 있는지 확인하세요
- 자세한 오류 메시지는 Claude 로그에서 확인하세요.
API 연결 문제
- 인터넷 연결이 있는지 확인하세요
- cBioPortal API에 액세스할 수 있는지 확인하세요:
curl https://www.cbioportal.org/api/cancer-types
- 가능하다면 다른 API 엔드포인트를 사용해 보세요.
개발
서버 확장
CBioPortalMCPServer
클래스에 새로운 메서드를 추가하고 이를 도구로 등록하여 서버의 기능을 확장할 수 있습니다.
향후 개선 사항
향후 버전에 대한 잠재적 개선 사항:
- 자주 액세스되는 데이터에 대한 캐싱
- 개인 cBioPortal 인스턴스에 대한 인증 지원
- 더욱 포괄적인 데이터 액세스를 위한 추가 엔드포인트
- 서버 기능에 따른 동시성 제한 미세 조정
- 더욱 강력한 오류 처리를 위해 요청 재시도 메커니즘을 추가합니다.
- 다른 엔드포인트에 대해 더 많은 동시 대량 작업 방법을 구현합니다.
업데이트 및 유지 관리
MCP SDK의 최신 버전으로 업데이트하려면:
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
감사의 말
- 오픈 액세스 암 유전체학 데이터 플랫폼을 제공하는 cBioPortal
- AI 도구 상호 작용을 가능하게 하는 모델 컨텍스트 프로토콜
- 고성능 MCP 서버 프레임워크를 위한 FastMCP
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.
cBioPortal의 암 유전체 데이터와 AI 보조자가 상호 작용할 수 있도록 하는 서버로, 사용자는 암 연구를 탐색하고, 유전체 데이터에 접근하고, 돌연변이와 임상 정보를 검색할 수 있습니다.
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 -40JavaScript
- -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 -10Python