Forge Tools golden_gate_assembly

golden_gate_assembly read

scidex.forge.golden_gate_assembly

Simulate Golden Gate Type IIS-enzyme cloning assembly. Closes Biomni-parity port of `golden_gate_assembly` (SPEC-195 §1 molecular_biology row 18; iter 26).

HTTP: POST /api/scidex/forge/golden_gate_assembly

Invoke

Calls scidex.tool.invoke on the substrate with this tool name. Edit the JSON below — it must match the input schema. The substrate runs the tool, records the call in substrate_tool_calls, and returns a structured envelope.

Sign in to invoke this tool. Schema and curl snippet are visible to anyone.

Schemas

Input schema
{
  "$defs": {
    "FragmentInput": {
      "properties": {
        "name": {
          "description": "Friendly identifier for this fragment (e.g. 'part_A').",
          "title": "Name",
          "type": "string"
        },
        "sequence": {
          "description": "DNA fragment containing Type IIS sites flanking the assembly-relevant region.",
          "maxLength": 50000,
          "minLength": 20,
          "title": "Sequence",
          "type": "string"
        }
      },
      "required": [
        "name",
        "sequence"
      ],
      "title": "FragmentInput",
      "type": "object"
    }
  },
  "properties": {
    "fragments": {
      "description": "Input fragments (2-30). Each must carry Type IIS sites flanking the core insert.",
      "items": {
        "$ref": "#/$defs/FragmentInput"
      },
      "maxItems": 30,
      "minItems": 2,
      "title": "Fragments",
      "type": "array"
    },
    "enzyme": {
      "default": "BsaI",
      "description": "Type IIS enzyme name. Supported: BsaI, BsmBI, BbsI, SapI. All produce 4-nt overhangs (SapI produces 3-nt).",
      "title": "Enzyme",
      "type": "string"
    }
  },
  "required": [
    "fragments"
  ],
  "title": "GoldenGateAssemblyIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "ProcessedFragment": {
      "properties": {
        "name": {
          "description": "Original fragment name.",
          "title": "Name",
          "type": "string"
        },
        "core": {
          "description": "Assembly-relevant DNA between the two cut sites (overhangs excluded).",
          "title": "Core",
          "type": "string"
        },
        "left_overhang": {
          "description": "4-nt overhang on the 5' end of the core.",
          "title": "Left Overhang",
          "type": "string"
        },
        "right_overhang": {
          "description": "4-nt overhang on the 3' end of the core.",
          "title": "Right Overhang",
          "type": "string"
        }
      },
      "required": [
        "name",
        "core",
        "left_overhang",
        "right_overhang"
      ],
      "title": "ProcessedFragment",
      "type": "object"
    }
  },
  "properties": {
    "enzyme": {
      "description": "Type IIS enzyme used.",
      "title": "Enzyme",
      "type": "string"
    },
    "processed_fragments": {
      "description": "Per-fragment digestion result (core + flanking overhangs).",
      "items": {
        "$ref": "#/$defs/ProcessedFragment"
      },
      "title": "Processed Fragments",
      "type": "array"
    },
    "assembled": {
      "description": "True if a single circular product can be assembled from all fragments with matched overhangs.",
      "title": "Assembled",
      "type": "boolean"
    },
    "assembly_order": {
      "description": "Names of fragments in assembled order (5'→3' around the circle). Empty if assembly failed.",
      "items": {
        "type": "string"
      },
      "title": "Assembly Order",
      "type": "array"
    },
    "product_sequence": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Assembled circular DNA sequence (starts at fragments[0] for canonicality). None if not assembled.",
      "title": "Product Sequence"
    },
    "failure_reason": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Why assembly failed (e.g. 'fragment X has 0 Type IIS sites' or 'overhang TTAA not matched').",
      "title": "Failure Reason"
    }
  },
  "required": [
    "enzyme",
    "processed_fragments",
    "assembled",
    "assembly_order"
  ],
  "title": "GoldenGateAssemblyOut",
  "type": "object"
}

curl snippet

Replace $SCIDEX_JWT with a valid bearer token. Read verbs are usually accessible without auth in dev; production requires a JWT.

curl -sS -X POST '/api/scidex/forge/golden_gate_assembly' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "fragments": []
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.