Open Context Protocol is live! 🚀 Read the launch post
pullsListReviewComments

pullsListReviewComments

List review comments on a pull request

Details

  • Method: GET
  • Path: /repos/{owner}/{repo}/pulls/{pull_number}/comments
  • Operation ID: pulls/list-review-comments

Parameters

{
  "owner": {
    "description": "The account owner of the repository. The name is not case sensitive.",
    "required": true,
    "location": "path",
    "type": "string"
  },
  "repo": {
    "description": "The name of the repository without the `.git` extension. The name is not case sensitive.",
    "required": true,
    "location": "path",
    "type": "string"
  },
  "pull_number": {
    "description": "The number that identifies the pull request.",
    "required": true,
    "location": "path",
    "type": "integer"
  },
  "sort": {
    "description": "The property to sort the results by.",
    "required": false,
    "location": "query",
    "type": "string",
    "enum": [
      "created",
      "updated"
    ]
  },
  "direction": {
    "description": "The direction to sort results. Ignored without `sort` parameter.",
    "required": false,
    "location": "query",
    "type": "string",
    "enum": [
      "asc",
      "desc"
    ]
  },
  "since": {
    "description": "Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.",
    "required": false,
    "location": "query",
    "type": "string",
    "format": "date-time"
  },
  "per_page": {
    "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"",
    "required": false,
    "location": "query",
    "type": "integer"
  },
  "page": {
    "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"",
    "required": false,
    "location": "query",
    "type": "integer"
  }
}

Response Schema

