Skip to main content
Glama
kegg_mvp_documentation.md4.23 kB
# KEGG Pathway Enrichment Analysis MVP ## 概述 本MVP实现了KEGG通路富集分析功能,用于识别基因列表在生物学通路中的富集情况。 ## 功能特性 - **KEGG API集成**: 连接KEGG数据库获取通路信息 - **统计分析**: 使用超几何分布检验计算p值 - **FDR校正**: 实现Benjamini-Hochberg假发现率校正 - **数据验证**: 完整的输入验证和错误处理 - **MCP工具集成**: 通过MCP框架提供服务 ## 使用方法 ### 1. 通过MCP工具使用 ```python from genome_mcp.core.tools import create_mcp_tools from fastmcp import FastMCP # 创建MCP实例 mcp = FastMCP('genome-analysis') # 注册工具 create_mcp_tools(mcp) ``` ### 2. 直接使用分析模块 ```python import asyncio from genome_mcp.analysis.kegg_analysis import KEGGEnrichment async def analyze_pathways(): # 创建KEGG分析器 analyzer = KEGGEnrichment() # 执行通路富集分析 async with analyzer: result = await analyzer.analyze_pathways( gene_list=['7157', '672', '675'], # TP53, BRCA1, BRCA2的Entrez ID organism='hsa', # 人类 pvalue_threshold=0.05, # p值阈值 min_gene_count=2 # 通路中最小基因数量 ) return result # 运行分析 result = asyncio.run(analyze_pathways()) ``` ### 3. 通过查询执行器使用 ```python import asyncio from genome_mcp.core.query_executor import QueryExecutor from genome_mcp.core.query_parser import QueryParser async def pathway_enrichment(): # 创建查询执行器 executor = QueryExecutor() # 解析查询 parsed = QueryParser.parse('pathway enrichment', query_type='pathway_enrichment') parsed.params.update({ 'gene_list': ['7157', '672', '675'], 'organism': 'hsa', 'pvalue_threshold': 0.05, 'min_gene_count': 2 }) # 执行查询 result = await executor.execute(parsed) return result['result'] result = asyncio.run(pathway_enrichment()) ``` ## 输入格式 ### 基因ID格式 - **推荐**: 使用Entrez Gene ID(数字格式),如 `7157` (TP53) - **支持**: 基因符号(需要转换为Entrez ID) - **示例**: `['7157', '672', '675']` 对应 `['TP53', 'BRCA1', 'BRCA2']` ### 生物体代码 - `hsa`: 人类 (Homo sapiens) - `mmu`: 小鼠 (Mus musculus) - `rno`: 大鼠 (Rattus norvegicus) ## 输出格式 ```python { "query_genes": ["7157", "672", "675"], "organism": "hsa", "total_pathways_found": 51, "significant_pathways": 15, "all_pathways": [ { "pathway_id": "hsa01522", "pathway_name": "Path: hsa01522", "genes": ["7157"], "gene_count": 1, "pvalue": 0.0001, "fdr": 0.0051, "fold_enrichment": 6666.67 } ], "analysis_info": { "method": "KEGG Pathway Enrichment", "statistical_test": "Hypergeometric Test", "fdr_correction": "Benjamini-Hochberg" } } ``` ## 统计方法 1. **超几何分布检验**: 计算基因在通路中富集的p值 2. **FDR校正**: 使用Benjamini-Hochberg方法进行多重检验校正 3. **富集倍数**: (观察到的基因数 / 期望的基因数) ## 测试 运行测试套件: ```bash python -m pytest tests/unit/test_kegg_mvp.py -v ``` 测试覆盖: - 基础通路富集分析 - KEGG客户端功能 - 统计计算正确性 - 输入验证 - 错误处理 ## API限制 - KEGG API有频率限制,建议间隔0.34秒以上 - 部分基因可能没有通路注释 - 通路信息基于KEGG数据库的当前版本 ## 故障排除 ### 常见问题 1. **"未找到任何通路映射"** - 检查基因ID格式,建议使用Entrez ID - 确认生物体代码正确 2. **"基因列表无效"** - 确保基因列表包含至少2个基因 - 检查基因ID格式是否正确 3. **网络连接问题** - 确认可以访问KEGG API (https://rest.kegg.jp/) - 检查网络连接状态 ## 依赖项 - `aiohttp`: HTTP客户端 - `fastmcp`: MCP框架 - `scipy`: 统计计算(可选,用于高级统计) ## 版本信息 - MVP版本: 1.0.0 - 实现日期: 2025-10-24 - 状态: 生产就绪

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/gqy20/genome-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server