Problem:

Protein design sits at the center of modern medicine — cancer immunotherapy, gene editing, next-generation antibodies all depend on it. It's also one of AI's fastest-growing applications: the U.S. AI protein design market is already valued around $420 million and projected to grow to $6–15 billion globally by 2030, accelerated by breakthroughs like AlphaFold. But the tooling hasn't kept pace. PyMOL is the de facto standard everyone in structural biology uses to visually inspect and analyze proteins, yet it requires memorizing dozens of terse text commands where even small mistakes (color red, chain A vs. chain A, color red) break the command. Working scientists lose real time every day looking up syntax, manually inspecting designs for errors, and cross-checking outputs by hand — time that should go toward the actual science.

Our solution:

NovoProteinAI lets you control PyMOL using plain English instead of memorized commands, so you can move from question to answer fluidly instead of wasting hours on syntax-wrangling. You type something like "highlight the binding interface between chain A and chain B" or "show me the epitope this antibody is targeting" — and an AI agent does the rest. It interprets your request, pulls in relevant research from scientific papers that would’ve required a large investment in time, and runs the correct sequence of PyMOL commands to generate the visualization instantly. It also acts as an automated QC and analysis layer. It checks that what you designed is what actually came out, for example verifying the design is the right format (antibody, nanobody, scFv) and confirming it's actually targeting the epitope you specified. This catches mismatches before they cost you a wasted design cycle. It can compare multiple design outputs side by side, flagging clashes, measuring interface size, and scoring quality, with a plain-language readout of what each metric means so you can make a faster call on which design to move forward with. This isn't a simplified or training-wheels version of the tool — it's the same PyMOL power, accessed faster, with automated checks layered on top that catch errors a human might miss on a manual pass. The result: less time fighting tool syntax and manually inspecting structures, more time iterating on designs — more designs reviewed per day, fewer costly mistakes carried forward.

Architecture

Architecture

How we built it:

  • Fetch.ai uAgents — agent lives on Agentverse, reachable by anyone on the network via the ACP Chat Protocol (UI)
  • PyMOL MCP Bridge — FastMCP server over stdio bridges the agent to a TCP plugin running inside PyMOL, enabling real-time command execution
  • Claude Code — Vibe-coding Tools, LLM for understanding the user input from Agentverse
  • Redis — the key to understanding research papers, whether they are uploaded by the user or found by the AI Agent, is implemented with a RAG pipeline utilizing Redis’ Vector Database
  • Cognition (Devin) — The hero to our vibe-coding journey
  • RunPod — for deploying the virtual machine hosting PyMOL

Challenges we ran into:

Agentverse:

  • ACP Chat Protocol has two layers — uAgents messaging and the Agentverse Chat Protocol are separate. Every message needs an acknowledgement first, and replies must use TextContent — miss either and Agentverse silently drops the message.
  • Agentverse needs 10 interactions before the agent goes live — wrote trigger_interactions.py to send test messages automatically, which also worked as a smoke test.
  • Public URL breaks when ngrok restarts — every new ngrok URL means re-running register_agent.py. No auto-update. Chat protocol compliant — other agents and users can interact via standard UI Regex parser broke on natural word order: color red, chain A vs. chain A, color red is the same but when i send to PyMOL MCP, it is the same so that I use

Redis:

  • We had some connection issues with Redis Cloud, so we decided to pivot to a local Redis vector database. This removed the wifi connection variable, which could have impacted our ability to connect to the cloud consistently.
  • Ensuring that the embeddings did not split vital information between two chunks was another challenge. To address this issue, we implemented a regex and semantic chunking to ensure that the content of each chunk was split at logical points in the text.
  • We wanted to have both the context of the chunk and the PDB ID (which is the code that refers to a specific protein structure). We separated this process into two steps: run Redis’ vector search that uses cosine similarity to retrieve a relevant chunk, and then use that chunk’s paper ID to locate the PDB ID in the paper.

Accomplishments that we're proud of:

  • Bridging interdisciplinary skills together to create a working product.
  • Enabling non-biologist to load, color, and render a real protein structure in under 30 seconds with zero biology knowledge
  • Implement a complete, working RAG-pipeline
  • Implement an MCP server for PyMOL that our AI Agent can connect to

What we learned:

  • MCP is a clean abstraction layer between AI and tools, the agent never needs to know how PyMOL works internally.
  • Fetch.ai's agent network changes what "deployed" means: once the agent is on Agentverse, anyone on the network can reach it without any client setup, API keys, or SDKs on their end. Distribution is built into the infrastructure.
  • Vibe-coding tools like Claude Code or Devin is real but require direction from the user, user now is like a product designer, thinking more about the product than normal coding
  • Scope fast, cut faster — a hackathon forces you to decide what's core and what's nice-to-have within hours.

The hardest part isn't the code — it's the integration between systems. Each piece worked in isolation. Getting them to talk to each other reliably was where most time went.

What's next for NovoProteinAI:

We want to continue this path of making protein-design accessible to the general public, much like how vibe-coding is starting to become more and more accessible. Currently, we have the research and visualization parts of the protein development process built. We intend to continue to add tools and features like incorporating the RFDiffusion model and protein ESMFold to give user the end-to-end experience of protein development.

Built With

Share this project:

Updates