MCP序列仿真服务器
MCP(模型上下文协议)服务器,用于使用各种进化模型和算法模拟DNA和氨基酸序列。该服务器为序列生成、突变模拟、进化建模和系统发育分析提供了强大的工具。
特性
🧬 DNA序列生成
- 随机DNA生成:生成具有指定GC内容的序列
- 马尔可夫链模型:上下文相关序列生成
- 密码子偏差生成:真实的蛋白质编码序列
- 可定制参数:长度、GC含量、种子可重复性
📊 FASTQ测序模拟
- NGS读取模拟:生成逼真的下一代测序读数
- 平台特定模型:Illumina、454、Ion Torrent和PacBio质量型号
- 配对端支持:单端和配对端测序读数
- 误差建模:可配置的排序错误率,具有真实的质量分数
- 覆盖控制:生成读取以实现指定的覆盖深度
- 基于NEAT:受已发布的NEAT方法启发的实施
🧭 蛋白质序列生成
- 随机蛋白质生成:氨基酸分布均匀
- 疏水偏置:膜蛋白样序列
- 易失序:内在无序的蛋白质序列
- 自定义组合:用户定义的氨基酸频率
🔬 序列突变
- 替代突变:具有转换/颠换偏倚的点突变
- 插入/删除事件:Indel突变
- 多次迭代:跟踪随时间的变化
- DNA和蛋白质:支持核苷酸和氨基酸序列
🌳 进化模拟
- 种群进化:模拟几代人的人口
- 选择压力:可配置的健身功能
- 血统追踪:遵循个人进化路径
- 适应度函数:GC含量、长度、疏水性目标
🌲 系统发育模拟
- 基于树的进化:在系统发育树上模拟序列
- 多种替代模型:JC69、K80、HKY85、GTR
- 分子钟:统一或可变的进化速率
- 多种输出格式:FASTA、NEXUS、PHYLIP
安装
npm install
npm run build用法
使用克劳德代码
./start-claude.sh手动配置
添加到您的Claude Code MCP配置中:
{
"mcpServers": {
"sequence-simulation": {
"command": "node",
"args": ["dist/server.js"],
"cwd": "/path/to/mcp-sequence-simulation"
}
}
}可用工具
1.生成DNA序列
使用各种模型生成随机DNA序列。
参数:
length(必填):序列长度gcContent(可选):GC含量比(0-1,默认值:0.5)count(可选):序列数(默认值:1)model(可选):“随机”、“马尔可夫”或“密码子偏置”seed(可选):随机种子用于再现outputFormat(可选):“fasta”或“plain”
例子:
{
"length": 1000,
"gcContent": 0.6,
"count": 5,
"model": "markov",
"outputFormat": "fasta"
}2.生成蛋白质序列
生成具有各种偏差的随机蛋白质序列。
参数:
length(必填):序列长度count(可选):序列数(默认值:1)model(可选):“随机”、“疏水性偏见”或“易患疾病”composition(可选):自定义氨基酸频率seed(可选):随机种子outputFormat(可选):“fasta”或“plain”
例子:
{
"length": 200,
"count": 3,
"model": "hydrophobic-bias",
"outputFormat": "fasta"
}3.模拟FASTQ文件
使用真实的质量分数和误差模型模拟FASTQ测序读数。
参数:
referenceSequence(必填):参考DNA序列以生成读取readLength(必填):每次测序读取的长度(50-300bp)coverage(必填):靶标测序覆盖深度(1-1000x)readType(可选):“单端”或“配对端”(默认:“单端相”)insertSize(可选):成对末端读取的平均插入大小(默认值:300)insertSizeStd(可选):插入尺寸的标准偏差(默认值:50)errorRate(可选):基本调用错误率0-0.1(默认值:0.01)qualityModel(可选):“发光体”、“454”、“离子洪流”或“pacbio”(默认:“发光”)mutationRate(可选):真突变率0-0.05(默认值:0.001)seed(可选):随机种子用于再现outputFormat(可选):“fastq”或“json”(默认值:“fastq”)
例子:
{
"referenceSequence": "ATCGATCGATCGATCGATCGATCGATCGATCGATCG",
"readLength": 150,
"coverage": 30,
"readType": "paired-end",
"errorRate": 0.01,
"qualityModel": "illumina"
}引用: 基于Stephens等人(2016)PLOS ONE 11(11):e0167047。
4.突变序列
将突变应用于现有序列。
参数:
sequence(必填):输入顺序sequenceType(必填):“dna”或“蛋白质”substitutionRate(可选):替代率(默认值:0.01)insertionRate(可选):插入率(默认值:0.001)deletionRate(可选):删除率(默认值:0.001)transitionBias(可选):DNA的转换与颠换偏倚(默认值:2.0)iterations(可选):变异轮数(默认值:1)seed(可选):随机种子outputFormat(可选):“fasta”或“plain”
例子:
{
"sequence": "ATGCGATCGATCG",
"sequenceType": "dna",
"substitutionRate": 0.02,
"iterations": 5,
"outputFormat": "fasta"
}5.进化顺序
模拟多代序列进化。
参数:
sequence(必填):启动顺序generations(必填):世代数populationSize(必填):人口规模mutationRate(必填):每代突变率selectionPressure(可选):选择强度(0-1)fitnessFunction(可选):“gc含量”、“长度”、“疏水性”或“自定义”targetValue(可选):健身功能的目标值trackLineages(可选):跟踪单个谱系seed(可选):随机种子outputFormat(可选):“摘要”、“详细”或“fasta”
例子:
{
"sequence": "ATGCGATCGATCG",
"generations": 100,
"populationSize": 50,
"mutationRate": 0.01,
"selectionPressure": 0.3,
"fitnessFunction": "gc-content",
"targetValue": 0.5,
"outputFormat": "detailed"
}6.模拟系统发育
在系统发育树上模拟序列进化。
参数:
rootSequence(必填):祖先序列treeStructure(可选):Newick格式树或“随机”numTaxa(可选):随机树的分类群数量(默认值:5)mutationRate(可选):每分支长度的突变率(默认值:0.1)branchLengthVariation(可选):分支长度变化(默认值:0.2)molecularClock(可选):使用分子钟(默认值:true)substitutionModel(可选):“JC69”、“K80”、“HKY85”或“GTR”seed(可选):随机种子outputFormat(可选):“fasta”、“nexus”或“phylip”
例子:
{
"rootSequence": "ATGCGATCGATCGATCG",
"numTaxa": 8,
"mutationRate": 0.05,
"substitutionModel": "K80",
"outputFormat": "nexus"
}输出格式
FASTA格式
标准FASTA格式,带有包含模拟参数的描述性标题。
统计
所有工具都提供详细的统计数据,包括:
- 序列组成分析
- 突变计数和类型
- 进化参数
- 系统发育树统计
专业格式
- 纽带:用于系统发育分析软件
- PHYLIP:用于系统发育分析
- 对象符号:具有完整模拟细节的结构化数据
用例
研究应用
- 分子进化研究:模拟不同模型下的序列演化
- 系统发育分析:生成具有已知进化历史的测试数据集
- 算法测试:为生物信息学工具创建基准数据集
- 教育目的:演示进化原理
生物信息学发展
- 算法验证:具有受控数据的测试序列分析工具
- 统计分析:为统计测试生成空分布
- 绩效基准测试:创建不同复杂度的数据集
- 方法比较:比较模拟数据和真实数据上的工具
技术细节
进化模型
- 朱克斯·坎托(JC69):同等替代率
- 木村2-参数(K80):转换/颠换偏见
- HKY85:具有过渡偏置的不相等基频
- GTR:一般时间可逆模型
序列生成
- 马尔可夫链:上下文相关的核苷酸选择
- 密码子使用偏好:真实的蛋白质编码序列
- 氨基酸性质:疏水性和紊乱倾向
突变模型
- 点突变:单核苷酸/氨基酸变化
- Indels:插入和删除事件
- 过渡偏差:真实的DNA突变模式
依赖项
- @模型上下文协议/sdk:MCP框架
- 动物圈:架构验证
- 打字稿:类型安全
- Node.js:运行时环境
贡献
该服务器为序列模拟提供了一个全面的框架。扩展可能包括:
- 其他替代模型
- 重组模拟
- 群体遗传学模型
- 结构约束
- 不同生物体的鳕鱼使用表
许可证
有关详细信息,请参阅LICENSE文件。
