my-github-mcp-server
by amotarao
README.md
# my-github-mcp-server
A GitHub MCP (Model Context Protocol) server implementation that provides tools for interacting with GitHub repositories, issues, pull requests, and user information.
## Features
This MCP server provides the following tools:
- **get_parent_of_sub_issue**: Get the parent issue of a sub-issue using GitHub Sub-Issues API
- **list_sub_issues**: List sub-issues for a GitHub issue with pagination and filtering support
- **get_id_of_issue**: Get the internal GitHub issue ID from an issue number
- **get_ids_of_issues**: Get the internal GitHub issue IDs from multiple issue numbers with batch processing support
- **add_sub_issues**: Add multiple sub-issues to a GitHub issue using GitHub Sub-Issues API with batch processing support
- **remove_sub_issues**: Remove multiple sub-issues from a GitHub issue using GitHub Sub-Issues API with batch processing support
- **set_milestone_for_issues**: Set milestone for multiple GitHub issues with batch processing support
## Installation
```bash
pnpm install
pnpm build
```
## Usage
### Local Development
```bash
pnpm dev
```
### Production
```bash
pnpm start
```
## Configuration
The server supports optional GitHub API authentication via environment variables:
- `GITHUB_PERSONAL_ACCESS_TOKEN`: GitHub personal access token for authenticated requests (optional, but recommended for higher rate limits)
## MCP Integration
### Claude Desktop Configuration
Add to your Claude Desktop configuration file:
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
**Linux**: `~/.config/claude/claude_desktop_config.json`
### Server URLs
- **Production**: `https://amon-github-mcp-server.vercel.app/mcp`
- **Local Development**: `http://localhost:3000/mcp`
### Configuration
```json
{
"mcpServers": {
"github": {
"type": "http",
"url": "SERVER_URL_HERE",
"headers": {
"X-GITHUB-TOKEN": "your_github_personal_access_token_here"
}
}
}
}
```
Replace `SERVER_URL_HERE` with the appropriate URL from the Server URLs section above.
### Authentication
The server reads the GitHub token from the `X-GITHUB-TOKEN` header in HTTP requests. The token should be provided as the raw token value without any prefix.
Without a token, the server works with GitHub's public API with standard rate limits.
## Deployment
This server is configured for deployment on Vercel. The `vercel.json` configuration file is included.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues