Skip to main content
Glama

Find proteins by domain

interpro_find_proteins_by_domain
Read-onlyIdempotent

Find UniProt proteins carrying an InterPro or member signature. Defaults to reviewed human proteins; reviewedOnly=false includes all review statuses in the chosen taxon. Optional isFragment filters fragment annotations; false does not prove sequence completeness. architectureId intersects the provider Pfam grouping with these selections, without implying functional equivalence; metadata-only hits disclose unavailable entry and taxon details without per-protein requests. proteomeId intersects one UniProt proteome, such as protein.proteome from interpro_get_protein_domains, with every selection including taxonId.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "accession": "<accession>"
    },
    "name": "interpro_find_proteins_by_domain"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoPositive integer page size; values above 50 are clamped to 50 with a notice; defaults to 20.
cursorNoOpaque nextCursor with unchanged target, taxonId, reviewedOnly, isFragment, architectureId, and proteomeId selection; limit may change.
taxonIdNoPositive NCBI taxonomy identifier of at most 10 digits; defaults to human 9606.9606
accessionYesInterPro or member-database entry accession, such as IPR011615 or PF00870; no URL syntax.
isFragmentNoSelect fragment annotations: true for fragments, false for proteins not annotated as fragments; omit to include both. False does not establish sequence completeness.
proteomeIdNoOptional UniProt proteome accession, UP followed by 9 digits, such as protein.proteome from interpro_get_protein_domains. taxonId still applies, including its 9606 default: set taxonId to the mapped protein.source_organism.taxId or an ancestor, or no proteins match.
reviewedOnlyNoDefaults to reviewed proteins; false includes reviewed and unreviewed proteins.
architectureIdNoOptional 40-character hexadecimal Pfam architecture grouping ID from protein.ida_accession; grouping does not establish functional equivalence.
sourceDatabaseNoEntry database slug, inferred from standard accession prefixes when omitted.

Output Schema

