bionext-mcp


Namebionext-mcp JSON
Version 2.2.1 PyPI version JSON
download
home_pageNone
Summary🧬 生物信息学MCP服务器 - 专为ModelScope设计的智能生物数据分析工具
upload_time2025-08-31 07:53:15
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords mcp&agent挑战赛 bioinformatics genomics mcp modelscope proteomics python single-cell
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🧬 BioNext MCP Server - 智能生物信息学分析助手

[![PyPI version](https://badge.fury.io/py/bionext-mcp.svg)](https://badge.fury.io/py/bionext-mcp)
[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![MCP&Agent挑战赛](https://img.shields.io/badge/MCP%26Agent-挑战赛-red.svg)](https://modelscope.cn/mcp)

## 📋 项目简介

**BioNext MCP Server** 是一个专为 **MCP&Agent挑战赛** 设计的智能生物信息学分析助手,基于Model Context Protocol (MCP) 实现。该服务器使研究人员能够通过自然语言对话与AI助手进行复杂的生物数据分析,无需编程专业知识。

### 🎯 核心特性

- **🤖 智能工作流规划**: 自动分析用户需求并创建完整的生物信息学分析工作流
- **🔧 自动化脚本执行**: 自动检测Python环境,安装依赖包,执行分析脚本
- **📊 专业报告生成**: 生成美观的HTML执行报告,包含详细的执行统计和结果分析
- **🔄 工作流调试**: 提供完整的错误诊断和调试建议
- **🌐 多数据类型支持**: 支持单细胞RNA测序、基因表达、基因组学、蛋白质组学等

### 🧪 应用场景

- **单细胞RNA测序分析**: 细胞类型鉴定、差异表达分析、轨迹推断
- **基因表达分析**: 差异基因识别、功能富集分析、通路分析
- **基因组学分析**: 变异检测、结构变异分析、比较基因组学
- **蛋白质组学分析**: 蛋白质定量、修饰位点分析、互作网络构建

## 🚀 部署指南

### 环境要求

- **Python版本**: 3.8 或更高版本
- **操作系统**: Windows, macOS, Linux
- **内存**: 建议 4GB 以上
- **存储**: 建议 2GB 可用空间

### 安装方法

#### 方法1: 从PyPI安装(推荐)

```bash
# 使用pip安装
pip install bionext-mcp

# 或使用uv安装
uv add bionext-mcp
```

#### 方法2: 从源码安装

```bash
# 克隆仓库
git clone https://github.com/Cherine0205/BioNext-mcp.git
cd BioNext-mcp

# 安装依赖
pip install -r requirements.txt

# 安装包
pip install -e .
```

### MCP客户端配置

#### Cherry Studio 配置

```json
{
  "bionext-mcp": {
    "command": "python",
    "args": ["-m", "bionext_mcp"],
    "env": {
      "PROJECT_PATH": "./analysis"
    }
  }
}
```

#### 使用uvx运行(推荐)

```json
{
  "bionext-mcp": {
    "command": "uvx",
    "args": ["bionext-mcp"]
  }
}
```

### 本地测试

```bash
# 以模块运行
python -m bionext_mcp

# 或使用uvx
uvx bionext-mcp
```

## 💡 使用示例

### 示例1: 单细胞RNA测序分析

**用户请求**: "请帮我分析单细胞RNA测序数据,识别细胞类型并进行差异表达分析"

**MCP工具调用**:
```python
# 1. 分析任务
result = analyze_bioinformatics_task(
    user_request="单细胞RNA测序分析,识别细胞类型并进行差异表达分析",
    data_files=["scRNA_data.h5ad"],
    additional_context="数据包含10000个细胞,20000个基因"
)

# 2. 执行Claude生成的脚本
execution_result = execute_claude_script(
    claude_response="```python\nimport scanpy as sc\n# 分析代码...\n```",
    workflow_id="scRNA_analysis_001"
)
```

**输出结果**: 
- 自动生成的分析工作流
- 细胞类型聚类结果
- 差异表达基因列表
- 可视化图表
- 完整的HTML执行报告

### 示例2: 基因表达差异分析

**用户请求**: "比较对照组和实验组的基因表达差异,找出显著上调的基因"

**执行流程**:
1. 自动检测Python环境
2. 安装必要的包(pandas, numpy, scipy等)
3. 执行差异分析脚本
4. 生成火山图和热图
5. 输出差异基因列表

### 示例3: 工作流调试

当分析过程中遇到问题时:

```python
# 调试工作流
debug_info = debug_workflow(
    workflow_id="failed_workflow_123",
    error_context="脚本执行失败,提示模块导入错误"
)
```

**调试输出**:
- 工作流状态检查
- 错误文件分析
- 环境依赖验证
- 具体的解决建议

## 🔧 核心工具说明

### 1. analyze_bioinformatics_task
- **功能**: 分析用户需求并创建生物信息学工作流
- **输入**: 用户请求、数据文件列表、额外上下文
- **输出**: 工作流ID、分析计划、Claude提示

### 2. debug_workflow
- **功能**: 工作流调试和错误诊断
- **输入**: 工作流ID、错误上下文
- **输出**: 调试报告、问题诊断、解决建议

### 3. execute_claude_script
- **功能**: 自动执行Claude生成的Python脚本
- **输入**: Claude响应内容、工作流ID、执行上下文
- **输出**: 执行结果、HTML报告、错误信息

## 📊 执行报告示例

每次脚本执行后,系统会自动生成专业的HTML报告,包含:

- **执行统计**: 总脚本数、成功/失败数量、成功率
- **详细结果**: 每个脚本的输出、错误信息、执行状态
- **文件路径**: 生成的脚本文件和分析结果位置
- **下一步建议**: 基于执行结果的后续操作指导

## 🛠️ 开发信息

### 技术架构
- **MCP框架**: FastMCP
- **构建工具**: Hatchling
- **包管理**: pip/uv
- **报告生成**: HTML + CSS

### 依赖包
- **核心**: fastmcp>=0.1.0
- **兼容性**: pathlib2 (Python < 3.4)
- **构建**: hatchling

### 项目结构
```
bionext_mcp/
├── __init__.py          # 包初始化
├── __main__.py          # 入口点
├── my_server.py         # MCP服务器实现
└── dist/                # 构建产物
    ├── *.whl            # 轮子包
    └── *.tar.gz         # 源码包
```

## 🤝 贡献指南

我们欢迎社区贡献!如果您想参与项目开发:

1. Fork 本仓库
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 开启 Pull Request

## 📄 许可证

本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。

## 📞 支持与反馈

- **项目地址**: [https://github.com/Cherine0205/BioNext-mcp](https://github.com/Cherine0205/BioNext-mcp)
- **问题反馈**: [https://github.com/Cherine0205/BioNext-mcp/issues](https://github.com/Cherine0205/BioNext-mcp/issues)
- **PyPI包**: [https://pypi.org/project/bionext-mcp/](https://pypi.org/project/bionext-mcp/)
- **魔搭MCP广场**: [https://modelscope.cn/mcp](https://modelscope.cn/mcp)

## 🙏 致谢

感谢 **MCP&Agent挑战赛** 提供的平台和机会,让我们能够为生物信息学社区贡献这个智能分析工具。

---

**BioNext MCP Server** - 让生物信息学分析更智能、更简单!🧬✨

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "bionext-mcp",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "MCP&Agent\u6311\u6218\u8d5b, bioinformatics, genomics, mcp, modelscope, proteomics, python, single-cell",
    "author": null,
    "author_email": "BioNext Team <team@bionext.ai>",
    "download_url": "https://files.pythonhosted.org/packages/91/15/785ddc5f0ad59564a484c170e29ced2856814d75b93c6ee47467350cc51b/bionext_mcp-2.2.1.tar.gz",
    "platform": null,
    "description": "# \ud83e\uddec BioNext MCP Server - \u667a\u80fd\u751f\u7269\u4fe1\u606f\u5b66\u5206\u6790\u52a9\u624b\n\n[![PyPI version](https://badge.fury.io/py/bionext-mcp.svg)](https://badge.fury.io/py/bionext-mcp)\n[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![MCP&Agent\u6311\u6218\u8d5b](https://img.shields.io/badge/MCP%26Agent-\u6311\u6218\u8d5b-red.svg)](https://modelscope.cn/mcp)\n\n## \ud83d\udccb \u9879\u76ee\u7b80\u4ecb\n\n**BioNext MCP Server** \u662f\u4e00\u4e2a\u4e13\u4e3a **MCP&Agent\u6311\u6218\u8d5b** \u8bbe\u8ba1\u7684\u667a\u80fd\u751f\u7269\u4fe1\u606f\u5b66\u5206\u6790\u52a9\u624b\uff0c\u57fa\u4e8eModel Context Protocol (MCP) \u5b9e\u73b0\u3002\u8be5\u670d\u52a1\u5668\u4f7f\u7814\u7a76\u4eba\u5458\u80fd\u591f\u901a\u8fc7\u81ea\u7136\u8bed\u8a00\u5bf9\u8bdd\u4e0eAI\u52a9\u624b\u8fdb\u884c\u590d\u6742\u7684\u751f\u7269\u6570\u636e\u5206\u6790\uff0c\u65e0\u9700\u7f16\u7a0b\u4e13\u4e1a\u77e5\u8bc6\u3002\n\n### \ud83c\udfaf \u6838\u5fc3\u7279\u6027\n\n- **\ud83e\udd16 \u667a\u80fd\u5de5\u4f5c\u6d41\u89c4\u5212**: \u81ea\u52a8\u5206\u6790\u7528\u6237\u9700\u6c42\u5e76\u521b\u5efa\u5b8c\u6574\u7684\u751f\u7269\u4fe1\u606f\u5b66\u5206\u6790\u5de5\u4f5c\u6d41\n- **\ud83d\udd27 \u81ea\u52a8\u5316\u811a\u672c\u6267\u884c**: \u81ea\u52a8\u68c0\u6d4bPython\u73af\u5883\uff0c\u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u6267\u884c\u5206\u6790\u811a\u672c\n- **\ud83d\udcca \u4e13\u4e1a\u62a5\u544a\u751f\u6210**: \u751f\u6210\u7f8e\u89c2\u7684HTML\u6267\u884c\u62a5\u544a\uff0c\u5305\u542b\u8be6\u7ec6\u7684\u6267\u884c\u7edf\u8ba1\u548c\u7ed3\u679c\u5206\u6790\n- **\ud83d\udd04 \u5de5\u4f5c\u6d41\u8c03\u8bd5**: \u63d0\u4f9b\u5b8c\u6574\u7684\u9519\u8bef\u8bca\u65ad\u548c\u8c03\u8bd5\u5efa\u8bae\n- **\ud83c\udf10 \u591a\u6570\u636e\u7c7b\u578b\u652f\u6301**: \u652f\u6301\u5355\u7ec6\u80deRNA\u6d4b\u5e8f\u3001\u57fa\u56e0\u8868\u8fbe\u3001\u57fa\u56e0\u7ec4\u5b66\u3001\u86cb\u767d\u8d28\u7ec4\u5b66\u7b49\n\n### \ud83e\uddea \u5e94\u7528\u573a\u666f\n\n- **\u5355\u7ec6\u80deRNA\u6d4b\u5e8f\u5206\u6790**: \u7ec6\u80de\u7c7b\u578b\u9274\u5b9a\u3001\u5dee\u5f02\u8868\u8fbe\u5206\u6790\u3001\u8f68\u8ff9\u63a8\u65ad\n- **\u57fa\u56e0\u8868\u8fbe\u5206\u6790**: \u5dee\u5f02\u57fa\u56e0\u8bc6\u522b\u3001\u529f\u80fd\u5bcc\u96c6\u5206\u6790\u3001\u901a\u8def\u5206\u6790\n- **\u57fa\u56e0\u7ec4\u5b66\u5206\u6790**: \u53d8\u5f02\u68c0\u6d4b\u3001\u7ed3\u6784\u53d8\u5f02\u5206\u6790\u3001\u6bd4\u8f83\u57fa\u56e0\u7ec4\u5b66\n- **\u86cb\u767d\u8d28\u7ec4\u5b66\u5206\u6790**: \u86cb\u767d\u8d28\u5b9a\u91cf\u3001\u4fee\u9970\u4f4d\u70b9\u5206\u6790\u3001\u4e92\u4f5c\u7f51\u7edc\u6784\u5efa\n\n## \ud83d\ude80 \u90e8\u7f72\u6307\u5357\n\n### \u73af\u5883\u8981\u6c42\n\n- **Python\u7248\u672c**: 3.8 \u6216\u66f4\u9ad8\u7248\u672c\n- **\u64cd\u4f5c\u7cfb\u7edf**: Windows, macOS, Linux\n- **\u5185\u5b58**: \u5efa\u8bae 4GB \u4ee5\u4e0a\n- **\u5b58\u50a8**: \u5efa\u8bae 2GB \u53ef\u7528\u7a7a\u95f4\n\n### \u5b89\u88c5\u65b9\u6cd5\n\n#### \u65b9\u6cd51: \u4ecePyPI\u5b89\u88c5\uff08\u63a8\u8350\uff09\n\n```bash\n# \u4f7f\u7528pip\u5b89\u88c5\npip install bionext-mcp\n\n# \u6216\u4f7f\u7528uv\u5b89\u88c5\nuv add bionext-mcp\n```\n\n#### \u65b9\u6cd52: \u4ece\u6e90\u7801\u5b89\u88c5\n\n```bash\n# \u514b\u9686\u4ed3\u5e93\ngit clone https://github.com/Cherine0205/BioNext-mcp.git\ncd BioNext-mcp\n\n# \u5b89\u88c5\u4f9d\u8d56\npip install -r requirements.txt\n\n# \u5b89\u88c5\u5305\npip install -e .\n```\n\n### MCP\u5ba2\u6237\u7aef\u914d\u7f6e\n\n#### Cherry Studio \u914d\u7f6e\n\n```json\n{\n  \"bionext-mcp\": {\n    \"command\": \"python\",\n    \"args\": [\"-m\", \"bionext_mcp\"],\n    \"env\": {\n      \"PROJECT_PATH\": \"./analysis\"\n    }\n  }\n}\n```\n\n#### \u4f7f\u7528uvx\u8fd0\u884c\uff08\u63a8\u8350\uff09\n\n```json\n{\n  \"bionext-mcp\": {\n    \"command\": \"uvx\",\n    \"args\": [\"bionext-mcp\"]\n  }\n}\n```\n\n### \u672c\u5730\u6d4b\u8bd5\n\n```bash\n# \u4ee5\u6a21\u5757\u8fd0\u884c\npython -m bionext_mcp\n\n# \u6216\u4f7f\u7528uvx\nuvx bionext-mcp\n```\n\n## \ud83d\udca1 \u4f7f\u7528\u793a\u4f8b\n\n### \u793a\u4f8b1: \u5355\u7ec6\u80deRNA\u6d4b\u5e8f\u5206\u6790\n\n**\u7528\u6237\u8bf7\u6c42**: \"\u8bf7\u5e2e\u6211\u5206\u6790\u5355\u7ec6\u80deRNA\u6d4b\u5e8f\u6570\u636e\uff0c\u8bc6\u522b\u7ec6\u80de\u7c7b\u578b\u5e76\u8fdb\u884c\u5dee\u5f02\u8868\u8fbe\u5206\u6790\"\n\n**MCP\u5de5\u5177\u8c03\u7528**:\n```python\n# 1. \u5206\u6790\u4efb\u52a1\nresult = analyze_bioinformatics_task(\n    user_request=\"\u5355\u7ec6\u80deRNA\u6d4b\u5e8f\u5206\u6790\uff0c\u8bc6\u522b\u7ec6\u80de\u7c7b\u578b\u5e76\u8fdb\u884c\u5dee\u5f02\u8868\u8fbe\u5206\u6790\",\n    data_files=[\"scRNA_data.h5ad\"],\n    additional_context=\"\u6570\u636e\u5305\u542b10000\u4e2a\u7ec6\u80de\uff0c20000\u4e2a\u57fa\u56e0\"\n)\n\n# 2. \u6267\u884cClaude\u751f\u6210\u7684\u811a\u672c\nexecution_result = execute_claude_script(\n    claude_response=\"```python\\nimport scanpy as sc\\n# \u5206\u6790\u4ee3\u7801...\\n```\",\n    workflow_id=\"scRNA_analysis_001\"\n)\n```\n\n**\u8f93\u51fa\u7ed3\u679c**: \n- \u81ea\u52a8\u751f\u6210\u7684\u5206\u6790\u5de5\u4f5c\u6d41\n- \u7ec6\u80de\u7c7b\u578b\u805a\u7c7b\u7ed3\u679c\n- \u5dee\u5f02\u8868\u8fbe\u57fa\u56e0\u5217\u8868\n- \u53ef\u89c6\u5316\u56fe\u8868\n- \u5b8c\u6574\u7684HTML\u6267\u884c\u62a5\u544a\n\n### \u793a\u4f8b2: \u57fa\u56e0\u8868\u8fbe\u5dee\u5f02\u5206\u6790\n\n**\u7528\u6237\u8bf7\u6c42**: \"\u6bd4\u8f83\u5bf9\u7167\u7ec4\u548c\u5b9e\u9a8c\u7ec4\u7684\u57fa\u56e0\u8868\u8fbe\u5dee\u5f02\uff0c\u627e\u51fa\u663e\u8457\u4e0a\u8c03\u7684\u57fa\u56e0\"\n\n**\u6267\u884c\u6d41\u7a0b**:\n1. \u81ea\u52a8\u68c0\u6d4bPython\u73af\u5883\n2. \u5b89\u88c5\u5fc5\u8981\u7684\u5305\uff08pandas, numpy, scipy\u7b49\uff09\n3. \u6267\u884c\u5dee\u5f02\u5206\u6790\u811a\u672c\n4. \u751f\u6210\u706b\u5c71\u56fe\u548c\u70ed\u56fe\n5. \u8f93\u51fa\u5dee\u5f02\u57fa\u56e0\u5217\u8868\n\n### \u793a\u4f8b3: \u5de5\u4f5c\u6d41\u8c03\u8bd5\n\n\u5f53\u5206\u6790\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\u65f6\uff1a\n\n```python\n# \u8c03\u8bd5\u5de5\u4f5c\u6d41\ndebug_info = debug_workflow(\n    workflow_id=\"failed_workflow_123\",\n    error_context=\"\u811a\u672c\u6267\u884c\u5931\u8d25\uff0c\u63d0\u793a\u6a21\u5757\u5bfc\u5165\u9519\u8bef\"\n)\n```\n\n**\u8c03\u8bd5\u8f93\u51fa**:\n- \u5de5\u4f5c\u6d41\u72b6\u6001\u68c0\u67e5\n- \u9519\u8bef\u6587\u4ef6\u5206\u6790\n- \u73af\u5883\u4f9d\u8d56\u9a8c\u8bc1\n- \u5177\u4f53\u7684\u89e3\u51b3\u5efa\u8bae\n\n## \ud83d\udd27 \u6838\u5fc3\u5de5\u5177\u8bf4\u660e\n\n### 1. analyze_bioinformatics_task\n- **\u529f\u80fd**: \u5206\u6790\u7528\u6237\u9700\u6c42\u5e76\u521b\u5efa\u751f\u7269\u4fe1\u606f\u5b66\u5de5\u4f5c\u6d41\n- **\u8f93\u5165**: \u7528\u6237\u8bf7\u6c42\u3001\u6570\u636e\u6587\u4ef6\u5217\u8868\u3001\u989d\u5916\u4e0a\u4e0b\u6587\n- **\u8f93\u51fa**: \u5de5\u4f5c\u6d41ID\u3001\u5206\u6790\u8ba1\u5212\u3001Claude\u63d0\u793a\n\n### 2. debug_workflow\n- **\u529f\u80fd**: \u5de5\u4f5c\u6d41\u8c03\u8bd5\u548c\u9519\u8bef\u8bca\u65ad\n- **\u8f93\u5165**: \u5de5\u4f5c\u6d41ID\u3001\u9519\u8bef\u4e0a\u4e0b\u6587\n- **\u8f93\u51fa**: \u8c03\u8bd5\u62a5\u544a\u3001\u95ee\u9898\u8bca\u65ad\u3001\u89e3\u51b3\u5efa\u8bae\n\n### 3. execute_claude_script\n- **\u529f\u80fd**: \u81ea\u52a8\u6267\u884cClaude\u751f\u6210\u7684Python\u811a\u672c\n- **\u8f93\u5165**: Claude\u54cd\u5e94\u5185\u5bb9\u3001\u5de5\u4f5c\u6d41ID\u3001\u6267\u884c\u4e0a\u4e0b\u6587\n- **\u8f93\u51fa**: \u6267\u884c\u7ed3\u679c\u3001HTML\u62a5\u544a\u3001\u9519\u8bef\u4fe1\u606f\n\n## \ud83d\udcca \u6267\u884c\u62a5\u544a\u793a\u4f8b\n\n\u6bcf\u6b21\u811a\u672c\u6267\u884c\u540e\uff0c\u7cfb\u7edf\u4f1a\u81ea\u52a8\u751f\u6210\u4e13\u4e1a\u7684HTML\u62a5\u544a\uff0c\u5305\u542b\uff1a\n\n- **\u6267\u884c\u7edf\u8ba1**: \u603b\u811a\u672c\u6570\u3001\u6210\u529f/\u5931\u8d25\u6570\u91cf\u3001\u6210\u529f\u7387\n- **\u8be6\u7ec6\u7ed3\u679c**: \u6bcf\u4e2a\u811a\u672c\u7684\u8f93\u51fa\u3001\u9519\u8bef\u4fe1\u606f\u3001\u6267\u884c\u72b6\u6001\n- **\u6587\u4ef6\u8def\u5f84**: \u751f\u6210\u7684\u811a\u672c\u6587\u4ef6\u548c\u5206\u6790\u7ed3\u679c\u4f4d\u7f6e\n- **\u4e0b\u4e00\u6b65\u5efa\u8bae**: \u57fa\u4e8e\u6267\u884c\u7ed3\u679c\u7684\u540e\u7eed\u64cd\u4f5c\u6307\u5bfc\n\n## \ud83d\udee0\ufe0f \u5f00\u53d1\u4fe1\u606f\n\n### \u6280\u672f\u67b6\u6784\n- **MCP\u6846\u67b6**: FastMCP\n- **\u6784\u5efa\u5de5\u5177**: Hatchling\n- **\u5305\u7ba1\u7406**: pip/uv\n- **\u62a5\u544a\u751f\u6210**: HTML + CSS\n\n### \u4f9d\u8d56\u5305\n- **\u6838\u5fc3**: fastmcp>=0.1.0\n- **\u517c\u5bb9\u6027**: pathlib2 (Python < 3.4)\n- **\u6784\u5efa**: hatchling\n\n### \u9879\u76ee\u7ed3\u6784\n```\nbionext_mcp/\n\u251c\u2500\u2500 __init__.py          # \u5305\u521d\u59cb\u5316\n\u251c\u2500\u2500 __main__.py          # \u5165\u53e3\u70b9\n\u251c\u2500\u2500 my_server.py         # MCP\u670d\u52a1\u5668\u5b9e\u73b0\n\u2514\u2500\u2500 dist/                # \u6784\u5efa\u4ea7\u7269\n    \u251c\u2500\u2500 *.whl            # \u8f6e\u5b50\u5305\n    \u2514\u2500\u2500 *.tar.gz         # \u6e90\u7801\u5305\n```\n\n## \ud83e\udd1d \u8d21\u732e\u6307\u5357\n\n\u6211\u4eec\u6b22\u8fce\u793e\u533a\u8d21\u732e\uff01\u5982\u679c\u60a8\u60f3\u53c2\u4e0e\u9879\u76ee\u5f00\u53d1\uff1a\n\n1. Fork \u672c\u4ed3\u5e93\n2. \u521b\u5efa\u7279\u6027\u5206\u652f (`git checkout -b feature/AmazingFeature`)\n3. \u63d0\u4ea4\u66f4\u6539 (`git commit -m 'Add some AmazingFeature'`)\n4. \u63a8\u9001\u5230\u5206\u652f (`git push origin feature/AmazingFeature`)\n5. \u5f00\u542f Pull Request\n\n## \ud83d\udcc4 \u8bb8\u53ef\u8bc1\n\n\u672c\u9879\u76ee\u91c7\u7528 MIT \u8bb8\u53ef\u8bc1 - \u67e5\u770b [LICENSE](LICENSE) \u6587\u4ef6\u4e86\u89e3\u8be6\u60c5\u3002\n\n## \ud83d\udcde \u652f\u6301\u4e0e\u53cd\u9988\n\n- **\u9879\u76ee\u5730\u5740**: [https://github.com/Cherine0205/BioNext-mcp](https://github.com/Cherine0205/BioNext-mcp)\n- **\u95ee\u9898\u53cd\u9988**: [https://github.com/Cherine0205/BioNext-mcp/issues](https://github.com/Cherine0205/BioNext-mcp/issues)\n- **PyPI\u5305**: [https://pypi.org/project/bionext-mcp/](https://pypi.org/project/bionext-mcp/)\n- **\u9b54\u642dMCP\u5e7f\u573a**: [https://modelscope.cn/mcp](https://modelscope.cn/mcp)\n\n## \ud83d\ude4f \u81f4\u8c22\n\n\u611f\u8c22 **MCP&Agent\u6311\u6218\u8d5b** \u63d0\u4f9b\u7684\u5e73\u53f0\u548c\u673a\u4f1a\uff0c\u8ba9\u6211\u4eec\u80fd\u591f\u4e3a\u751f\u7269\u4fe1\u606f\u5b66\u793e\u533a\u8d21\u732e\u8fd9\u4e2a\u667a\u80fd\u5206\u6790\u5de5\u5177\u3002\n\n---\n\n**BioNext MCP Server** - \u8ba9\u751f\u7269\u4fe1\u606f\u5b66\u5206\u6790\u66f4\u667a\u80fd\u3001\u66f4\u7b80\u5355\uff01\ud83e\uddec\u2728\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "\ud83e\uddec \u751f\u7269\u4fe1\u606f\u5b66MCP\u670d\u52a1\u5668 - \u4e13\u4e3aModelScope\u8bbe\u8ba1\u7684\u667a\u80fd\u751f\u7269\u6570\u636e\u5206\u6790\u5de5\u5177",
    "version": "2.2.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/Cherine0205/BioNext-mcp/issues",
        "Documentation": "https://github.com/Cherine0205/BioNext-mcp#readme",
        "Homepage": "https://github.com/Cherine0205/BioNext-mcp",
        "Repository": "https://github.com/Cherine0205/BioNext-mcp.git"
    },
    "split_keywords": [
        "mcp&agent\u6311\u6218\u8d5b",
        " bioinformatics",
        " genomics",
        " mcp",
        " modelscope",
        " proteomics",
        " python",
        " single-cell"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7cf7c6f3ac798a4b61f2e7fdc979ad6b69228d697e6943208faa1490a61a0dbd",
                "md5": "499c8437d18db930a2f3a488c0cd3dab",
                "sha256": "6b892b8c6e32b506d544e050cfbec1e213ba9b6d39e4fc5474ac0dcaee20e9e0"
            },
            "downloads": -1,
            "filename": "bionext_mcp-2.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "499c8437d18db930a2f3a488c0cd3dab",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 14276,
            "upload_time": "2025-08-31T07:53:14",
            "upload_time_iso_8601": "2025-08-31T07:53:14.499734Z",
            "url": "https://files.pythonhosted.org/packages/7c/f7/c6f3ac798a4b61f2e7fdc979ad6b69228d697e6943208faa1490a61a0dbd/bionext_mcp-2.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9115785ddc5f0ad59564a484c170e29ced2856814d75b93c6ee47467350cc51b",
                "md5": "78a8e9ebcf4d98dc3e7771214224d3ba",
                "sha256": "a3f906a9a5ba731a594302864942a8d6ec8980d034d296a9a0ae656940bce084"
            },
            "downloads": -1,
            "filename": "bionext_mcp-2.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "78a8e9ebcf4d98dc3e7771214224d3ba",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 13422,
            "upload_time": "2025-08-31T07:53:15",
            "upload_time_iso_8601": "2025-08-31T07:53:15.740716Z",
            "url": "https://files.pythonhosted.org/packages/91/15/785ddc5f0ad59564a484c170e29ced2856814d75b93c6ee47467350cc51b/bionext_mcp-2.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-31 07:53:15",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Cherine0205",
    "github_project": "BioNext-mcp",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "bionext-mcp"
}
        
Elapsed time: 0.62417s