← WebMCP Directory

Tool tree

hunk-webmcp.vercel.app

Developer ToolsTools verified
Website
Hunk — same diff. You submit. Human + agent review a real GitHub pull request.
Explore capabilities
    import_prAction

    Load a public GitHub pull request into Hunk. Pass a github.com PR URL, owner/repo#number, or owner + repo + number. Replaces the current diff and clears draft comments. Does not submit a review.

    View tool JSON
    {
      "name": "import_pr",
      "kind": "act",
      "impl": "imperative",
      "description": "Load a public GitHub pull request into Hunk. Pass a github.com PR URL, owner/repo#number, or owner + repo + number. Replaces the current diff and clears draft comments. Does not submit a review.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "url": {
            "type": "string",
            "description": "https://github.com/owner/repo/pull/123 or owner/repo#123"
          },
          "owner": {
            "type": "string"
          },
          "repo": {
            "type": "string"
          },
          "number": {
            "type": "number"
          }
        }
      }
    }
    list_filesAnswer

    List files in the loaded pull request with additions, deletions, and hunk counts.

    View tool JSON
    {
      "name": "list_files",
      "kind": "answer",
      "impl": "imperative",
      "description": "List files in the loaded pull request with additions, deletions, and hunk counts.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    open_fileAction

    Select a file in the diff viewer so the human can see it.

    View tool JSON
    {
      "name": "open_file",
      "kind": "act",
      "impl": "imperative",
      "description": "Select a file in the diff viewer so the human can see it.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path"
        ],
        "properties": {
          "path": {
            "type": "string",
            "description": "File path in the pull request"
          }
        }
      }
    }
    get_hunksAnswer

    Return parsed diff hunks for a file (@@ headers and start lines). Parse happens client-side.

    View tool JSON
    {
      "name": "get_hunks",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return parsed diff hunks for a file (@@ headers and start lines). Parse happens client-side.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path"
        ],
        "properties": {
          "path": {
            "type": "string"
          }
        }
      }
    }
    goto_hunkAction

    Jump the diff viewer to a hunk by file path and start_line (the + side start from the @@ header).

    View tool JSON
    {
      "name": "goto_hunk",
      "kind": "act",
      "impl": "imperative",
      "description": "Jump the diff viewer to a hunk by file path and start_line (the + side start from the @@ header).",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "start_line"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "start_line": {
            "type": "number"
          }
        }
      }
    }
    add_commentAction

    Draft a line comment as the agent. Does NOT submit the review. The human must click Submit review. Refused after the review is sealed.

    View tool JSON
    {
      "name": "add_comment",
      "kind": "act",
      "impl": "imperative",
      "description": "Draft a line comment as the agent. Does NOT submit the review. The human must click Submit review. Refused after the review is sealed.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "line",
          "body"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "line": {
            "type": "number",
            "description": "Line number on the chosen side"
          },
          "body": {
            "type": "string"
          },
          "side": {
            "type": "string",
            "enum": [
              "RIGHT",
              "LEFT"
            ],
            "description": "RIGHT for additions/context, LEFT for deletions"
          }
        }
      }
    }
    list_commentsAnswer

    List draft line comments and the current verdict. Comments stay draft until a human submits.

    View tool JSON
    {
      "name": "list_comments",
      "kind": "answer",
      "impl": "imperative",
      "description": "List draft line comments and the current verdict. Comments stay draft until a human submits.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {}
      }
    }
    set_verdictAction

    Set the draft review verdict: comment, request_changes, or approve. Does NOT submit. Still a draft. The human submits.

    View tool JSON
    {
      "name": "set_verdict",
      "kind": "act",
      "impl": "imperative",
      "description": "Set the draft review verdict: comment, request_changes, or approve. Does NOT submit. Still a draft. The human submits.",
      "inputSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "verdict"
        ],
        "properties": {
          "verdict": {
            "type": "string",
            "enum": [
              "comment",
              "request_changes",
              "approve"
            ]
          }
        }
      }
    }