Tools for agents: Resource reservation conflict checker

Find overlapping reservations sharing resources, with exact overlap windows and peak resource concurrency.

Connect with MCP

{
  "mcpServers": {
    "super-agent-tools": {
      "url": "https://app.getsupers.com/sites/agent-resource-conflicts/mcp"
    }
  }
}
Streamable HTTP · No API key · Stateless

Use this URL in any client supporting remote Streamable HTTP MCP. Calls return structured JSON; inputs are processed without persistence.

Call find_resource_conflicts

Each reservation has a unique nonempty ID, integer start/end, and a list of distinct nonempty resource names. Coordinates may be integer timestamps or relative ticks, but all inputs must use the same unit and origin. Intervals are [start,end): touching endpoints do not conflict, and zero-length or reversed intervals fail. A conflict is one unordered reservation pair with a nonempty time intersection and at least one shared resource; multiple shared resources appear together in that pair. Pair order follows input order; shared resource names and resource summaries are sorted lexically. Peak windows are maximal contiguous intervals at that resource's highest concurrency, including adjacent windows whose reservation identities differ. Empty resource lists and empty reservation lists are valid. This assumes exclusive resources when declaring conflicts, does not infer capacities or time zones, and does not acquire locks, book resources, change schedules, or verify external availability. It analyzes only the submitted snapshot.

Input and output schemas
{
  "name": "find_resource_conflicts",
  "title": "Resource reservation conflict checker",
  "description": "Find every overlapping pair sharing resources and peak simultaneous reservations per resource. Endpoints are half-open integer coordinates.",
  "inputSchema": {
    "$defs": {
      "Reservation": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "start": {
            "title": "Start",
            "type": "integer"
          },
          "end": {
            "title": "End",
            "type": "integer"
          },
          "resources": {
            "items": {
              "type": "string"
            },
            "title": "Resources",
            "type": "array"
          }
        },
        "required": [
          "id",
          "start",
          "end",
          "resources"
        ],
        "title": "Reservation",
        "type": "object"
      }
    },
    "properties": {
      "reservations": {
        "items": {
          "$ref": "#/$defs/Reservation"
        },
        "title": "Reservations",
        "type": "array"
      }
    },
    "required": [
      "reservations"
    ],
    "title": "find_resource_conflictsArguments",
    "type": "object"
  },
  "outputSchema": {
    "additionalProperties": true,
    "title": "find_resource_conflictsDictOutput",
    "type": "object"
  },
  "icons": null,
  "annotations": {
    "title": null,
    "readOnlyHint": true,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "meta": null,
  "execution": null
}

Run the example to see the actual result.

HTTP alternative

POST https://app.getsupers.com/sites/agent-resource-conflicts/call
Content-Type: application/json

{
  "reservations": [
    {
      "id": "render-a",
      "start": 0,
      "end": 10,
      "resources": [
        "gpu",
        "workspace"
      ]
    },
    {
      "id": "render-b",
      "start": 5,
      "end": 12,
      "resources": [
        "gpu"
      ]
    },
    {
      "id": "export",
      "start": 10,
      "end": 15,
      "resources": [
        "workspace"
      ]
    }
  ]
}

The HTTP and MCP interfaces execute the same implementation. Validation errors are returned explicitly. See the tool notes above for its supported inputs and behavior.