{
  "type": "array",
  "items": {
    "title": "Pull Request Review Comment",
    "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.",
    "type": "object",
    "properties": {
      "url": {
        "description": "URL for the pull request review comment",
        "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1",
        "type": "string"
      },
      "pull_request_review_id": {
        "description": "The ID of the pull request review to which the comment belongs.",
        "type": "integer",
        "format": "int64",
        "example": 42,
        "nullable": true
      },
      "id": {
        "description": "The ID of the pull request review comment.",
        "type": "integer",
        "format": "int64",
        "example": 1
      },
      "node_id": {
        "description": "The node ID of the pull request review comment.",
        "type": "string",
        "example": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw"
      },
      "diff_hunk": {
        "description": "The diff of the line that the comment refers to.",
        "type": "string",
        "example": "@@ -16,33 +16,40 @@ public class Connection : IConnection..."
      },
      "path": {
        "description": "The relative path of the file to which the comment applies.",
        "example": "config/database.yaml",
        "type": "string"
      },
      "position": {
        "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.",
        "example": 1,
        "type": "integer"
      },
      "original_position": {
        "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.",
        "example": 4,
        "type": "integer"
      },
      "commit_id": {
        "description": "The SHA of the commit to which the comment applies.",
        "example": "6dcb09b5b57875f334f61aebed695e2e4193db5e",
        "type": "string"
      },
      "original_commit_id": {
        "description": "The SHA of the original commit to which the comment applies.",
        "example": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840",
        "type": "string"
      },
      "in_reply_to_id": {
        "description": "The comment ID to reply to.",
        "example": 8,
        "type": "integer"
      },
      "user": {
        "title": "Simple User",
        "description": "A GitHub user.",
        "type": "object",
        "properties": {
          "name": {
            "nullable": true,
            "type": "string"
          },
          "email": {
            "nullable": true,
            "type": "string"
          },
          "login": {
            "type": "string",
            "example": "octocat"
          },
          "id": {
            "type": "integer",
            "format": "int64",
            "example": 1
          },
          "node_id": {
            "type": "string",
            "example": "MDQ6VXNlcjE="
          },
          "avatar_url": {
            "type": "string",
            "format": "uri",
            "example": "https://github.com/images/error/octocat_happy.gif"
          },
          "gravatar_id": {
            "type": "string",
            "example": "41d064eb2195891e12d0413f63227ea7",
            "nullable": true
          },
          "url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat"
          },
          "html_url": {
            "type": "string",
            "format": "uri",
            "example": "https://github.com/octocat"
          },
          "followers_url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat/followers"
          },
          "following_url": {
            "type": "string",
            "example": "https://api.github.com/users/octocat/following{/other_user}"
          },
          "gists_url": {
            "type": "string",
            "example": "https://api.github.com/users/octocat/gists{/gist_id}"
          },
          "starred_url": {
            "type": "string",
            "example": "https://api.github.com/users/octocat/starred{/owner}{/repo}"
          },
          "subscriptions_url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat/subscriptions"
          },
          "organizations_url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat/orgs"
          },
          "repos_url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat/repos"
          },
          "events_url": {
            "type": "string",
            "example": "https://api.github.com/users/octocat/events{/privacy}"
          },
          "received_events_url": {
            "type": "string",
            "format": "uri",
            "example": "https://api.github.com/users/octocat/received_events"
          },
          "type": {
            "type": "string",
            "example": "User"
          },
          "site_admin": {
            "type": "boolean"
          },
          "starred_at": {
            "type": "string",
            "example": "\"2020-07-09T00:17:55Z\""
          },
          "user_view_type": {
            "type": "string",
            "example": "public"
          }
        },
        "required": [
          "avatar_url",
          "events_url",
          "followers_url",
          "following_url",
          "gists_url",
          "gravatar_id",
          "html_url",
          "id",
          "node_id",
          "login",
          "organizations_url",
          "received_events_url",
          "repos_url",
          "site_admin",
          "starred_url",
          "subscriptions_url",
          "type",
          "url"
        ],
        "nullable": true
      },
      "body": {
        "description": "The text of the comment.",
        "example": "We should probably include a check for null values here.",
        "type": "string"
      },
      "created_at": {
        "type": "string",
        "format": "date-time",
        "example": "2011-04-14T16:00:49Z"
      },
      "updated_at": {
        "type": "string",
        "format": "date-time",
        "example": "2011-04-14T16:00:49Z"
      },
      "html_url": {
        "description": "HTML URL for the pull request review comment.",
        "type": "string",
        "format": "uri",
        "example": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1"
      },
      "pull_request_url": {
        "description": "URL for the pull request that the review comment belongs to.",
        "type": "string",
        "format": "uri",
        "example": "https://api.github.com/repos/octocat/Hello-World/pulls/1"
      },
      "author_association": {
        "title": "author_association",
        "type": "string",
        "example": "OWNER",
        "description": "How the author is associated with the repository.",
        "enum": [
          "COLLABORATOR",
          "CONTRIBUTOR",
          "FIRST_TIMER",
          "FIRST_TIME_CONTRIBUTOR",
          "MANNEQUIN",
          "MEMBER",
          "NONE",
          "OWNER"
        ]
      },
      "_links": {
        "type": "object",
        "properties": {
          "self": {
            "type": "object",
            "properties": {
              "href": {
                "type": "string",
                "format": "uri",
                "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1"
              }
            },
            "required": [
              "href"
            ]
          },
          "html": {
            "type": "object",
            "properties": {
              "href": {
                "type": "string",
                "format": "uri",
                "example": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1"
              }
            },
            "required": [
              "href"
            ]
          },
          "pull_request": {
            "type": "object",
            "properties": {
              "href": {
                "type": "string",
                "format": "uri",
                "example": "https://api.github.com/repos/octocat/Hello-World/pulls/1"
              }
            },
            "required": [
              "href"
            ]
          }
        },
        "required": [
          "self",
          "html",
          "pull_request"
        ]
      },
      "start_line": {
        "type": "integer",
        "description": "The first line of the range for a multi-line comment.",
        "example": 2,
        "nullable": true
      },
      "original_start_line": {
        "type": "integer",
        "description": "The first line of the range for a multi-line comment.",
        "example": 2,
        "nullable": true
      },
      "start_side": {
        "type": "string",
        "description": "The side of the first line of the range for a multi-line comment.",
        "enum": [
          "LEFT",
          "RIGHT"
        ],
        "default": "RIGHT",
        "nullable": true
      },
      "line": {
        "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment",
        "example": 2,
        "type": "integer"
      },
      "original_line": {
        "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment",
        "example": 2,
        "type": "integer"
      },
      "side": {
        "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment",
        "enum": [
          "LEFT",
          "RIGHT"
        ],
        "default": "RIGHT",
        "type": "string"
      },
      "subject_type": {
        "description": "The level at which the comment is targeted, can be a diff line or a file.",
        "type": "string",
        "enum": [
          "line",
          "file"
        ]
      },
      "reactions": {
        "title": "Reaction Rollup",
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "format": "uri"
          },
          "total_count": {
            "type": "integer"
          },
          "+1": {
            "type": "integer"
          },
          "-1": {
            "type": "integer"
          },
          "laugh": {
            "type": "integer"
          },
          "confused": {
            "type": "integer"
          },
          "heart": {
            "type": "integer"
          },
          "hooray": {
            "type": "integer"
          },
          "eyes": {
            "type": "integer"
          },
          "rocket": {
            "type": "integer"
          }
        },
        "required": [
          "url",
          "total_count",
          "+1",
          "-1",
          "laugh",
          "confused",
          "heart",
          "hooray",
          "eyes",
          "rocket"
        ]
      },
      "body_html": {
        "type": "string",
        "example": "\"<p>comment body</p>\""
      },
      "body_text": {
        "type": "string",
        "example": "\"comment body\""
      }
    },
    "required": [
      "url",
      "id",
      "node_id",
      "pull_request_review_id",
      "diff_hunk",
      "path",
      "commit_id",
      "original_commit_id",
      "user",
      "body",
      "created_at",
      "updated_at",
      "html_url",
      "pull_request_url",
      "author_association",
      "_links"
    ]
  }
}

Usage

from ocp_agent import OCPAgent

agent = OCPAgent()
await agent.register_api('github')

# Call this tool
result = await agent.call_tool('pullsListReviewComments', {
    # Add required parameters here
})