NewTesela AI is here — AI agents for library design, protocols & optimization. Try it free

Documentation

MCP Server

The TeselaGen MCP server exposes 34 tools over the Model Context Protocol, so Claude, your IDE, or any MCP-capable client can search and create sequences in your LIMS, query public scientific databases, and run design and assembly jobs on your behalf.

Endpoint: https://mcp.teselagen.com/mcp (Streamable HTTP). A bare https://mcp.teselagen.com is rewritten to that path, so either form works in a client.

Before you start

  • A TeselaGen account on the deployment whose data you want to reach.
  • An API Password, generated in the TeselaGen web app under Settings → API Password. You sign in to the MCP connector with your email and this API Password — not the password you use for the web app.
  • Your plan. Community accounts get 22 tools and 10 tool calls per minute; Enterprise accounts get all 34 and no per-minute cap.

Your connector URL

Multi-tenant deployments add an instance parameter that tells the server which TeselaGen host to authenticate against. It is the leftmost label of your TeselaGen hostname — for jbei.teselagen.com the instance is jbei. Omit it and you get the deployment's default tenant; an unrecognized name is rejected with a 400.

connector url
# Single-tenant / platform
https://mcp.teselagen.com/mcp

# Named deployment
https://mcp.teselagen.com/mcp?instance=jbei

The TeselaGen web app generates the exact URL and config snippet for your deployment under Settings → MCP Access. Copy it from there if you are unsure which instance you are on.

Connect your client

The server speaks remote MCP over HTTP and handles authorization itself, so there is nothing to install. Every client below opens a browser window for sign-in the first time you connect, then refreshes tokens on its own.

