Inspiration

Life sciences labs sell services to other labs. One of those services is the endotoxin detection assay. An assay is a test. Endotoxin is a molecule from bacteria that can cause fevers in humans and other animals. Labs producing a product like a vaccine or a protein want to ensure their product is free of endotoxin. Detecting endotoxin is a routine, well-known biochemical assay that uses horseshoe crab blood or a protein from horseshoe crab blood.

The problem is that this simple test is encumbered with difficulty. 1) A researcher who wishes an endotoxin test must search online for a provider. 2) The researcher "reaches out" through a site request form or by email or by phone calling another human. 3) The researcher and provider discuss terms: how many samples, how often, customization, etc. 4) The providers gets back in a few days with a quote. 5) The researcher agrees to the quote, signs it, sends it back. 6) The researcher prepares the samples and mails them 7) Samples are received and processed, usually 3-5 business days. 8) Provider sends email saying samples have arrived and are being processed. 9) Results are sent, usually by email, in a pdf. Fancy provider labs have the researchers create an account and sign in to download a pdf. 10) Researcher combs through 5-8 pages of lot numbers and temperature settings to find the 3 or 5 datapoints that are actionable, i.e. "Endotoxin < 0.05 EU/mL".

I want to condense the above steps to one step: A researcher uses their lab notebook to order an endotoxin test.

And then I want every lab in the world to join us.

Every lab selling their specialized assay order-able, update-able and interpretable with webMCP-enabled sites.

This is the Federated Cloud Laboratory Network.

Materials Needed

1) chatGPT desktop with browser and webMCP enabled. 2) Obsidian, https://obsidian.md/ 3) Obisidian plugin, "ClearSignal Lab Assistant", https://github.com/har1eyk/clearsignal-lab-assistant 4) Lab notebook page for testing (any markdown file will do!) 5) ClearSignal access, https://clearsignal-gray.vercel.app/ 1) user: [email protected] 2) pass: horseshoe

What it does

A researcher keeps a lab notebook in a markdown file. A markdown viewer like Obsidian is used. Obsidian can use plugins for beyond-markdown functionality.

I created a plugin that allows a researcher to call for an endotoxin assay test from their lab notebook using three backticks.

After the backticks, "clearsignal" is typed and a researcher can request: Order an endotoxin assay on two samples if the price is less than <$500. The sample IDs are: "ID-0001 and ID-0002". Then, the plugin begins a session with chatGPT's browser and the ClearSignal site. The webMCP-enabled site can easily find the endotoxin-per-sample-cost and report it. The quote is provided to the lab researcher in their notebook! Additionally, the researcher can also ask questions in their original prompt like: Can I send in plasmid samples? (Plasmids are circular pieces of DNA purified from bacteria.) The webMCP-enabled site answers it directly from the FAQ. No hunting and clicking for the page and the question. Save those tokens with webMCP.

Lastly, the researcher's samples are loaded and the price is visible. The final "submit" creates the order. Order information is transmitted to the lab notebook. Status updates are also provided.

In this demo version, status updates occur every few seconds. In real testing conditions, the status updates occur every few days. I like that when the testing is "complete", that endotoxin concentration and standard curve data is sent to the lab notebook so the researcher can take actionable next steps.

Table 1: Time Savings with WebMCP-enabled ClearSignal Site

With WebMCP Without WebMCP
Calls quote_endotoxin_tests with two sample IDs Has to navigate forms, locate fields, type IDs, submit, and inspect the rendered result
Receives exact fields such as unit_price: 375 and total: 750 Extracts prices from page text and infers which numbers represent unit price and total
Automatically returns structured events to the Obsidian note Require a separate copy/paste or integration workflow

How we built it

1) Building landing page. Paper and ChatGPT desktop 2) Build backend (postgres, Supabase) 3) Create login page 1) successful via chatGPT sites 2) successful via localhost 4) Create user dashboard or login landing page 5) Create order page, make it webMCP enabled 1) Human successfully order via chatGPT site? 2) Human successfully order via localhost? 3) Bot successfully order via chatGPT site? 1. Logged in (success) 2. Not Logged in (success) 4) Bot successfully order via localhost? 1) Logged in (can't get chatgpt plugin to use webmcp; uses navigation.) 2) Not Logged in 6) Build Obsidian plugin 7) Publish website (Vercel) 8) Use Obsidian plugin chatbot to order via published clearsignal site 1) get status updates from backend 2) Upon status update "Complete", Obsidian plugin connection automatically closes. 9) Generate supabase cronjob to process all the order sequences steps for demo purposes. Real testing takes days/weeks. 10) Next Steps: Use Benchling plugin to order via published clearsignal site

Challenges we ran into

Lots of hard parts here. Some we overcame, some we patched, and some we're leaving for later.

Overcame

1) How do we get markdown to chat with a website? Answer: The Obsidian plugin routes with chatGPT desktop session which connects to the webMCP-enabled site. 2) How do we get so much sci-knowledge into webMCP? Even a simple test like the endotoxin assay can have dozens of questions from researchers, e.g. Do samples need to be aqueous? Do you perform dilution series? What about inhibition? Answer: this one was easier to solve than expected. Having a FAQ list and then loading the questions and answers into get_endotoxin_faqs was a nice, quick way to help find answers. I imagine an entire page of FAQs with every question a researcher has every asked easily navigable with webMCP. 3) How do we show a quote, order updates and results? Answer: we instantiate a session between Obsidian plugin and chatGPT desktop. Quotes, results and updates are added to the lab notebook.

Patch

1) Chrome chatGPT extension with sites-enabled still did not invoke some of webMCP items on ClearSignal. For isntance, sometimes I would ask "What is the cost per sample?" and the extension would show a pointer and click around until it found a price. Lots of troubleshooting later, I realized that chatGPT desktop web interface behaves different than Chrome websites with chatGPT extension enabled. So, I continued to use chatGPT desktop.

Future Work

1) The site still relies on chatGPT desktop. Can we make an Obsidian Plugin chatGPT API and bypass chatGPT desktop? Still, how do we sign off on the ordering step. 2) Right now the order status come in a few seconds after each other, e.g. "in_preparation", "in_testing", etc. These updates typically occur every couple of days. How do I keep a Obsidian-plugin-chatGPT session going that long? I probably can't. I need to build out the plugin to do periodic polling probably via REST API or webhook. 3) I would love to see this in popular Lab notebook like Benchling and Notion. Custom plugin for each? Chrome extension? 4) What would it take to let every biotech lab sell and describe their assays to researchers and their agents so that they can be ordered from a lab notebook?

Accomplishments that we're proud of

Two that I'm proud of: 1) Quotes, ordering, questions, updates and results are all incorporated into the lab notebook. Having all these timestamped updates and results in one place with a collapsible menu is so fun! 2) Using webMCP on a science site as a way to quickly arrive at answers like cost and sample criteria will save days of back-and-forth clarification and negotiation.

What we learned

1) The FAQ lives on. 2) All scientists should be keeping a lab notebook in mardown. 3) Obsidian is a fabulous markdown viewer. 4) There are important webMCP differences between chatGPT desktop browser and Chrome chatGPT extension.

What's next for Endotoxin

Let's help all researchers order all assays via their lab notebooks!

Built With

  • chatgptdesktop
  • obsidian
  • supabase
  • vercel
Share this project:

Updates

posted an update —

Comparing other projects and this one and I think the idea of giving FAQs to the WebMCP is a novel way to go. Most websites have FAQs but they're underutilized. Letting WebMCP know about them, though, will imbue them with new life.

Log in or sign up for Devpost to join the conversation.

Submission history