Skip to content
Scalekit Docs

Synthesize Bio MCP

Vendor MCP5 toolsOAuth 2.1/DCRAIAnalyticsSearch

Connect to Synthesize Bio MCP. Run differential gene expression analysis, resolve sample metadata, and retrieve results and raw counts data from your AI...

Synthesize Bio MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'synthesizebiomcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Synthesize Bio MCP:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'synthesizebiomcp_get_metadata_schema',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Get metadata schema, counts data url, analysis results — Retrieve the structured-metadata schema used to turn a natural-language experiment description into the sample groups required by resolve_sample_metadata
  • Metadata resolve sample — Resolve a natural-language experiment description into structured sample groups using Synthesize Bio’s AI metadata extraction
  • Expression analyze gene — Start a differential gene expression analysis using Synthesize Bio’s AI platform, returning a job ID to track progress

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

synthesizebiomcp_analyze_gene_expression#Start a differential gene expression analysis using Synthesize Bio's AI platform, returning a job ID to track progress.1 param

Start a differential gene expression analysis using Synthesize Bio's AI platform, returning a job ID to track progress.

NameTypeRequiredDescription
resolution_idstringrequiredThe completed resolution_id returned by resolve_sample_metadata.
synthesizebiomcp_get_analysis_results#Poll the status and results of a running gene expression analysis job.1 param

Poll the status and results of a running gene expression analysis job.

NameTypeRequiredDescription
job_idstringrequiredThe job_id returned by analyze_gene_expression.
synthesizebiomcp_get_counts_data_url#Retrieve a presigned download URL for the raw gene expression counts data produced by a completed analysis job.1 param

Retrieve a presigned download URL for the raw gene expression counts data produced by a completed analysis job.

NameTypeRequiredDescription
job_idstringrequiredThe job_id returned by analyze_gene_expression.
synthesizebiomcp_get_metadata_schema#Retrieve the structured-metadata schema used to turn a natural-language experiment description into the sample groups required by resolve_sample_metadata.1 param

Retrieve the structured-metadata schema used to turn a natural-language experiment description into the sample groups required by resolve_sample_metadata.

NameTypeRequiredDescription
modalitystringoptionalSequencing modality. Defaults to "bulk".
synthesizebiomcp_resolve_sample_metadata#Resolve a natural-language experiment description into structured sample groups using Synthesize Bio's AI metadata extraction.3 params

Resolve a natural-language experiment description into structured sample groups using Synthesize Bio's AI metadata extraction.

NameTypeRequiredDescription
modalitystringoptionalSequencing modality. Defaults to "bulk".
promptstringoptionalNatural language description of the experiment, e.g. "heart vs liver cells" or "KRAS knockout vs control in lung adenocarcinoma". Required unless `resolution_id` is provided to poll a previously-started resolution.
resolution_idstringoptionalResolution identifier from a previous response with status 'resolving'. When provided, polls that in-flight resolution and `prompt` may be omitted.