Broad Institute · Schema

Tool

A tool (or described tool) describes one pairing of a tool as described in a descriptor file (which potentially describes multiple tools) and a Docker image.

BiotechnologyResearchGenomicsOpen ScienceNon-Profit

Properties

Name Type Description
url string The URL for this tool in this registry, for example `http://agora.broadinstitute.org/tools/123456`
id string A unique identifier of the tool, scoped to this registry, for example `123456` or `123456_v1`
organization string The organization that published the image.
toolname string The name of the tool.
toolclass object
description string The description of the tool.
author string Contact information for the author of this tool entry in the registry. (More complex authorship information is handled by the descriptor)
meta-version string The version of this tool in the registry. Iterates when fields like the description, author, etc. are updated.
contains array An array of IDs for the applications that are stored inside this tool (for example `https://bio.tools/tool/mytum.de/SNAP2/1`). This always returns an empty array.
verified boolean Reports whether this tool has been verified by a specific organization or individual. This always returns false.
verified-source string Source of metadata that can support a verified tool, such as an email or URL
signed boolean Reports whether this tool has been signed. This always returns false.
versions array A list of versions for this tool
View JSON Schema on GitHub

JSON Schema

broad-institute-tool-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/broad-institute/main/json-schema/broad-institute-tool-schema.json",
  "title": "Tool",
  "description": "A tool (or described tool) describes one pairing of a tool as described in a descriptor file (which potentially describes multiple tools) and a Docker image.",
  "x-generated": "2026-10-15",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/broad-institute-openapi.yml#/components/schemas/Tool",
  "required": [
    "author",
    "id",
    "meta-version",
    "organization",
    "toolclass",
    "url",
    "versions"
  ],
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL for this tool in this registry, for example `http://agora.broadinstitute.org/tools/123456`"
    },
    "id": {
      "type": "string",
      "description": "A unique identifier of the tool, scoped to this registry, for example `123456` or `123456_v1`"
    },
    "organization": {
      "type": "string",
      "description": "The organization that published the image."
    },
    "toolname": {
      "type": "string",
      "description": "The name of the tool."
    },
    "toolclass": {
      "$ref": "#/$defs/ToolClass"
    },
    "description": {
      "type": "string",
      "description": "The description of the tool."
    },
    "author": {
      "type": "string",
      "description": "Contact information for the author of this tool entry in the registry. (More complex authorship information is handled by the descriptor)"
    },
    "meta-version": {
      "type": "string",
      "description": "The version of this tool in the registry. Iterates when fields like the description, author, etc. are updated."
    },
    "contains": {
      "type": "array",
      "description": "An array of IDs for the applications that are stored inside this tool (for example `https://bio.tools/tool/mytum.de/SNAP2/1`). This always returns an empty array.",
      "items": {
        "type": "string"
      }
    },
    "verified": {
      "type": "boolean",
      "description": "Reports whether this tool has been verified by a specific organization or individual.  This always returns false."
    },
    "verified-source": {
      "type": "string",
      "description": "Source of metadata that can support a verified tool, such as an email or URL"
    },
    "signed": {
      "type": "boolean",
      "description": "Reports whether this tool has been signed.  This always returns false."
    },
    "versions": {
      "type": "array",
      "description": "A list of versions for this tool",
      "items": {
        "$ref": "#/$defs/ToolVersion"
      }
    }
  },
  "$defs": {
    "ToolClass": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for the class"
        },
        "name": {
          "type": "string",
          "description": "A short friendly name for the class"
        },
        "description": {
          "type": "string",
          "description": "A longer explanation of what this class is and what it can accomplish"
        }
      },
      "description": "Describes a class (type) of tool allowing us to categorize workflows, tools, and maybe even other entities (such as services) separately"
    },
    "ToolVersion": {
      "required": [
        "id",
        "meta-version",
        "url"
      ],
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name of the version."
        },
        "url": {
          "type": "string",
          "description": "The URL for this tool in this registry, for example `http://agora.broadinstitute.org/tools/123456/1`"
        },
        "id": {
          "type": "string",
          "description": "An identifier of the version of this tool for this particular tool registry, for example `v1`"
        },
        "image": {
          "type": "string",
          "description": "The docker path to the image (and version) for this tool. (e.g. quay.io/seqware/seqware_full/1.1). This always returns an empty string."
        },
        "descriptor-type": {
          "type": "array",
          "description": "The type (or types) of descriptors available.",
          "items": {
            "type": "string",
            "enum": [
              "WDL"
            ]
          }
        },
        "dockerfile": {
          "type": "boolean",
          "description": "Reports if this tool has a dockerfile available. This always returns false."
        },
        "meta-version": {
          "type": "string",
          "description": "The version of this tool version in the registry. Iterates when fields like the description, author, etc. are updated."
        }
      },
      "description": "A tool version describes a particular iteration of a tool as described by a reference to a specific image and dockerfile."
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/broad-institute-tool"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.