{
  "annotations": {
    "title": "Write operations (create, submit, delete) on pull request reviews."
  },
  "description": "Create and/or submit, delete review of a pull request.\n\nAvailable methods:\n- create: Create a new review of a pull request. If \"event\" parameter is provided, the review is submitted. If \"event\" is omitted, a pending review is created.\n- submit_pending: Submit an existing pending review of a pull request. This requires that a pending review exists for the current user on the specified pull request. The \"body\" and \"event\" parameters are used when submitting the review.\n- delete_pending: Delete an existing pending review of a pull request. This requires that a pending review exists for the current user on the specified pull request.\n- resolve_thread: Resolve a review thread. Requires only \"threadId\" parameter with the thread's node ID (e.g., PRRT_kwDOxxx). The owner, repo, and pullNumber parameters are not used for this method. Resolving an already-resolved thread is a no-op.\n- unresolve_thread: Unresolve a previously resolved review thread. Requires only \"threadId\" parameter. The owner, repo, and pullNumber parameters are not used for this method. Unresolving an already-unresolved thread is a no-op.\n",
  "inputSchema": {
    "properties": {
      "body": {
        "description": "Review comment text",
        "type": "string"
      },
      "commitID": {
        "description": "SHA of commit to review",
        "type": "string"
      },
      "event": {
        "description": "Review action to perform.",
        "enum": [
          "APPROVE",
          "REQUEST_CHANGES",
          "COMMENT"
        ],
        "type": "string"
      },
      "method": {
        "description": "The write operation to perform on pull request review.",
        "enum": [
          "create",
          "submit_pending",
          "delete_pending",
          "resolve_thread",
          "unresolve_thread"
        ],
        "type": "string"
      },
      "owner": {
        "description": "Repository owner",
        "type": "string"
      },
      "pullNumber": {
        "description": "Pull request number",
        "type": "number"
      },
      "repo": {
        "description": "Repository name",
        "type": "string"
      },
      "threadId": {
        "description": "The node ID of the review thread (e.g., PRRT_kwDOxxx). Required for resolve_thread and unresolve_thread methods. Get thread IDs from pull_request_read with method get_review_comments.",
        "type": "string"
      }
    },
    "required": [
      "method",
      "owner",
      "repo",
      "pullNumber"
    ],
    "type": "object"
  },
  "name": "pull_request_review_write"
}