Skip to main content

A simple CLI chatbot using the Model Context Protocol (MCP)

Project description

PyMOL-MCP: Integrating PyMOL with Claude AI

PyMOL-MCP connects PyMOL to Claude AI through the Model Context Protocol (MCP), enabling Claude to directly interact with and control PyMOL. This powerful integration allows for conversational structural biology, molecular visualization, and analysis through natural language.

https://github.com/user-attachments/assets/687f43dc-d45e-477e-ac2b-7438e175cb36

Features

  • Two-way communication: Connect Claude AI to PyMOL through a socket-based server
  • Intelligent command parsing: Natural language processing for PyMOL commands
  • Molecular visualization control: Manipulate representations, colors, and views
  • Structural analysis: Perform measurements, alignments, and other analyses
  • Code execution: Run arbitrary Python code in PyMOL from Claude

Installation Guide

Prerequisites

  • PyMOL installed on your system
  • Claude for Desktop
  • Python 3.10 or newer
  • Git

Step 1: Install the UV Package Manager

On macOS:

brew install uv

On Windows:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
set Path=C:\Users\[YourUsername]\.local\bin;%Path%

For other platforms, visit the UV installation guide.

Step 2: Clone the Repository

git clone https://github.com/vrtejus/pymol-mcp
cd pymol-mcp

Step 3: Set Up the Environment

Create and activate a Python virtual environment:

python -m venv venv

On macOS/Linux:

source venv/bin/activate

On Windows:

venv\Scripts\activate

Step 4: Install Dependencies

With the virtual environment activated:

pip install mcp

Step 5: Configure Claude Desktop

  1. Open Claude Desktop
  2. Go to Claude > Settings > Developer > Edit Config
  3. This will open the claude_desktop_config.json file
  4. Add the MCP server configuration:
{
  "mcpServers": {
    "pymol": {
      "command": "[Full path to your venv python]",
      "args": ["[Full path to pymol_mcp_server.py]"]
    }
  }
}

For example:

{
  "mcpServers": {
    "pymol": {
      "command": "/Users/username/pymol-mcp/venv/bin/python",
      "args": ["/Users/username/pymol-mcp/pymol_mcp_server.py"]
    }
  }
}

Note: Use the actual full paths on your system. On Windows, use forward slashes (/) instead of backslashes.

Step 6: Install the PyMOL Plugin

  1. Open PyMOL
  2. Go to Plugin → Plugin Manager
  3. Click on "Install New Plugin" tab
  4. Select "Choose file..." and navigate to the cloned repository
  5. Select the pymol-mcp-socket-plugin/__init__.py file
  6. Click "Open" and follow the prompts to install the plugin

Usage

Starting the Connection

  1. In PyMOL:

    • Go to Plugin → PyMOL MCP Socket Plugin
    • Click "Start Listening"
    • The status should change to "Listening on port 9876"
  2. In Claude Desktop:

    • You should see a hammer icon in the tools section when chatting
    • Click it to access the PyMOL tools

Example Commands

Here are some examples of what you can ask Claude to do:

  • "Load PDB 1UBQ and display it as cartoon"
  • "Color the protein by secondary structure"
  • "Highlight the active site residues with sticks representation"
  • "Align two structures and show their differences"
  • "Calculate the distance between these two residues"
  • "Save this view as a high-resolution image"

Troubleshooting

  • Connection issues: Make sure the PyMOL plugin is listening before attempting to connect from Claude
  • Command errors: Check the PyMOL output window for any error messages
  • Plugin not appearing: Restart PyMOL and check that the plugin was correctly installed
  • Claude not connecting: Verify the paths in your Claude configuration file are correct

Limitations & Notes

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_pymol_mcp-0.1.0.tar.gz (40.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iflow_mcp_pymol_mcp-0.1.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file iflow_mcp_pymol_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_pymol_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 40.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for iflow_mcp_pymol_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 beec54ade881a5d20353359eb0afb6eef6737375889e9096211e4df9948989eb
MD5 d23704055f053a5d440cef8a51b35235
BLAKE2b-256 3703bff6ef7e6cef38252ad1bfbd336fffcb416b8f5c3327592b33f1ce3e11d5

See more details on using hashes here.

File details

Details for the file iflow_mcp_pymol_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for iflow_mcp_pymol_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54fe8927ccedbe67ad6bafe0a738e9a60a31dee6cea6db3ca5324f53a5d0f363
MD5 17d36743d1d1490b826e3d6bc08beb3f
BLAKE2b-256 98a893dadb880455b41c06d0d20b1e2c116a2a4742d63a044af85ce2c6d21d30

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page