Forge Tools sequence_mutations
sequence_mutations read
scidex.forge.sequence_mutations
Find mutations between two DNA sequences. Closes Biomni-parity port of `find_sequence_mutations` (SPEC-195 §1 molecular_biology row 10; iter 24).
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
{
"properties": {
"reference": {
"description": "Reference DNA sequence (ACGT). The 'wild-type' or expected sequence.",
"maxLength": 100000,
"minLength": 1,
"title": "Reference",
"type": "string"
},
"query": {
"description": "Query DNA sequence (ACGT). The variant or experimental sequence to score.",
"maxLength": 100000,
"minLength": 1,
"title": "Query",
"type": "string"
}
},
"required": [
"reference",
"query"
],
"title": "SequenceMutationsIn",
"type": "object"
}Output schema
{
"$defs": {
"Mutation": {
"properties": {
"kind": {
"description": "'substitution', 'insertion', or 'deletion'.",
"title": "Kind",
"type": "string"
},
"position": {
"description": "1-indexed position on the reference sequence.",
"title": "Position",
"type": "integer"
},
"notation": {
"description": "HGVS-style notation. Substitution: '100A>G'. Insertion: '100insATG'. Deletion: '100delGT'.",
"title": "Notation",
"type": "string"
},
"ref_base": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Reference base(s) at the mutation site (None for insertion).",
"title": "Ref Base"
},
"query_base": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Query base(s) at the mutation site (None for deletion).",
"title": "Query Base"
}
},
"required": [
"kind",
"position",
"notation"
],
"title": "Mutation",
"type": "object"
}
},
"properties": {
"reference_length": {
"description": "Length of the reference sequence (nt).",
"title": "Reference Length",
"type": "integer"
},
"query_length": {
"description": "Length of the query sequence (nt).",
"title": "Query Length",
"type": "integer"
},
"mutations": {
"description": "Detected mutations.",
"items": {
"$ref": "#/$defs/Mutation"
},
"title": "Mutations",
"type": "array"
},
"substitution_count": {
"description": "Convenience: count of substitutions.",
"title": "Substitution Count",
"type": "integer"
},
"insertion_count": {
"description": "Convenience: count of insertions.",
"title": "Insertion Count",
"type": "integer"
},
"deletion_count": {
"description": "Convenience: count of deletions.",
"title": "Deletion Count",
"type": "integer"
},
"method": {
"description": "'aligned_hamming' for equal-length comparison; 'prefix_suffix' for single contiguous indel between sequences of different length.",
"title": "Method",
"type": "string"
}
},
"required": [
"reference_length",
"query_length",
"mutations",
"substitution_count",
"insertion_count",
"deletion_count",
"method"
],
"title": "SequenceMutationsOut",
"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/sequence_mutations' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{
"reference": "",
"query": ""
}'Discussion
No comments yet — be the first.