get_pull_request_comments
Retrieve review comments from a specific pull request on GitHub. Input the repository owner, repository name, and pull request number to access detailed feedback and discussions.
Instructions
Get the review comments on a pull request
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| owner | Yes | Repository owner (username or organization) | |
| pull_number | Yes | Pull request number | |
| repo | Yes | Repository name |
Implementation Reference
- operations/pulls.ts:266-275 (handler)The core handler function that fetches review comments for a pull request using the GitHub API and parses the response with Zod.export async function getPullRequestComments( owner: string, repo: string, pullNumber: number ): Promise<z.infer<typeof PullRequestCommentSchema>[]> { const response = await githubRequest( `https://api.github.com/repos/${owner}/${repo}/pulls/${pullNumber}/comments` ); return z.array(PullRequestCommentSchema).parse(response); }
- index.ts:191-194 (registration)Tool registration in the MCP server's list of tools, including name, description, and input schema reference.name: "get_pull_request_comments", description: "Get the review comments on a pull request", inputSchema: zodToJsonSchema(pulls.GetPullRequestCommentsSchema) },
- index.ts:558-564 (handler)MCP server dispatcher case that parses arguments, calls the getPullRequestComments handler, and formats the response.case "get_pull_request_comments": { const args = pulls.GetPullRequestCommentsSchema.parse(request.params.arguments); const comments = await pulls.getPullRequestComments(args.owner, args.repo, args.pull_number); return { content: [{ type: "text", text: JSON.stringify(comments, null, 2) }], }; }
- operations/pulls.ts:150-154 (schema)Zod input schema defining parameters for the get_pull_request_comments tool: owner, repo, pull_number.export const GetPullRequestCommentsSchema = z.object({ owner: z.string().describe("Repository owner (username or organization)"), repo: z.string().describe("Repository name"), pull_number: z.number().describe("Pull request number") });