WetLab-MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@WetLab-MCPDesign qPCR primers for my target sequence with Tm around 60°C."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🧬 WetLab-MCP
🔬 Overview
WetLab-MCP is a professional FastMCP server designed to bridge the gap between computational discovery and wet-lab execution. It provides a comprehensive suite of tools for qPCR primer design, cloning strategy optimization, and sequence specificity analysis, all integrated directly into your AI-assisted research workflow.
Starting with the industry-standard primer3-py engine, WetLab-MCP ensures deterministic, high-quality assay designs without ever needing an external API for core calculations.
Related MCP server: Patsnap-mcp
🚀 Key Features
design_qpcr_primers: Local, deterministic qPCR primer design enforcing standard $T_m$ and GC% constraints.design_cloning_primers: Intelligent cloning strategy with automatic restriction site detection and "junk" leader recommendations for high enzyme efficiency.design_taqman_probe: Automated TaqMan internal oligo design with industry-standard quenching rules (no 5' G).analyze_multiplex_compatibility: All-vs-all heterodimer analysis to detect cross-reactivity in multiplex PCR or panels.design_multi_gene_panel: Greedy optimization for building non-conflicting primer sets for multiple targets.check_primer_specificity: Live NCBI BLAST integration (blastn-short) to verify potential off-target binding.
🚀 Installation & Claude Integration
WetLab-MCP can be added to Claude Desktop using one of the following methods.
Method 1: Using uvx (Recommended)
This is the fastest way to run WetLab-MCP without manual installation. Ensure you have uv installed.
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"WetLab-MCP": {
"command": "uvx",
"args": ["wetlab-mcp"]
}
}
}Method 2: Using pip
If you prefer a standard installation:
pip install wetlab-mcpThen add this to your claude_desktop_config.json:
{
"mcpServers": {
"WetLab-MCP": {
"command": "python",
"args": [
"-m",
"wetlab_mcp"
]
}
}
}🧪 Tool Specifications
Tool | Purpose | Key Inputs |
| qPCR assays | Sequence, Target $T_m$ |
| Cloning/Gibson | Overhangs, Target $T_m$ |
| Real-time PCR | Sequence, Primers, Probe $T_m$ |
| Off-target check | Primer Sequence (Internet req.) |
| Dimer analysis | List of Primers |
| Batch design | List of Genes ({name, seq}) |
🛡️ License
Distributed under the MIT License. See LICENSE for more information.
Available Tools
6 toolsanalyze_multiplex_compatibilityA
Analyze a set of primers for potential cross-reactivity (heterodimers). Useful for multiplex PCR or panel design.
Args: primers: A list of primer sequences to analyze.
Returns: A JSON string with identified risk interactions and compatibility score.
| Name | Required | Description | Default |
|---|---|---|---|
| primers | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It describes the analysis (read-only) and return format, but does not explicitly state it is safe or non-destructive, nor mention any permissions, rate limits, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short and includes a purpose statement followed by formatted Args and Returns sections. It avoids unnecessary details, though the Args section essentially restates the schema property name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the one-parameter tool and presence of an output schema, the description covers return values (JSON string with risk interactions and score). However, it omits potential constraints or edge cases (e.g., minimum primer length, number of primers), leaving some gaps for an agent to fully understand the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains the single parameter 'primers' as 'a list of primer sequences to analyze', adding marginal meaning beyond the schema's type definition. With 0% schema coverage, the description provides some context but lacks details like allowed sequence formats, length constraints, or degenerate bases.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes a set of primers for potential cross-reactivity (heterodimers), which is a specific verb-resource pair. It distinguishes from siblings like check_primer_specificity by focusing on primer-primer interactions rather than genome specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates usefulness for multiplex PCR or panel design, giving context for when to use it. However, it lacks explicit guidance on when not to use it or alternatives (e.g., if you need genome-wide specificity, use check_primer_specificity).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_primer_specificityA
Check if a primer sequence binds elsewhere in the genome using NCBI BLAST. Requires internet connection and may take 10-30 seconds.
Args: primer_sequence: The DNA sequence of the primer (15-30 bp).
Returns: A JSON string with specificity rating and top matches in nt database.
| Name | Required | Description | Default |
|---|---|---|---|
| primer_sequence | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It discloses dependencies (NCBI BLAST), latency (10-30 seconds), and return format (JSON string with specificity rating and top matches). No destructive actions are involved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with no wasted words. It uses a clear Args/Returns structure and front-loads the core purpose. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter) and the presence of an output schema (though not shown), the description is nearly complete. It explains inputs, process, output, and constraints. Minor gaps: no mention of error handling or exact output format details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It adds meaning: describes the parameter as a DNA sequence of 15-30 bp, which is not in the schema. For a single parameter, this is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: checking primer specificity using NCBI BLAST. The verb 'check' and resource 'primer sequence' are specific, and the use of BLAST distinguishes it from sibling tools that focus on primer design.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions requirements (internet) and expected time (10-30 seconds), giving usage context. However, it does not explicitly state when not to use this tool or suggest alternatives, which would improve guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_cloning_primersA
Design primers for cloning the entire sequence with optional 5' overhangs. Detects common restriction sites and suggests leaders for efficiency.
Args: sequence: Target DNA sequence (ORF/Fragment to amplify). fwd_overhang: Optional 5' overhang for forward primer (e.g., restriction site). rev_overhang: Optional 5' overhang for reverse primer. target_tm: Target melting temperature in °C (default: 60.0).
Returns: A JSON string with precise and suggested (leader-included) primer pairs.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | ||
| fwd_overhang | No | ||
| rev_overhang | No | ||
| target_tm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description takes full responsibility. It discloses that the tool detects restriction sites, suggests leaders, and returns a JSON string with primer pairs. This provides adequate transparency for a stateless design tool, though it could mention assumptions like primer length.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with a brief intro, labeled Args, and Returns. Every sentence adds value with no redundancy, and the purpose is front-loaded for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main functionality and return format, but lacks notes on edge cases (e.g., short sequences, impossible Tm targets) or performance. Given the output schema exists, the description is mostly complete but could be slightly more thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description's Args section explains each parameter in plain language (sequence as target DNA, overhangs as optional, target_tm with default). This fully compensates for the missing schema descriptions, adding significant meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it designs primers for cloning entire sequences with optional overhangs, detecting restriction sites and suggesting leaders. This purpose is distinct from sibling tools like design_qpcr_primers or check_primer_specificity, ensuring unambiguous selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for cloning primer design but does not explicitly state when to use this tool versus alternatives (e.g., qPCR or specificity checks). No exclusions or prerequisites are mentioned, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_multi_gene_panelA
Design a set of non-conflicting primer pairs for multiple genes. Uses a greedy approach to minimize heterodimers between pairs.
Args: genes: A list of genes, each with 'name' and 'sequence' keys. target_tm: Target melting temperature for primers in °C (default: 60.0).
Returns: A JSON string with the selected non-conflicting panel and any failures.
| Name | Required | Description | Default |
|---|---|---|---|
| genes | Yes | ||
| target_tm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits. It discloses the algorithmic approach (greedy, heterodimer minimization) but lacks details on side effects, authentication, or limitations (e.g., what happens if no non-conflicting set exists). No contradiction with annotations since none exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences plus parameter descriptions. The first sentence states the core purpose, the second provides algorithmic insight, and the parameter section is clear. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of multi-gene primer design, the description covers key aspects (input, method, output reference) but could elaborate on the 'non-conflicting' criteria or failure cases. The presence of an output schema reduces the need for return value details, keeping the description fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description adds meaning by specifying that the 'genes' list requires 'name' and 'sequence' keys, and explains target_tm as melting temperature with default 60°C. This compensates for the bare schema, though additional parameter constraints could be detailed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool designs primer pairs for multiple genes, specifying a greedy approach to minimize heterodimers. This is a specific verb+resource combination that distinguishes it from sibling tools like design_cloning_primers or design_qpcr_primers, which target specific applications. The mention of 'non-conflicting panel' further clarifies the goal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus siblings like analyze_multiplex_compatibility or check_primer_specificity. Usage context is implied (when designing a multi-gene panel) but no direct comparison or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_qpcr_primersA
Design validated qPCR primer pairs for a given DNA sequence using Primer3.
Args: sequence: Target DNA sequence (ATCG only, min 100 bp). target_tm: Target melting temperature in °C (default: 60.0). product_size_range: Desired PCR product size range (e.g., '70-150'). num_pairs: Number of primer pairs to return (1-5, default: 3).
Returns: A JSON-formatted string with validated primer pairs or error information.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | ||
| target_tm | No | ||
| product_size_range | No | 70-150 | |
| num_pairs | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full transparency burden. It discloses use of Primer3, validation, and return format, but lacks details on error handling, computational cost, or validation criteria.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a concise intro, then Args and Returns. Slightly verbose in parameter details, but overall efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and presence of output schema, the description covers parameters and return format. Missing details on 'validated' criteria and error cases, but largely complete for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description fully compensates by explaining each parameter clearly: sequence constraints (ATCG only, min 100 bp), default and meaning for target_tm, example for product_size_range, and range for num_pairs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: designing validated qPCR primer pairs for a given DNA sequence using Primer3. It uses specific verbs and resources, and distinguishes from sibling tools like design_cloning_primers and design_taqman_probe by focusing on qPCR and validation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus siblings or when not to use it. It only lists parameters without contextual clues for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_taqman_probeA
Design a TaqMan probe for the region between two primers. Ensures probe Tm is higher than primers and follows standard rules (no 5' G).
Args: sequence: Target DNA sequence containing the primer binding sites. primer_fwd: Forward primer sequence (5'->3'). primer_rev: Reverse primer sequence (5'->3'). target_probe_tm: Target melting temperature in °C (default: 68.0).
Returns: A JSON string with the designed probe or error message.
| Name | Required | Description | Default |
|---|---|---|---|
| sequence | Yes | ||
| primer_fwd | Yes | ||
| primer_rev | Yes | ||
| target_probe_tm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes key rules (Tm higher, no 5' G) but does not detail error handling, edge cases, or additional constraints. With no annotations, the description carries full burden, and moderate transparency is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise and covers purpose, parameters, and return. Could be structured more clearly (e.g., separate notes), but is efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no schema descriptions, and no annotations, the description provides essential details for a moderate-complexity tool. Output schema exists, so return values are partially covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, description adds meaningful context: sequence is target DNA with primer binding sites, primer_fwd/reverse are sequences, target_probe_tm has default. This compensates well but could be more explicit about format constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it designs a TaqMan probe between two primers, with specific rules (higher Tm, no 5' G). This differentiates it from sibling tools like design_cloning_primers or check_primer_specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for TaqMan probe design but does not explicitly state when to use vs. alternatives or provide exclusions. Sibling context helps but description lacks direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
v0.1.0- First observed
analyze_multiplex_compatibility - First observed
check_primer_specificity - First observed
design_cloning_primers - First observed
design_multi_gene_panel - First observed
design_qpcr_primers - First observed
design_taqman_probe
TDQS
Scored across 6 tools
Each tool targets a distinct task in primer/probe design: specificity checking, multiplex analysis, cloning primer design, multi-gene panel design, qPCR primer design, and TaqMan probe design. There is no overlap in functionality.
All tool names follow a consistent verb_noun pattern (analyze_, check_, design_), making the tool purpose clear and predictable.
With 6 tools covering the core workflow of primer and probe design and validation, the number is well-suited to the server's purpose without being excessive or insufficient.
The tool set covers the full lifecycle of primer design: specificity checks, compatibility analysis, design for cloning, qPCR, multi-gene panels, and TaqMan probes. No obvious gaps are present for a primer design MCP.
Maintenance
Related MCP Connectors
Hosted DNA/RNA/protein tools: primers, oligos, PCR, cloning, CRISPR, alignment, batch & pipelines.
AI-powered bioprotocol optimization — generate, search, and manage lab protocols via MCP
- mcpOAuthio.scispot
Turn any LLM into your lab assistant: search samples, track experiments, analyze data with AI.
Biotech intelligence for AI agents: drugs, targets, diagnostics, PoS estimates, and writeups.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceChemical safety intelligence for AI-assisted experiment design. 18 MCP tools for compatibility checks, hazard analysis, PPE, storage, waste disposal, mixing order, exposure limits, transport classification, regulatory compliance (8 jurisdictions), and signed audit reports. Supports 4,200+ chemicals in 5 languages.1MIT

Patsnap-mcpofficial
AlicenseNot gradedqualityAmaintenanceSearch 1B+ biological sequences, antibodies, and multi-omics data via specialized bio-intelligence tools.111Apache 2.0- AlicenseNot gradedqualityDmaintenanceEnables AI agents to query clinical genomics databases, retrieve supporting literature, analyze population genetics, and visualize biological pathways.19MIT
- AlicenseNot gradedqualityBmaintenanceEnables LLM agents to design proteins, predict structures, score interfaces, and run molecular dynamics simulations through a unified interface.1Apache 2.0