GitHub PR Comments MCP Server
by shaileshahuja
Verified
# GitHub PR Comments MCP Server
[](https://smithery.ai/server/github-pr-mcp)
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](https://smithery.ai/server/github-pr-mcp):
```bash
npx -y @smithery/cli install github-pr-mcp --client claude
```
### Installing Manually
1. Clone the repository
2. Install dependencies:
```
npm install
```
3. Create a `.env` file with your GitHub token:
```
GITHUB_TOKEN=your_github_token_here
```
## Usage
1. Build the project:
```
npm run build
```
2. Run the server:
```
npm start
```
Or directly with a GitHub token:
```
node dist/server.js your_github_token_here
```
3. The server exposes a tool called `get_pr_comments` that accepts the following parameters:
- `owner`: Repository owner (username or organization)
- `repo`: Repository name
- `pull_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:
1. Build the project:
```
npm run build
```
2. 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:
```json
{
"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