github-pr-mcp
Fetches comments from GitHub Pull Requests, including details about file paths and replies, utilizing the GitHub API for structured data access.
Author

shaileshahuja
Quick Info
Actions
Tags
GitHub PR Comments MCP Server
This is a Model Context Protocol (MCP) server that fetches GitHub Pull Request comments using a GitHub personal access token.
Features
- Fetches PR comments with file paths, line ranges, and replies
- Uses GitHub API via Octokit
- Implements MCP server with StdioServerTransport
- Returns comments in a structured JSON format
Installation
Installing via Smithery
To install github-pr-mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install github-pr-mcp --client claude
Installing Manually
- Clone the repository
- Install dependencies:
npm install
- Create a
.envfile with your GitHub token:
GITHUB_TOKEN=your_github_token_here
Usage
- Build the project:
npm run build
- Run the server:
npm start
Or directly with a GitHub token:
node dist/server.js your_github_token_here
- The server exposes a tool called
get_pr_commentsthat accepts the following parameters: owner: Repository owner (username or organization)repo: Repository namepull_number: Pull request number
Integration with Cursor
To integrate with Cursor, use the following command in Cursor's MCP server configuration:
node /path/to/dist/server.js your_github_token_here
Replace /path/to with the actual path to your project, and your_github_token_here with your GitHub personal access token.
Testing
A test client is included to verify the server functionality:
- Build the project:
npm run build
- Run the test client:
npm test
The test client will start the server, connect to it, and call the get_pr_comments tool with sample parameters.
Response Format
The server returns comments in the following format:
{
"comments": [
{
"id": 123456789,
"path": "src/example.js",
"body": "This is a comment on a specific line",
"line": 42,
"start_line": 40,
"user": {
"login": "username"
},
"created_at": "2023-01-01T00:00:00Z",
"replies": [
{
"id": 987654321,
"body": "This is a reply to the comment",
"user": {
"login": "another-username"
},
"created_at": "2023-01-02T00:00:00Z"
}
]
}
]
}
Development
To run the server in development mode:
npm run dev
License
ISC
