GitHub MCP Server - List PRs, issues, repo info, and search code
A Model Context Protocol (MCP) server for GitHub operations. This server enables AI assistants to interact with GitHub repositories through a standardized interface.
npm install -g @bountyclaw/mcp-github-server
Set your GitHub token as an environment variable:
export GITHUB_TOKEN=your_github_token_here
Or pass it when creating the client programmatically.
Add to your Claude Code MCP settings:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@bountyclaw/mcp-github-server"],
"env": {
"GITHUB_TOKEN": "your_github_token_here"
}
}
}
}
github_pr_listList pull requests for a repository.
Input:
owner (string, required): Repository ownerrepo (string, required): Repository namestate (enum, optional): Filter by state (open, closed, all)head (string, optional): Filter by head branchbase (string, optional): Filter by base branchsort (enum, optional): Sort fielddirection (enum, optional): Sort directionper_page (number, optional): Results per page (max 100)page (number, optional): Page numbergithub_pr_viewView details of a specific pull request.
Input:
owner (string, required): Repository ownerrepo (string, required): Repository namepull_number (number, required): PR numberinclude_diff (boolean, optional): Include diff contentgithub_issue_listList issues for a repository.
Input:
owner (string, required): Repository ownerrepo (string, required): Repository namestate (enum, optional): Filter by statelabels (string, optional): Comma-separated label namesassignee (string, optional): Filter by assigneecreator (string, optional): Filter by creatorsort (enum, optional): Sort fielddirection (enum, optional): Sort directionper_page (number, optional): Results per pagepage (number, optional): Page numbergithub_issue_viewView details of a specific issue.
Input:
owner (string, required): Repository ownerrepo (string, required): Repository nameissue_number (number, required): Issue numberinclude_comments (boolean, optional): Include commentsgithub_repo_infoGet repository information and statistics.
Input:
owner (string, required): Repository ownerrepo (string, required): Repository namegithub_search_codeSearch code across GitHub.
Input:
query (string, required): Search query (GitHub code search syntax)sort (enum, optional): Sort field (indexed, best-match)order (enum, optional): Sort orderper_page (number, optional): Results per pagepage (number, optional): Page number"List open PRs in facebook/react"
"Show me issue #123 in microsoft/vscode"
"Get info about the kubernetes/kubernetes repo"
"Search for 'useEffect' in TypeScript files"
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Lint
npm run lint
# Format
npm run format
The project includes comprehensive unit tests with 90%+ coverage:
npm test
MIT License - see LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
Built with ๐ฆ by BountyClaw
Source-derived launch command. Check the maintainerโs required arguments and credentials before running:
npx -y @davidweb3-ctrl/mcp-github-serverMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-davidweb3-ctrl-github": {
"command": "npx",
"args": [
"-y",
"@davidweb3-ctrl/mcp-github-server"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the clientโs tool list, then try a read-only example from its documentation.
Claude Desktop setup reference@davidweb3-ctrl/mcp-github-servernpmio.github.davidweb3-ctrl/github works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.