NameRequiredDescriptionDefault
capNoEffective page size after clamping.
pageNoPage coverage and continuation.
errorNoPresent when the call failed. Absent on success.
queryNoApplied canonical target and selection, including defaults.
shownNoSelected records returned.
noticeNoInterpretation or recovery guidance.
proteinsNoComplete upstream protein records; architecture mode discloses unavailable details.
sourceUrlNoOfficial API source URL.
truncatedNoMore records remain.
totalCountNoUpstream total matching records.
effectiveQueryNoApplied selection as JSON.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / cursor / description
      Previous value: -"Opaque nextCursor with unchanged target, taxonId, reviewedOnly, isFragment, and architectureId selection; limit may change."New value: +"Opaque nextCursor with unchanged target, taxonId, reviewedOnly, isFragment, architectureId, and proteomeId selection; limit may change."
    • addedInput schema / properties / proteomeId
      Added value: +{
      +  "description": "Optional UniProt proteome accession, UP followed by 9 digits, such as protein.proteome from interpro_get_protein_domains. taxonId still applies, including its 9606 default: set taxonId to the mapped protein.source_organism.taxId or an ancestor, or no proteins match.",
      +  "maxLength": 11,
      +  "pattern": "^[Uu][Pp][0-9]{9}$",
      +  "type": "string"
      +}
    • changedOutput schema / properties / proteins / items / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema0",
      -      "description": "An unmodified JSON value."
      -    },
      -    "description": "Complete protein discovery record.",
      -    "properties": {
      -      "entries": {
      -        "description": "Matched entry records and all upstream fields.",
      -        "items": {
      -          "additionalProperties": {
      -            "$ref": "#/$defs/__schema0",
      -            "description": "An unmodified JSON value."
      -          },
      -          "description": "Complete entry match record.",
      -          "properties": {
      -            "accession": {
      -              "description": "Matched entry accession.",
      -              "type": "string"
      -            },
      -            "entry_protein_locations": {
      -              "description": "Complete nested match locations.",
      -              "items": {
      -                "additionalProperties": {
      -                  "$ref": "#/$defs/__schema0",
      -                  "description": "An unmodified JSON value."
      -                },
      -                "description": "Complete upstream match location.",
      -                "properties": {
      -                  "fragments": {
      -                    "description": "Nonempty sequence fragments.",
      -                    "items": {
      -                      "additionalProperties": {
      -                        "$ref": "#/$defs/__schema0",
      -                        "description": "An unmodified JSON value."
      -                      },
      -                      "description": "Complete continuous or discontinuous sequence fragment.",
      -                      "properties": {
      -                        "dc-status": {
      -                          "description": "Discontinuity status.",
      -                          "type": "string"
      -                        },
      -                        "end": {
      -                          "description": "Inclusive 1-based end residue.",
      -                          "exclusiveMinimum": 0,
      -                          "maximum": 9007199254740991,
      -                          "type": "integer"
      -                        },
      -                        "start": {
      -                          "description": "Inclusive 1-based start residue.",
      -                          "exclusiveMinimum": 0,
      -                          "maximum": 9007199254740991,
      -                          "type": "integer"
      -                        }
      -                      },
      -                      "required": [
      -                        "start",
      -                        "end"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    "minItems": 1,
      -                    "type": "array"
      -                  },
      -                  "model": {
      -                    "description": "Source model.",
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "representative": {
      -                    "description": "Representative match flag.",
      -                    "type": [
      -                      "boolean",
      -                      "null"
      -                    ]
      -                  },
      -                  "score": {
      -                    "description": "Upstream match score.",
      -                    "type": [
      -                      "number",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "fragments"
      -                ],
      -                "type": "object"
      -              },
      -              "minItems": 1,
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "accession",
      -            "entry_protein_locations"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "extra_fields": {
      -        "$ref": "#/$defs/__schema0",
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          },
      -          {
      -            "items": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          }
      -        ],
      -        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      -      },
      -      "metadata": {
      -        "additionalProperties": {
      -          "$ref": "#/$defs/__schema0",
      -          "description": "An unmodified JSON value."
      -        },
      -        "description": "Complete sparse protein summary.",
      -        "properties": {
      -          "accession": {
      -            "description": "Protein accession.",
      -            "type": "string"
      -          },
      -          "gene": {
      -            "description": "Gene name.",
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "length": {
      -            "description": "Sequence length in residues.",
      -            "exclusiveMinimum": 0,
      -            "maximum": 9007199254740991,
      -            "type": "integer"
      -          },
      -          "name": {
      -            "description": "Protein name.",
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "source_database": {
      -            "description": "Protein source database.",
      -            "type": "string"
      -          },
      -          "source_organism": {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0",
      -              "description": "An unmodified JSON value."
      -            },
      -            "description": "Source organism.",
      -            "properties": {
      -              "fullName": {
      -                "description": "Full organism name.",
      -                "type": [
      -                  "string",
      -                  "null"
      -                ]
      -              },
      -              "scientificName": {
      -                "description": "Scientific organism name.",
      -                "type": "string"
      -              },
      -              "taxId": {
      -                "anyOf": [
      -                  {
      -                    "description": "Taxonomy identifier as supplied text.",
      -                    "type": "string"
      -                  },
      -                  {
      -                    "description": "Taxonomy identifier as supplied integer.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  }
      -                ],
      -                "description": "Taxonomy identifier."
      -              }
      -            },
      -            "required": [
      -              "taxId",
      -              "scientificName"
      -            ],
      -            "type": "object"
      -          }
      -        },
      -        "required": [
      -          "accession",
      -          "length",
      -          "source_database"
      -        ],
      -        "type": "object"
      -      },
      -      "taxa": {
      -        "description": "Complete taxon records including lineage when supplied.",
      -        "items": {
      -          "additionalProperties": {
      -            "$ref": "#/$defs/__schema0",
      -            "description": "An unmodified JSON value."
      -          },
      -          "description": "Complete taxon record.",
      -          "properties": {
      -            "accession": {
      -              "description": "Taxon accession.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "accession"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "metadata",
      -      "entries",
      -      "taxa"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema0",
      -      "description": "An unmodified JSON value."
      -    },
      -    "description": "Complete architecture-filtered protein record with explicit detail availability.",
      -    "properties": {
      -      "detailAvailability": {
      -        "additionalProperties": false,
      -        "description": "Absent details are unavailable, rather than biologically empty.",
      -        "properties": {
      -          "entries": {
      -            "description": "Whether upstream supplied entry records.",
      -            "enum": [
      -              "available",
      -              "unavailable"
      -            ],
      -            "type": "string"
      -          },
      -          "taxa": {
      -            "description": "Whether upstream supplied taxon records.",
      -            "enum": [
      -              "available",
      -              "unavailable"
      -            ],
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "entries",
      -          "taxa"
      -        ],
      -        "type": "object"
      -      },
      -      "entries": {
      -        "description": "Matched entry records and all upstream fields.",
      -        "items": {
      -          "additionalProperties": {
      -            "$ref": "#/$defs/__schema0",
      -            "description": "An unmodified JSON value."
      -          },
      -          "description": "Complete entry match record.",
      -          "properties": {
      -            "accession": {
      -              "description": "Matched entry accession.",
      -              "type": "string"
      -            },
      -            "entry_protein_locations": {
      -              "description": "Complete nested match locations.",
      -              "items": {
      -                "additionalProperties": {
      -                  "$ref": "#/$defs/__schema0",
      -                  "description": "An unmodified JSON value."
      -                },
      -                "description": "Complete upstream match location.",
      -                "properties": {
      -                  "fragments": {
      -                    "description": "Nonempty sequence fragments.",
      -                    "items": {
      -                      "additionalProperties": {
      -                        "$ref": "#/$defs/__schema0",
      -                        "description": "An unmodified JSON value."
      -                      },
      -                      "description": "Complete continuous or discontinuous sequence fragment.",
      -                      "properties": {
      -                        "dc-status": {
      -                          "description": "Discontinuity status.",
      -                          "type": "string"
      -                        },
      -                        "end": {
      -                          "description": "Inclusive 1-based end residue.",
      -                          "exclusiveMinimum": 0,
      -                          "maximum": 9007199254740991,
      -                          "type": "integer"
      -                        },
      -                        "start": {
      -                          "description": "Inclusive 1-based start residue.",
      -                          "exclusiveMinimum": 0,
      -                          "maximum": 9007199254740991,
      -                          "type": "integer"
      -                        }
      -                      },
      -                      "required": [
      -                        "start",
      -                        "end"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    "minItems": 1,
      -                    "type": "array"
      -                  },
      -                  "model": {
      -                    "description": "Source model.",
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "representative": {
      -                    "description": "Representative match flag.",
      -                    "type": [
      -                      "boolean",
      -                      "null"
      -                    ]
      -                  },
      -                  "score": {
      -                    "description": "Upstream match score.",
      -                    "type": [
      -                      "number",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "fragments"
      -                ],
      -                "type": "object"
      -              },
      -              "minItems": 1,
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "accession",
      -            "entry_protein_locations"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "extra_fields": {
      -        "$ref": "#/$defs/__schema0",
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          },
      -          {
      -            "items": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          }
      -        ],
      -        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      -      },
      -      "metadata": {
      -        "additionalProperties": {
      -          "$ref": "#/$defs/__schema0",
      -          "description": "An unmodified JSON value."
      -        },
      -        "description": "Complete sparse protein summary.",
      -        "properties": {
      -          "accession": {
      -            "description": "Protein accession.",
      -            "type": "string"
      -          },
      -          "gene": {
      -            "description": "Gene name.",
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "length": {
      -            "description": "Sequence length in residues.",
      -            "exclusiveMinimum": 0,
      -            "maximum": 9007199254740991,
      -            "type": "integer"
      -          },
      -          "name": {
      -            "description": "Protein name.",
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "source_database": {
      -            "description": "Protein source database.",
      -            "type": "string"
      -          },
      -          "source_organism": {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0",
      -              "description": "An unmodified JSON value."
      -            },
      -            "description": "Source organism.",
      -            "properties": {
      -              "fullName": {
      -                "description": "Full organism name.",
      -                "type": [
      -                  "string",
      -                  "null"
      -                ]
      -              },
      -              "scientificName": {
      -                "description": "Scientific organism name.",
      -                "type": "string"
      -              },
      -              "taxId": {
      -                "anyOf": [
      -                  {
      -                    "description": "Taxonomy identifier as supplied text.",
      -                    "type": "string"
      -                  },
      -                  {
      -                    "description": "Taxonomy identifier as supplied integer.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  }
      -                ],
      -                "description": "Taxonomy identifier."
      -              }
      -            },
      -            "required": [
      -              "taxId",
      -              "scientificName"
      -            ],
      -            "type": "object"
      -          }
      -        },
      -        "required": [
      -          "accession",
      -          "length",
      -          "source_database"
      -        ],
      -        "type": "object"
      -      },
      -      "taxa": {
      -        "description": "Complete taxon records including lineage when supplied.",
      -        "items": {
      -          "additionalProperties": {
      -            "$ref": "#/$defs/__schema0",
      -            "description": "An unmodified JSON value."
      -          },
      -          "description": "Complete taxon record.",
      -          "properties": {
      -            "accession": {
      -              "description": "Taxon accession.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "accession"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "metadata",
      -      "detailAvailability"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema0",
      +      "description": "An unmodified JSON value."
      +    },
      +    "description": "Complete protein discovery record.",
      +    "properties": {
      +      "entries": {
      +        "description": "Matched entry records and all upstream fields.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete entry match record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Matched entry accession.",
      +              "type": "string"
      +            },
      +            "entry_protein_locations": {
      +              "description": "Complete nested match locations.",
      +              "items": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0",
      +                  "description": "An unmodified JSON value."
      +                },
      +                "description": "Complete upstream match location.",
      +                "properties": {
      +                  "fragments": {
      +                    "description": "Nonempty sequence fragments.",
      +                    "items": {
      +                      "additionalProperties": {
      +                        "$ref": "#/$defs/__schema0",
      +                        "description": "An unmodified JSON value."
      +                      },
      +                      "description": "Complete continuous or discontinuous sequence fragment.",
      +                      "properties": {
      +                        "dc-status": {
      +                          "description": "Discontinuity status.",
      +                          "type": "string"
      +                        },
      +                        "end": {
      +                          "description": "Inclusive 1-based end residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        },
      +                        "start": {
      +                          "description": "Inclusive 1-based start residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "start",
      +                        "end"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "minItems": 1,
      +                    "type": "array"
      +                  },
      +                  "model": {
      +                    "description": "Source model.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "representative": {
      +                    "description": "Representative match flag.",
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "score": {
      +                    "description": "Upstream match score.",
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fragments"
      +                ],
      +                "type": "object"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "accession",
      +            "entry_protein_locations"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "extra_fields": {
      +        "$ref": "#/$defs/__schema0",
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          },
      +          {
      +            "items": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "type": "array"
      +          },
      +          {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "propertyNames": {
      +              "type": "string"
      +            },
      +            "type": "object"
      +          }
      +        ],
      +        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      +      },
      +      "metadata": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0",
      +          "description": "An unmodified JSON value."
      +        },
      +        "description": "Complete sparse protein summary.",
      +        "properties": {
      +          "accession": {
      +            "description": "Protein accession.",
      +            "type": "string"
      +          },
      +          "gene": {
      +            "description": "Gene name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "length": {
      +            "description": "Sequence length in residues.",
      +            "exclusiveMinimum": 0,
      +            "maximum": 9007199254740991,
      +            "type": "integer"
      +          },
      +          "name": {
      +            "description": "Protein name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "proteome": {
      +            "description": "UniProt proteome accession, such as UP000000625; pass it as interpro_find_proteins_by_domain proteomeId with taxonId set to source_organism.taxId or an ancestor. Null when the protein belongs to no proteome.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_database": {
      +            "description": "Protein source database.",
      +            "type": "string"
      +          },
      +          "source_organism": {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0",
      +              "description": "An unmodified JSON value."
      +            },
      +            "description": "Source organism.",
      +            "properties": {
      +              "fullName": {
      +                "description": "Full organism name.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "scientificName": {
      +                "description": "Scientific organism name.",
      +                "type": "string"
      +              },
      +              "taxId": {
      +                "anyOf": [
      +                  {
      +                    "description": "Taxonomy identifier as supplied text.",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "description": "Taxonomy identifier as supplied integer.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  }
      +                ],
      +                "description": "Taxonomy identifier."
      +              }
      +            },
      +            "required": [
      +              "taxId",
      +              "scientificName"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "accession",
      +          "length",
      +          "source_database"
      +        ],
      +        "type": "object"
      +      },
      +      "taxa": {
      +        "description": "Complete taxon records including lineage when supplied.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete taxon record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Taxon accession.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "metadata",
      +      "entries",
      +      "taxa"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema0",
      +      "description": "An unmodified JSON value."
      +    },
      +    "description": "Complete proteome-filtered protein discovery record.",
      +    "properties": {
      +      "entries": {
      +        "description": "Matched entry records and all upstream fields.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete entry match record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Matched entry accession.",
      +              "type": "string"
      +            },
      +            "entry_protein_locations": {
      +              "description": "Complete nested match locations.",
      +              "items": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0",
      +                  "description": "An unmodified JSON value."
      +                },
      +                "description": "Complete upstream match location.",
      +                "properties": {
      +                  "fragments": {
      +                    "description": "Nonempty sequence fragments.",
      +                    "items": {
      +                      "additionalProperties": {
      +                        "$ref": "#/$defs/__schema0",
      +                        "description": "An unmodified JSON value."
      +                      },
      +                      "description": "Complete continuous or discontinuous sequence fragment.",
      +                      "properties": {
      +                        "dc-status": {
      +                          "description": "Discontinuity status.",
      +                          "type": "string"
      +                        },
      +                        "end": {
      +                          "description": "Inclusive 1-based end residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        },
      +                        "start": {
      +                          "description": "Inclusive 1-based start residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "start",
      +                        "end"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "minItems": 1,
      +                    "type": "array"
      +                  },
      +                  "model": {
      +                    "description": "Source model.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "representative": {
      +                    "description": "Representative match flag.",
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "score": {
      +                    "description": "Upstream match score.",
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fragments"
      +                ],
      +                "type": "object"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "accession",
      +            "entry_protein_locations"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "extra_fields": {
      +        "$ref": "#/$defs/__schema0",
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          },
      +          {
      +            "items": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "type": "array"
      +          },
      +          {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "propertyNames": {
      +              "type": "string"
      +            },
      +            "type": "object"
      +          }
      +        ],
      +        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      +      },
      +      "metadata": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0",
      +          "description": "An unmodified JSON value."
      +        },
      +        "description": "Complete sparse protein summary.",
      +        "properties": {
      +          "accession": {
      +            "description": "Protein accession.",
      +            "type": "string"
      +          },
      +          "gene": {
      +            "description": "Gene name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "length": {
      +            "description": "Sequence length in residues.",
      +            "exclusiveMinimum": 0,
      +            "maximum": 9007199254740991,
      +            "type": "integer"
      +          },
      +          "name": {
      +            "description": "Protein name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "proteome": {
      +            "description": "UniProt proteome accession, such as UP000000625; pass it as interpro_find_proteins_by_domain proteomeId with taxonId set to source_organism.taxId or an ancestor. Null when the protein belongs to no proteome.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_database": {
      +            "description": "Protein source database.",
      +            "type": "string"
      +          },
      +          "source_organism": {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0",
      +              "description": "An unmodified JSON value."
      +            },
      +            "description": "Source organism.",
      +            "properties": {
      +              "fullName": {
      +                "description": "Full organism name.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "scientificName": {
      +                "description": "Scientific organism name.",
      +                "type": "string"
      +              },
      +              "taxId": {
      +                "anyOf": [
      +                  {
      +                    "description": "Taxonomy identifier as supplied text.",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "description": "Taxonomy identifier as supplied integer.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  }
      +                ],
      +                "description": "Taxonomy identifier."
      +              }
      +            },
      +            "required": [
      +              "taxId",
      +              "scientificName"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "accession",
      +          "length",
      +          "source_database"
      +        ],
      +        "type": "object"
      +      },
      +      "proteomes": {
      +        "description": "Complete records of the selected proteome, preserved verbatim.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete proteome record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Proteome accession as upstream writes it, lowercase.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "taxa": {
      +        "description": "Complete taxon records including lineage when supplied.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete taxon record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Taxon accession.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "metadata",
      +      "entries",
      +      "taxa",
      +      "proteomes"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema0",
      +      "description": "An unmodified JSON value."
      +    },
      +    "description": "Complete architecture-filtered protein record with explicit detail availability.",
      +    "properties": {
      +      "detailAvailability": {
      +        "additionalProperties": false,
      +        "description": "Absent details are unavailable, rather than biologically empty.",
      +        "properties": {
      +          "entries": {
      +            "description": "Whether upstream supplied entry records.",
      +            "enum": [
      +              "available",
      +              "unavailable"
      +            ],
      +            "type": "string"
      +          },
      +          "proteomes": {
      +            "description": "Whether upstream supplied proteome records; present only when proteomeId is set.",
      +            "enum": [
      +              "available",
      +              "unavailable"
      +            ],
      +            "type": "string"
      +          },
      +          "taxa": {
      +            "description": "Whether upstream supplied taxon records.",
      +            "enum": [
      +              "available",
      +              "unavailable"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "entries",
      +          "taxa"
      +        ],
      +        "type": "object"
      +      },
      +      "entries": {
      +        "description": "Matched entry records and all upstream fields.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete entry match record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Matched entry accession.",
      +              "type": "string"
      +            },
      +            "entry_protein_locations": {
      +              "description": "Complete nested match locations.",
      +              "items": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0",
      +                  "description": "An unmodified JSON value."
      +                },
      +                "description": "Complete upstream match location.",
      +                "properties": {
      +                  "fragments": {
      +                    "description": "Nonempty sequence fragments.",
      +                    "items": {
      +                      "additionalProperties": {
      +                        "$ref": "#/$defs/__schema0",
      +                        "description": "An unmodified JSON value."
      +                      },
      +                      "description": "Complete continuous or discontinuous sequence fragment.",
      +                      "properties": {
      +                        "dc-status": {
      +                          "description": "Discontinuity status.",
      +                          "type": "string"
      +                        },
      +                        "end": {
      +                          "description": "Inclusive 1-based end residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        },
      +                        "start": {
      +                          "description": "Inclusive 1-based start residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "start",
      +                        "end"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "minItems": 1,
      +                    "type": "array"
      +                  },
      +                  "model": {
      +                    "description": "Source model.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "representative": {
      +                    "description": "Representative match flag.",
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "score": {
      +                    "description": "Upstream match score.",
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fragments"
      +                ],
      +                "type": "object"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "accession",
      +            "entry_protein_locations"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "extra_fields": {
      +        "$ref": "#/$defs/__schema0",
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          },
      +          {
      +            "items": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "type": "array"
      +          },
      +          {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "propertyNames": {
      +              "type": "string"
      +            },
      +            "type": "object"
      +          }
      +        ],
      +        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      +      },
      +      "metadata": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0",
      +          "description": "An unmodified JSON value."
      +        },
      +        "description": "Complete sparse protein summary.",
      +        "properties": {
      +          "accession": {
      +            "description": "Protein accession.",
      +            "type": "string"
      +          },
      +          "gene": {
      +            "description": "Gene name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "length": {
      +            "description": "Sequence length in residues.",
      +            "exclusiveMinimum": 0,
      +            "maximum": 9007199254740991,
      +            "type": "integer"
      +          },
      +          "name": {
      +            "description": "Protein name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "proteome": {
      +            "description": "UniProt proteome accession, such as UP000000625; pass it as interpro_find_proteins_by_domain proteomeId with taxonId set to source_organism.taxId or an ancestor. Null when the protein belongs to no proteome.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_database": {
      +            "description": "Protein source database.",
      +            "type": "string"
      +          },
      +          "source_organism": {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0",
      +              "description": "An unmodified JSON value."
      +            },
      +            "description": "Source organism.",
      +            "properties": {
      +              "fullName": {
      +                "description": "Full organism name.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "scientificName": {
      +                "description": "Scientific organism name.",
      +                "type": "string"
      +              },
      +              "taxId": {
      +                "anyOf": [
      +                  {
      +                    "description": "Taxonomy identifier as supplied text.",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "description": "Taxonomy identifier as supplied integer.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  }
      +                ],
      +                "description": "Taxonomy identifier."
      +              }
      +            },
      +            "required": [
      +              "taxId",
      +              "scientificName"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "accession",
      +          "length",
      +          "source_database"
      +        ],
      +        "type": "object"
      +      },
      +      "proteomes": {
      +        "description": "Complete records of the selected proteome, preserved verbatim.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete proteome record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Proteome accession as upstream writes it, lowercase.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "taxa": {
      +        "description": "Complete taxon records including lineage when supplied.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete taxon record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Taxon accession.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "metadata",
      +      "detailAvailability"
      +    ],
      +    "type": "object"
      +  }
      +]
    • changedOutput schema / properties / proteins / items / description
      Previous value: -"Ordinary protein details or an architecture-filtered record with detail availability."New value: +"Ordinary protein details, with proteome records when proteomeId is set, or an architecture-filtered record with detail availability."
    • addedOutput schema / properties / query / properties / proteomeId
      Added value: +{
      +  "description": "Applied uppercase UniProt proteome accession.",
      +  "type": "string"
      +}
  2. Changed10 schema fields changed
    • addedInput schema / properties / architectureId
      Added value: +{
      +  "description": "Optional 40-character hexadecimal Pfam architecture grouping ID from protein.ida_accession; grouping does not establish functional equivalence.",
      +  "pattern": "^[a-fA-F0-9]{40}$",
      +  "type": "string"
      +}
    • changedInput schema / properties / cursor / description
      Previous value: -"Opaque nextCursor with unchanged target, taxonId, reviewedOnly, and isFragment selection; limit may change."New value: +"Opaque nextCursor with unchanged target, taxonId, reviewedOnly, isFragment, and architectureId selection; limit may change."
    • changedOutput schema / properties / proteins / description
      Previous value: -"Complete upstream protein result records."New value: +"Complete upstream protein records; architecture mode discloses unavailable details."
    • removedOutput schema / properties / proteins / items / additionalProperties
      Removed value: -{
      -  "$ref": "#/$defs/__schema0",
      -  "description": "An unmodified JSON value."
      -}
    • addedOutput schema / properties / proteins / items / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema0",
      +      "description": "An unmodified JSON value."
      +    },
      +    "description": "Complete protein discovery record.",
      +    "properties": {
      +      "entries": {
      +        "description": "Matched entry records and all upstream fields.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete entry match record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Matched entry accession.",
      +              "type": "string"
      +            },
      +            "entry_protein_locations": {
      +              "description": "Complete nested match locations.",
      +              "items": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0",
      +                  "description": "An unmodified JSON value."
      +                },
      +                "description": "Complete upstream match location.",
      +                "properties": {
      +                  "fragments": {
      +                    "description": "Nonempty sequence fragments.",
      +                    "items": {
      +                      "additionalProperties": {
      +                        "$ref": "#/$defs/__schema0",
      +                        "description": "An unmodified JSON value."
      +                      },
      +                      "description": "Complete continuous or discontinuous sequence fragment.",
      +                      "properties": {
      +                        "dc-status": {
      +                          "description": "Discontinuity status.",
      +                          "type": "string"
      +                        },
      +                        "end": {
      +                          "description": "Inclusive 1-based end residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        },
      +                        "start": {
      +                          "description": "Inclusive 1-based start residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "start",
      +                        "end"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "minItems": 1,
      +                    "type": "array"
      +                  },
      +                  "model": {
      +                    "description": "Source model.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "representative": {
      +                    "description": "Representative match flag.",
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "score": {
      +                    "description": "Upstream match score.",
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fragments"
      +                ],
      +                "type": "object"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "accession",
      +            "entry_protein_locations"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "extra_fields": {
      +        "$ref": "#/$defs/__schema0",
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          },
      +          {
      +            "items": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "type": "array"
      +          },
      +          {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "propertyNames": {
      +              "type": "string"
      +            },
      +            "type": "object"
      +          }
      +        ],
      +        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      +      },
      +      "metadata": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0",
      +          "description": "An unmodified JSON value."
      +        },
      +        "description": "Complete sparse protein summary.",
      +        "properties": {
      +          "accession": {
      +            "description": "Protein accession.",
      +            "type": "string"
      +          },
      +          "gene": {
      +            "description": "Gene name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "length": {
      +            "description": "Sequence length in residues.",
      +            "exclusiveMinimum": 0,
      +            "maximum": 9007199254740991,
      +            "type": "integer"
      +          },
      +          "name": {
      +            "description": "Protein name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_database": {
      +            "description": "Protein source database.",
      +            "type": "string"
      +          },
      +          "source_organism": {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0",
      +              "description": "An unmodified JSON value."
      +            },
      +            "description": "Source organism.",
      +            "properties": {
      +              "fullName": {
      +                "description": "Full organism name.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "scientificName": {
      +                "description": "Scientific organism name.",
      +                "type": "string"
      +              },
      +              "taxId": {
      +                "anyOf": [
      +                  {
      +                    "description": "Taxonomy identifier as supplied text.",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "description": "Taxonomy identifier as supplied integer.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  }
      +                ],
      +                "description": "Taxonomy identifier."
      +              }
      +            },
      +            "required": [
      +              "taxId",
      +              "scientificName"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "accession",
      +          "length",
      +          "source_database"
      +        ],
      +        "type": "object"
      +      },
      +      "taxa": {
      +        "description": "Complete taxon records including lineage when supplied.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete taxon record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Taxon accession.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "metadata",
      +      "entries",
      +      "taxa"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema0",
      +      "description": "An unmodified JSON value."
      +    },
      +    "description": "Complete architecture-filtered protein record with explicit detail availability.",
      +    "properties": {
      +      "detailAvailability": {
      +        "additionalProperties": false,
      +        "description": "Absent details are unavailable, rather than biologically empty.",
      +        "properties": {
      +          "entries": {
      +            "description": "Whether upstream supplied entry records.",
      +            "enum": [
      +              "available",
      +              "unavailable"
      +            ],
      +            "type": "string"
      +          },
      +          "taxa": {
      +            "description": "Whether upstream supplied taxon records.",
      +            "enum": [
      +              "available",
      +              "unavailable"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "entries",
      +          "taxa"
      +        ],
      +        "type": "object"
      +      },
      +      "entries": {
      +        "description": "Matched entry records and all upstream fields.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete entry match record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Matched entry accession.",
      +              "type": "string"
      +            },
      +            "entry_protein_locations": {
      +              "description": "Complete nested match locations.",
      +              "items": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0",
      +                  "description": "An unmodified JSON value."
      +                },
      +                "description": "Complete upstream match location.",
      +                "properties": {
      +                  "fragments": {
      +                    "description": "Nonempty sequence fragments.",
      +                    "items": {
      +                      "additionalProperties": {
      +                        "$ref": "#/$defs/__schema0",
      +                        "description": "An unmodified JSON value."
      +                      },
      +                      "description": "Complete continuous or discontinuous sequence fragment.",
      +                      "properties": {
      +                        "dc-status": {
      +                          "description": "Discontinuity status.",
      +                          "type": "string"
      +                        },
      +                        "end": {
      +                          "description": "Inclusive 1-based end residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        },
      +                        "start": {
      +                          "description": "Inclusive 1-based start residue.",
      +                          "exclusiveMinimum": 0,
      +                          "maximum": 9007199254740991,
      +                          "type": "integer"
      +                        }
      +                      },
      +                      "required": [
      +                        "start",
      +                        "end"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "minItems": 1,
      +                    "type": "array"
      +                  },
      +                  "model": {
      +                    "description": "Source model.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "representative": {
      +                    "description": "Representative match flag.",
      +                    "type": [
      +                      "boolean",
      +                      "null"
      +                    ]
      +                  },
      +                  "score": {
      +                    "description": "Upstream match score.",
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fragments"
      +                ],
      +                "type": "object"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "accession",
      +            "entry_protein_locations"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "extra_fields": {
      +        "$ref": "#/$defs/__schema0",
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          },
      +          {
      +            "items": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "type": "array"
      +          },
      +          {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0"
      +            },
      +            "propertyNames": {
      +              "type": "string"
      +            },
      +            "type": "object"
      +          }
      +        ],
      +        "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      +      },
      +      "metadata": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0",
      +          "description": "An unmodified JSON value."
      +        },
      +        "description": "Complete sparse protein summary.",
      +        "properties": {
      +          "accession": {
      +            "description": "Protein accession.",
      +            "type": "string"
      +          },
      +          "gene": {
      +            "description": "Gene name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "length": {
      +            "description": "Sequence length in residues.",
      +            "exclusiveMinimum": 0,
      +            "maximum": 9007199254740991,
      +            "type": "integer"
      +          },
      +          "name": {
      +            "description": "Protein name.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_database": {
      +            "description": "Protein source database.",
      +            "type": "string"
      +          },
      +          "source_organism": {
      +            "additionalProperties": {
      +              "$ref": "#/$defs/__schema0",
      +              "description": "An unmodified JSON value."
      +            },
      +            "description": "Source organism.",
      +            "properties": {
      +              "fullName": {
      +                "description": "Full organism name.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "scientificName": {
      +                "description": "Scientific organism name.",
      +                "type": "string"
      +              },
      +              "taxId": {
      +                "anyOf": [
      +                  {
      +                    "description": "Taxonomy identifier as supplied text.",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "description": "Taxonomy identifier as supplied integer.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  }
      +                ],
      +                "description": "Taxonomy identifier."
      +              }
      +            },
      +            "required": [
      +              "taxId",
      +              "scientificName"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "accession",
      +          "length",
      +          "source_database"
      +        ],
      +        "type": "object"
      +      },
      +      "taxa": {
      +        "description": "Complete taxon records including lineage when supplied.",
      +        "items": {
      +          "additionalProperties": {
      +            "$ref": "#/$defs/__schema0",
      +            "description": "An unmodified JSON value."
      +          },
      +          "description": "Complete taxon record.",
      +          "properties": {
      +            "accession": {
      +              "description": "Taxon accession.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "accession"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "metadata",
      +      "detailAvailability"
      +    ],
      +    "type": "object"
      +  }
      +]
    • changedOutput schema / properties / proteins / items / description
      Previous value: -"Complete protein discovery record."New value: +"Ordinary protein details or an architecture-filtered record with detail availability."
    • removedOutput schema / properties / proteins / items / properties
      Removed value: -{
      -  "entries": {
      -    "description": "Matched entry records and all upstream fields.",
      -    "items": {
      -      "additionalProperties": {
      -        "$ref": "#/$defs/__schema0",
      -        "description": "An unmodified JSON value."
      -      },
      -      "description": "Complete entry match record.",
      -      "properties": {
      -        "accession": {
      -          "description": "Matched entry accession.",
      -          "type": "string"
      -        },
      -        "entry_protein_locations": {
      -          "description": "Complete nested match locations.",
      -          "items": {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0",
      -              "description": "An unmodified JSON value."
      -            },
      -            "description": "Complete upstream match location.",
      -            "properties": {
      -              "fragments": {
      -                "description": "Nonempty sequence fragments.",
      -                "items": {
      -                  "additionalProperties": {
      -                    "$ref": "#/$defs/__schema0",
      -                    "description": "An unmodified JSON value."
      -                  },
      -                  "description": "Complete continuous or discontinuous sequence fragment.",
      -                  "properties": {
      -                    "dc-status": {
      -                      "description": "Discontinuity status.",
      -                      "type": "string"
      -                    },
      -                    "end": {
      -                      "description": "Inclusive 1-based end residue.",
      -                      "exclusiveMinimum": 0,
      -                      "maximum": 9007199254740991,
      -                      "type": "integer"
      -                    },
      -                    "start": {
      -                      "description": "Inclusive 1-based start residue.",
      -                      "exclusiveMinimum": 0,
      -                      "maximum": 9007199254740991,
      -                      "type": "integer"
      -                    }
      -                  },
      -                  "required": [
      -                    "start",
      -                    "end"
      -                  ],
      -                  "type": "object"
      -                },
      -                "minItems": 1,
      -                "type": "array"
      -              },
      -              "model": {
      -                "description": "Source model.",
      -                "type": [
      -                  "string",
      -                  "null"
      -                ]
      -              },
      -              "representative": {
      -                "description": "Representative match flag.",
      -                "type": [
      -                  "boolean",
      -                  "null"
      -                ]
      -              },
      -              "score": {
      -                "description": "Upstream match score.",
      -                "type": [
      -                  "number",
      -                  "null"
      -                ]
      -              }
      -            },
      -            "required": [
      -              "fragments"
      -            ],
      -            "type": "object"
      -          },
      -          "minItems": 1,
      -          "type": "array"
      -        }
      -      },
      -      "required": [
      -        "accession",
      -        "entry_protein_locations"
      -      ],
      -      "type": "object"
      -    },
      -    "type": "array"
      -  },
      -  "extra_fields": {
      -    "$ref": "#/$defs/__schema0",
      -    "anyOf": [
      -      {
      -        "type": "string"
      -      },
      -      {
      -        "type": "number"
      -      },
      -      {
      -        "type": "boolean"
      -      },
      -      {
      -        "type": "null"
      -      },
      -      {
      -        "items": {
      -          "$ref": "#/$defs/__schema0"
      -        },
      -        "type": "array"
      -      },
      -      {
      -        "additionalProperties": {
      -          "$ref": "#/$defs/__schema0"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      }
      -    ],
      -    "description": "Native extra fields preserved verbatim. is_fragment is boolean when supplied, null or absent means unknown, and false means not annotated as a fragment rather than proof of a complete canonical sequence."
      -  },
      -  "metadata": {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema0",
      -      "description": "An unmodified JSON value."
      -    },
      -    "description": "Complete sparse protein summary.",
      -    "properties": {
      -      "accession": {
      -        "description": "Protein accession.",
      -        "type": "string"
      -      },
      -      "gene": {
      -        "description": "Gene name.",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "length": {
      -        "description": "Sequence length in residues.",
      -        "exclusiveMinimum": 0,
      -        "maximum": 9007199254740991,
      -        "type": "integer"
      -      },
      -      "name": {
      -        "description": "Protein name.",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "source_database": {
      -        "description": "Protein source database.",
      -        "type": "string"
      -      },
      -      "source_organism": {
      -        "additionalProperties": {
      -          "$ref": "#/$defs/__schema0",
      -          "description": "An unmodified JSON value."
      -        },
      -        "description": "Source organism.",
      -        "properties": {
      -          "fullName": {
      -            "description": "Full organism name.",
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "scientificName": {
      -            "description": "Scientific organism name.",
      -            "type": "string"
      -          },
      -          "taxId": {
      -            "anyOf": [
      -              {
      -                "description": "Taxonomy identifier as supplied text.",
      -                "type": "string"
      -              },
      -              {
      -                "description": "Taxonomy identifier as supplied integer.",
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              }
      -            ],
      -            "description": "Taxonomy identifier."
      -          }
      -        },
      -        "required": [
      -          "taxId",
      -          "scientificName"
      -        ],
      -        "type": "object"
      -      }
      -    },
      -    "required": [
      -      "accession",
      -      "length",
      -      "source_database"
      -    ],
      -    "type": "object"
      -  },
      -  "taxa": {
      -    "description": "Complete taxon records including lineage when supplied.",
      -    "items": {
      -      "additionalProperties": {
      -        "$ref": "#/$defs/__schema0",
      -        "description": "An unmodified JSON value."
      -      },
      -      "description": "Complete taxon record.",
      -      "properties": {
      -        "accession": {
      -          "description": "Taxon accession.",
      -          "type": "string"
      -        }
      -      },
      -      "required": [
      -        "accession"
      -      ],
      -      "type": "object"
      -    },
      -    "type": "array"
      -  }
      -}
    • removedOutput schema / properties / proteins / items / required
      Removed value: -[
      -  "metadata",
      -  "entries",
      -  "taxa"
      -]
    • removedOutput schema / properties / proteins / items / type
      Removed value: -"object"
    • addedOutput schema / properties / query / properties / architectureId
      Added value: +{
      +  "description": "Applied lowercase Pfam architecture grouping identifier.",
      +  "type": "string"
      +}
  3. First observed

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only/idempotent annotations, the description adds substantive behavioral context: defaults to reviewed human proteins, reviewedOnly=false broadens review status, isFragment false does not prove completeness, architectureId intersects Pfam groupings without implying equivalence, and metadata-only hits avoid per-protein requests. These are meaningful caveats an agent would not get from annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but appropriately compact for a nine-parameter tool, and the core purpose and defaults are front-loaded. It could be easier to scan with clearer separation between purpose and parameter caveats, but there is little redundant text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given full schema description coverage, an output schema, and read-only annotations, the description provides enough additional context about defaults, intersections, and metadata-only hits for an agent to call the tool correctly. No major behavioral gap remains for this complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds inter-parameter semantics: proteomeId intersects every selection including taxonId, architectureId intersects provider Pfam groupings, and metadata-only hits behave differently from full protein hits. This goes beyond what the schema descriptions alone convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: find UniProt proteins carrying an InterPro or member signature. This is clearly different in intent from sibling get/list/scan tools, but it does not explicitly name the contrasting operation, such as retrieving domains for a given protein.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains important default behavior (reviewed human proteins) and what several optional filters mean, but it does not explicitly say when to choose this tool over siblings or when not to use it. Usage is therefore implied rather than directly guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.