modelscope·@pickleton89/cbioportal-mcp
暂无描述。
这是一个高性能的异步模型上下文协议(MCP)服务器,使AI助手能够与cBioPortal中的癌症基因组数据进行交互。cBioPortal是一个探索多维癌症基因组数据集的平台。该服务器使用现代异步Python构建,以实现显著更快的数据检索速度。
bash
python -m venv cbioportal-mcp-env
cbioportal-mcp-envScriptsactivate
source cbioportal-mcp-env/bin/activate
bash
pip install mcp>=2.0.0
pip install httpx asyncio
UV 是一个现代的高性能Python包管理和环境管理工具,比pip快得多。
bash
pipx install uv
uv venv
.venvScriptsactivate
source .venv/bin/activate
bash
uv pip install mcp>=2.0.0
uv pip install httpx asyncio
将cbioportal_server.py脚本下载到工作目录,或者克隆此仓库:
bash git clone https://github.com/pickleton89/cbioportal-mcp.git cd cbioportal-mcp
bash chmod +x cbioportal_server.py
使用默认设置启动服务器:
bash python cbioportal_server.py
这将使用公共cBioPortal API https://www.cbioportal.org/api 启动服务器。
使用命令行参数自定义服务器行为:
bash
python cbioportal_server.py --base-url https://your-cbioportal-instance.org/api
python cbioportal_server.py --transport stdio
json
{
"mcpServers": {
"cbioportal": {
"command": "/Users/jeffkiefer/Documents/projects/cbioportal_MCP/.venv/bin/python3",
"args": ["/Users/jeffkiefer/Documents/projects/cbioportal_MCP/cbioportal_server.py"],
"env": {}
}
}
}注意: 请确保将路径替换为实际的Python可执行文件和服务器脚本路径。command字段应指向虚拟环境中的Python可执行文件(例如,.venv/bin/python3),而args数组的第一个元素应该是cbioportal_server.py脚本的路径。如果遇到ENOTDIR错误,请确保command字段正确设置为Python可执行文件而不是目录。
在工作区设置中配置MCP服务器:
json { "mcp.servers": { "cbioportal": { "command": "python", "args": ["/path/to/cbioportal_server.py"] } } }
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 | 自动分批并发检索多个基因 |
这里是一些你可以向连接到此服务器的人工智能助手提问的例子:
"cBioPortal中有哪些可用的癌症研究?" "在cBioPortal中搜索黑色素瘤研究" "获取BRCA1基因的信息" "乳腺癌研究中TP53存在哪些突变?" "查找与肺癌相关的研究" "获取TCGA乳腺癌研究中患者的临床数据"
该服务器实现了完全异步支持,显著提高了从cBioPortal API检索数据时的性能。
我们的测试显示,使用异步实现后性能有显著提升:
服务器提供专门用于利用并发性的批量操作工具:
get_multiple_studies: 使用asyncio.gather并行获取多个研究get_multiple_genes: 实现智能分批以高效并发检索基因这些方法包括详细的性能指标,如执行时间和批次计数,帮助您了解效率提升情况。
python --versionpip list | grep mcpcurl https://www.cbioportal.org/api/cancer-types您可以通过向CBioPortalMCPServer类添加新方法并将它们注册为工具来扩展服务器的功能:
python
def my_new_tool(self, parameter1: str, parameter2: int) -> Dict: # 实现 return {"result": "data"}
self.mcp.tool()(self.my_new_tool)### 未来改进
未来版本的潜在改进:
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。
看起来您想要翻译一份英文技术文档,但您提供的内容中只有"asd"这个字符串,并没有实际的文档内容。请提供需要翻译的具体英文技术文档文本,这样我才能帮助您进行准确的翻译。如果有特定部分或格式要求,请一并告知。
本项目是一个基于 Gradio 的健康参数计算器 Web 应用。用户只需输入性别、年龄、身高、体重等基础信息(必填),以及腰围、甘油三酯、HDL胆固醇等可选健康数据,即可一键计算出多项常用健康指标,包括 BMI、BSA、腰高比、CI、CMI、CVAI、LAP、BFR、RFM 等,并给出健康评估建议。
快递100 MCP Server提供快递信息查询、快递运费预估比价、快递时效查询(含发货前时效查询与在途动态时效查询)等功能。
网络基础数据,包括passivedns解析数据、域名和IP的注册信息、网站证书、IOC库的查询。 数据来源于奇安信X实验室被动收集的大网安全研究、威胁分析溯源和大规模多维度安全数据平台。
网络基础数据中和域名相关数据的查询工具。包括伴生域名、域名排名、域名网页数据、Libra基础数据平台的域名关联数据。
暂无描述。