we have pymol at home.
pymol at home:
01 the what
pylot is a pymol plugin that lets you use pymol through claude code and cursor agents.
it turns PyMOL into an MCP server so you can drive PyMOL in English from any MCP client like Claude Code or Cursor, instead of typing PyMOL commands by hand. on startup, it spins up an MCP server β built on the official MCP Python SDK β inside PyMOLβs own Python process, exposing the pymol.cmd API as tools.
thereβs also a gemmi-backed metrics layer that can parse mmCIF e.g. if you want to read confidence values (pLDDT/ipTM/pTM/PAE). you can also drop in your own .py of custom PyMOL presets / analysis helpers and ask the agent to use them, and work over SSHFS-mounted cluster paths as usual. and since it runs through Claude Code you get any Claude capabilities here too β remote-control from the mobile app, etc.
02 the why
03 installing
the full codebase is on GitHub. read installation instructions either here or below.
fyi - this repo is an active WIP! itβs scary in there.
note: this has only been tested on macOS :/
1. clone and install
git clone https://github.com/soo-jeongkim/pymol-claude.git
cd pymol-claude
/Applications/PyMOL.app/Contents/bin/python -m pip install --user -e .2. hook the plugin into PyMOL startup
/Applications/PyMOL.app/Contents/bin/python -m pymol_claude.cli install-hookappends one line to ~/.pymolrc.py so PyMOL loads the plugin on launch. safe to re-run.
3. restart PyMOL
the console should print:
pylot: MCP server running on http://127.0.0.1:8766/sseif you donβt see that line, ~/.pymolrc.py isnβt being loaded. the file must be in your home directory (echo $HOME to check), and you need a full PyMOL quit + relaunch, not a window close.
4. wire up your MCP client
both setups are global β every Cursor window or Claude Code session sees the pymol server, no need to cd into this repo.
β cursor
/Applications/PyMOL.app/Contents/bin/python -m pymol_claude.cli install-configwrites/merges ~/.cursor/mcp.json. fully quit Cursor (Cmd+Q, not just close the window) and reopen; verify under Settings β Cursor Settings β MCP that pymol is listed.
β claude code
claude mcp add --transport sse --scope user pymol http://localhost:8766/sseworks from any directory. claude mcp list should show pymol.
once correct plumbing is verified, you need to open PyMOL first then a new Cursor window / Claude Code session.
04 experimenting!
click here to download a few sample CIF files you can play with.
what you are downloading:
pizza-and-pymol/ 13 MB
βββ data/
βββ af3_predicts_pizza/
β βββ fold_*_model_0.cif β¦ model_4.cif
β βββ confidence JSONs, MSAs, templates
βββ antibodies/
β βββ 1IGT.cif
β βββ 6XEY.cif
β βββ 6XRJ.cif
βββ multi_domain/
βββ 1AKE.cif
βββ 7OP8.cif