蛋白质相互作用自动标记器

该项目利用大型语言模型(LLMs)自动分析蛋白质结构,识别链类型并生成定量标记,适用于T细胞受体(TCR)和肽-MHC(pMHC)复合物相互作用研究。

  • by coasir
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 coasir/automated-protein-interaction-labeler

使用说明

全自动蛋白质相互作用标记仪

该项目通过使用大型语言模型(LLM)进行自动结构注释,探索了一种更智能的蛋白质复合物分析方法。我们的服务器处理PDB文件中的蛋白质结构,支持T细胞受体(TCR)和肽-MHC(pMHC)复合物相互作用,以自动识别链类型并生成定量标记。通过优化提示策略,我们的管道有效地减轻了LLM幻觉,确保了高可靠性。

核心能力

  • 自动链识别:读取PDB文件中的标头进行链分类

  • 综合交互分析:

    • 氢键网络
    • 盐桥
    • 疏水作用力
    • π-π堆积相互作用
    • 接口SASA计算
    • 捆绑角度测量
  • 批处理:通过实时进度跟踪分析多个PDB文件

  • 数据完整性:数据收集过程中的内置验证

需求

  • Python 3.8+
  • PyMOL(带Python API)
  • 克劳德桌面
  • MCP(模型上下文协议)服务器框架
  • MCP服务器插件:pymol-MCP服务器、文件系统-MCP服务器

快速启动

安装

Pymol mcp服务器

有关更多详细信息和服务器,请单击此链接https://github.com/ChatMol/molecule-mcp

  1. 转到Claude>设置>开发人员>编辑配置>Claude_desktop_Config.json,以包含以下内容:
{
  "mcpServers": {
    "pymol": {
      "command": "/path/to/mcp",
      "args": [
        "run",
        "/path/to/molecule-mcp/pymol_server.py"
      ]
     }
  }
}
  1. 安装mcp并获取脚本
pip install "mcp[cli]" chatmol
which mcp

复制此路径以进行下一步,并将/path/to/mcp替换为mcp的路径。 4.获得分子mcp的路径。

git clone https://github.com/ChatMol/molecule-mcp.git
cd molecule-mcp
pwd

将显示分子mcp的路径。复制此路径以进行下一步,并将/path/to/molecule mcp替换为molecule mcp的路径。

文件系统mcp服务器

  1. 下载Node.jshttps://nodejs.org/zh-cn

2.使用npx安装并运行服务器 3.转到Claude>设置>开发人员>编辑配置>Claude_desktop_Config.json,包括以下内容:

Mac/linux

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/username/Desktop",
        "/Users/username/Downloads"
      ]
    }
  }
}

视窗

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "C:\\Users\\username\\Desktop",
        "C:\\Users\\username\\Downloads"
      ]
    }
  }
}

注意:在配置文件中,Windows必须使用\\

配置后记得重新启动Claude。

用法

  1. 使用本地值更新服务器配置中的文件路径。
  2. 将服务器插入Claude。
   "TCR-pMHC-Analyzer": {
      "command": "path to mcp",
      "args": ["path to TCR-pMHC-Analyze server"]}
  1. 输入PDB文件路径以开始处理。

用户输入界面

示例结果

输入PDB文件地址后,Claude将尝试连接到您的本地PyMOL软件,找到您的PDB文件,并将其加载到PyMOL中。读取标题中的信息后,它将开始识别链类型并生成定量标签。

操作流程截图

注意:如果你的PyMOL和Claude在成功安装PyMOL-mcp服务器后仍然无法正确连接,你可以尝试将以下代码复制到PyMOL的命令行中。

import threading
try:
    import xmlrpc.server
    from pymol import cmd
    def start_server():
        server = xmlrpc.server.SimpleXMLRPCServer(("localhost", 9123), allow_none=True)
        server.register_function(lambda x: cmd.do(x), 'do')
        server.register_function(cmd.get_names, 'get_names')
        print("Remote control server started on port 9123.")
        server.serve_forever()
    thread = threading.Thread(target=start_server)
    thread.daemon = True
    thread.start()
    print("Server thread has been started.")
except Exception as e:
    print("Error starting the server:", e)

整个操作完成后,将在您的桌面上生成一个CSV文件,Claude还将在界面中组织和显示一些数据结果。您可以交叉引用以下.txt文件和CSV表中的数据,以确保所有数据的真实性。

注意:请确保在操作过程中检查Claude是否正在将数据写入.txt文件。缺少.txt输出可能会导致CSV结果不可靠。

致谢

  • 西安交通大学夏季本科生研究金
  • SURF代码:SURF-2025-0465