Claude Desktop

  1. Open Settings → Connectors → Add custom connector.
  2. Paste your connector URL (https://mcp.teselagen.com/mcp) and save.
  3. Sign in with your TeselaGen email and API Password in the browser window that opens, then approve access.

Claude Code

terminal
claude mcp add --scope user --transport http teselagen "https://mcp.teselagen.com/mcp"

Run /mcp inside Claude Code to trigger the browser sign-in, then claude mcp list to confirm the server is connected. Sign-in redirects your browser to a http://localhost:<port>/callback URL — that is the expected loopback redirect for native apps (RFC 8252 §7.3), not a misconfiguration.

Any MCP-capable IDE

Add the server as a remote MCP server in your editor's MCP configuration file — Cursor keeps one at ~/.cursor/mcp.json, and other editors use the same entry shape in their own file. The OAuth flow runs in the browser on first use.

~/.cursor/mcp.json
{
  "mcpServers": {
    "teselagen": { "url": "https://mcp.teselagen.com/mcp" }
  }
}

Clients that ask for an explicit transport take the same entry with "type": "http" alongside the URL.

Authentication

  • OAuth 2.1 authorization code flow with mandatory PKCE (S256), dynamic client registration, and public clients only — no client secret to manage. The single scope is mcp.
  • Sign-in is your TeselaGen email plus the API Password from Settings → API Password. Your client never sees that credential after the handshake.
  • Token lifetimes: access tokens last one hour; refresh tokens last 30 days and rotate on every use. Replaying an old refresh token revokes the whole token family, and you re-authorize.
  • Discovery follows the MCP authorization spec: /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource. Clients read these automatically.
  • To revoke access, disconnect the TeselaGen connector in your client, or rotate your API Password in TeselaGen — rotation cuts the server off from acting on your behalf immediately. Cached sessions clear within about five minutes.

How credentials, tokens, and logs are stored and retained is covered in the MCP Server Privacy section.

Tool reference

Every tool returns Markdown text rather than structured JSON, and write tools are additive: they create records or submit jobs, and never delete or overwrite existing data.

Community — 22 tools, available on every plan

ToolWhat it doesParameters (default)
search_sequencesSearch DNA sequences in LIMS by name, description, or propertiesquery · limit (10)
get_sequenceRetrieve a DNA sequence record by IDsequence_id
search_aa_sequencesSearch amino acid (protein) sequences in LIMSquery · limit (10)
get_aa_sequenceRetrieve a protein sequence record by IDsequence_id
search_pubmedSearch PubMed for scientific literaturequery · max_results (5)
search_uniprotSearch UniProt for protein sequences and annotationsquery · limit (5)
search_pubchemLook up chemical structures and properties by name, CID, SMILES, or InChIcompound
search_keggSearch KEGG for pathway, compound, or gene informationquery · database (pathway | compound | gene)
search_genbankSearch NCBI GenBank for nucleotide and protein sequencesquery · limit (5)
fetch_genbank_recordFetch record metadata and a 200 bp sequence previewrecord_id · database (nucleotide)
search_pdb_structuresSearch the RCSB PDB for 3D protein structuresquery · limit (5)
optimize_codonsCodon-optimize a DNA sequence for a target organismsequence · organism
design_primersDesign PCR primers with Primer3sequence · target_start (0) · target_length (0 = whole sequence)
translate_sequenceTranslate DNA to its protein sequencesequence
reverse_complementReturn the reverse complement of a DNA sequencesequence
smiles_to_structureConvert a SMILES string to a molecular structuresmiles
molecular_descriptorsCalculate MW, logP, TPSA and related descriptors from SMILESsmiles
submit_assemblywriteSubmit a design for J5 assembly; returns an Assembly Batch IDdesign_id
check_assembly_statusCheck the status of a J5 assembly jobassembly_batch_id
get_eln_entriesRead Electronic Lab Notebook entries from LIMSquery · limit (10)
create_eln_entrywriteWrite a new Electronic Lab Notebook entrytitle · content
search_tg_docsSearch TeselaGen platform documentation and knowledge basequery

Enterprise — 12 additional tools

ToolWhat it doesParameters (default)
create_sequencewriteCreate a DNA sequence record in LIMSname · sequence · circular (false)
create_sequence_from_genbankwriteFetch a GenBank record and save it straight to LIMS, without routing the sequence through the modelrecord_id · name · circular · database (nucleotide)
create_aa_sequencewriteCreate a protein sequence record in LIMSname · sequence
create_partwriteAnnotate a part on an existing sequencesequence_id · name · start · end
upload_molecular_structurewriteDownload a PDB structure by RCSB ID and upload it to LIMSpdb_id · description · aa_sequence_id
create_chemical_compoundwriteCreate a chemical compound record from SMILESname · smiles
run_j5_assemblywriteRun J5 assembly design for a sequence via auto-partitioningsequence_id
get_j5_parameterswriteCreate a J5 design with explicit assembly method and column parameters (creates, despite the get_ prefix)name · assembly_method (Golden Gate) · columns_json ([])
design_constructwriteBuild a DNA assembly design from a natural-language request (clone, insert, assemble, partition)request · organism
query_binding_dbQuery the TeselaGen Bindings DB for drug-target affinity datapubchem_cid and/or uniprot_id (at least one)
predict_epitopesPredict MHC class I binding epitopes from a protein sequencesequence
predict_protein_structurePredict 3D protein structure with ESMFoldsequence

Limits and credits

  • Rate limit: Community accounts are held to 10 tool calls per minute per user in a sliding window. Enterprise accounts have no per-minute cap.
  • Credits: tools that run inside the MCP server consume no credits. The remaining tools route through the TeselaGen agent, draw on your wallet balance, and are refused up front when the balance is too low.
  • Tools that never cost credits: translate_sequence, reverse_complement, design_primers, smiles_to_structure, molecular_descriptors, search_pubmed, search_uniprot, search_pubchem, search_kegg, search_genbank, fetch_genbank_record, search_pdb_structures.
  • Timeouts: tool calls time out after 120 seconds, except design_construct and get_eln_entries, which delegate to subagents and are allowed 600 seconds.

Errors

401 with WWW-Authenticate: Bearer resource_metadata=…
No token, or the access token expired (access tokens last one hour). Your client should refresh automatically; if it does not, disconnect and reconnect the connector to re-authorize.
429 {"error":"rate_limited","retry_after":n}
Too many requests to an unauthenticated endpoint (sign-in, registration, token). Wait for the seconds given in retry_after or the Retry-After header.
503 with Retry-After: 5
The token store is briefly unavailable. Retry after five seconds; no re-authorization is needed.
400 on an unknown instance
The ?instance= value is not a configured TeselaGen deployment. Copy the URL from the MCP Access tab in LIMS.
Rate limit exceeded: community tier allows 10 requests per minute…
A tool call hit the Community per-user limit. Space out calls or move to Enterprise for unlimited access.
Tool '<name>' is not available on your plan (<tier>). Contact TeselaGen to upgrade.
The tool exists but is Enterprise-only on your account.
Tool '<name>' is not currently available on this server. The backend service may not be configured or enabled. Contact TeselaGen to activate it.
The tool is allowed for your plan, but its backend service is not enabled for your deployment.

Behavior worth knowing

  • The server exposes tools only — no MCP resources and no prompts.
  • Tool responses are text. Parse them as prose or Markdown, not as a stable JSON schema.
  • Writes are not transactional. A tool that times out part-way through a multi-step design can leave partial records behind; check LIMS before retrying.
  • No tool is designed to hold protected health information. The two ELN tools read and write free text, so keep PHI out of those fields; regulated workloads need a Business Associate Agreement first. See MCP Server Privacy.

Need a hand connecting?

We can walk your team through setup, tenant configuration, and Enterprise tool access.