{
  "id": "human.request_approval",
  "object": "tool",
  "name": "Ask for approval",
  "summary": "A page with Approve / Reject buttons.",
  "description": "Creates a hosted page asking a person to decide: your title and Markdown details, buttons (Approve / Reject by default, or your own options) and an optional comment. One answer per request. Collect it with human.wait.",
  "category": "inbox",
  "hosted_by": "Opentools",
  "runtime": "worker",
  "side_effects": true,
  "status": "live",
  "credits": 1,
  "price": "$0.0010",
  "providers": [
    {
      "id": "opentools",
      "name": "Opentools",
      "price": "$0.0010"
    }
  ],
  "mcp_name": "human_request_approval",
  "input_schema": {
    "type": "object",
    "properties": {
      "title": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200,
        "description": "The question, like “Approve refund of $240?”"
      },
      "body": {
        "description": "Details to decide on (Markdown; raw HTML is shown as text)",
        "type": "string",
        "maxLength": 20000
      },
      "options": {
        "default": [
          "Approve",
          "Reject"
        ],
        "description": "Buttons, in order",
        "minItems": 1,
        "maxItems": 6,
        "type": "array",
        "items": {
          "type": "string",
          "minLength": 1,
          "maxLength": 60
        }
      },
      "comment": {
        "default": true,
        "description": "Show a comment box",
        "type": "boolean"
      },
      "comment_required": {
        "default": false,
        "description": "Require a comment",
        "type": "boolean"
      },
      "expires_in_hours": {
        "default": 72,
        "description": "Hours until it expires (max 720)",
        "type": "integer",
        "minimum": 1,
        "maximum": 720
      }
    },
    "required": [
      "title"
    ]
  },
  "kind": "tool"
}