{
  "$schema": "https://static.modelcontextprotocol.io/schemas/mcp-server-card/v1.json",
  "version": "1.0",
  "protocolVersion": "2025-06-18",
  "serverInfo": {
    "name": "verbex-lab-tools",
    "title": "Verbex Lab Tools",
    "version": "0.2.0",
    "websiteUrl": "https://www.verbalexperiment.com/tools"
  },
  "description": "Wet-lab help for agents: search and read Verbex guides and free lab documentation templates, and run deterministic calculators (solution prep, serial dilution, PCR master mix, LNP formulation, plate maps, protocol and notebook templates, reagent labels).",
  "iconUrl": "https://www.verbalexperiment.com/logo.png",
  "documentationUrl": "https://www.verbalexperiment.com/llms.txt",
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://www.verbalexperiment.com/mcp"
  },
  "capabilities": {
    "tools": {
      "listChanged": false
    }
  },
  "authentication": {
    "required": false
  },
  "instructions": "Verbex Lab Tools are deterministic wet-lab calculators and document builders from Verbex, the voice lab notebook for iPhone and iPad. For a calculation, call the matching calculator (solution_prep, serial_dilution, pcr_master_mix, lnp_formulation, plate_map) directly; do not search first and do not search the web for the method. Use search and fetch only to find and read Verbex guides (protocols, notebooks, inventory, data integrity, bench math) and the 16 lab documentation templates; cite the url each result returns. Call a tool for every number a scientist will act on (masses, volumes, concentrations, dilution series) instead of calculating it yourself, and report the values exactly as returned, with units and the same significant figures (never add digits). Each result carries a self-check; describe results as checked by Verbex Lab Tools, never as validated or verified. Show the tool warnings and safety notes to the user. Results are calculation aids; the scientist verifies them against their own lab requirements. Inputs are used only to compute the response. Nothing is stored, no account is needed, and no AI model is called.",
  "tools": [
    {
      "name": "search",
      "title": "Search Verbex guides, templates and tools",
      "description": "Search Verbex guides and templates: practical guides (protocols and SOPs, lab notebooks, inventory, data integrity and GLP, equipment records, bench calculations) and the 16 lab documentation templates. Returns ids to pass to fetch, with titles and urls to cite. Not for calculations: to compute a mass, volume, dilution, master mix, LNP formulation or plate map, call that calculator directly."
    },
    {
      "name": "fetch",
      "title": "Read a Verbex guide, template or tool",
      "description": "Get the full text of a search result by id, as Markdown. Guides come with a short summary; templates include the blank template, a worked example where there is one, and a link to the editable Word or Excel file. Tools return how to call them."
    },
    {
      "name": "solution_prep",
      "title": "Solution prep (molarity and C1V1)",
      "description": "Use when someone asks how much solid to weigh for a molar solution (how many grams for X mM in Y mL, making up a buffer or salt solution), or how much stock to dilute to a target concentration (C1V1). mode \"solid\": mass of solid to weigh from molecular weight, target concentration and final volume. mode \"stock\": C1V1 = C2V2 dilution from a stock, solving for stockVolume, stockConcentration, targetConcentration or finalVolume. Returns the primary result, a step summary, warnings and safety notes."
    },
    {
      "name": "serial_dilution",
      "title": "Serial dilution planner",
      "description": "Use for any serial dilution (standard curves, titrations, dose series). Plans transfer and diluent volume per tube and the resulting concentration at each step, from a stock concentration, a constant dilution factor, the number of tubes and the final volume per tube."
    },
    {
      "name": "pcr_master_mix",
      "title": "PCR / qPCR master mix",
      "description": "Use when someone sets up a PCR or qPCR reaction mix for several wells. Calculates volume of each component per reaction and for the whole mix with excess, with water filling the remaining volume. Give each component a stock and final concentration (molar, ng/µL, x buffer, %), an amount per reaction (e.g. 1.25 U polymerase from 5 U/µL, 10 ng template from ng/µL), or a fixed volume. Template can be added per well separately. Do not list water; it is calculated."
    },
    {
      "name": "lnp_formulation",
      "title": "LNP formulation (lipid nanoparticles)",
      "description": "Plan a lipid nanoparticle (LNP) formulation for RNA: from RNA mass, N/P ratio and lipid mol% (e.g. ionizable lipid/DSPC/cholesterol/PEG-lipid 50/10/38.5/1.5), calculate moles, mass and stock volume of every lipid, the ethanol and aqueous phase volumes at the chosen mixing ratio (default 3:1), and final RNA concentration, ethanol fraction and lipid:RNA ratio. Molecular weights must come from the user or certificates of analysis."
    },
    {
      "name": "plate_map",
      "title": "Plate map (6- to 384-well)",
      "description": "Use when someone lays out a multiwell plate (ELISA, qPCR, cell or compound assays). Lays out a 6, 12, 24, 48, 96 or 384-well plate: standards, samples, controls and blanks with replicates, filled by row or column, optionally leaving edge wells empty and keeping replicate sets together. Returns a grid with a key and a well-by-well list."
    },
    {
      "name": "protocol_template",
      "title": "Lab protocol template",
      "description": "Build a structured lab protocol (purpose, materials, procedure, critical steps, acceptance criteria and more) for a protocol title, using a preset or custom sections. Returns Markdown and HTML ready to fill in or print."
    },
    {
      "name": "eln_template",
      "title": "Electronic lab notebook entry template",
      "description": "Build an electronic lab notebook (ELN) entry template for an experiment: objective, materials, procedure, observations and conclusion sections from a preset or custom list, optionally with timestamp fields and voice-capture prompts. Returns Markdown and HTML."
    },
    {
      "name": "parse_reagent_label",
      "title": "Reagent label parser",
      "description": "Turn text read from a reagent bottle or kit label (OCR or typed) into structured fields such as product name, catalog number, lot, expiry, concentration and storage. Parses the provided text only; send the label text, not an image."
    }
  ]
}
