A Model Context Protocol (MCP) server that provides read-only access to the GitHub REST API. This server allows you to interact with GitHub repositories, users, issues, pull requests, and more through a standardized interface.
- Read-only access to all GitHub REST API GET endpoints
- Pydantic models for type-safe request payloads
- Generic API client with comprehensive error handling
- Authentication support via GitHub Personal Access Tokens
- Rate limiting awareness and proper error handling
- Comprehensive endpoint coverage for all major GitHub API categories
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and install
git clone <repository-url>
cd mcp-github-readonly
uv syncpip install mcp-github-readonlySet your GitHub Personal Access Token as an environment variable:
export GITHUB_TOKEN="your_github_token_here"Or create a .env file:
GITHUB_TOKEN=your_github_token_here
Add the server to your MCP client configuration:
{
"servers": {
"github-readonly": {
"command": "mcp-github-readonly"
}
}
}- Repositories: Repository information, contents, branches, releases
- Issues: Issues, comments, labels, milestones
- Pull Requests: PRs, reviews, comments
- Users: User profiles, organizations, followers
- Organizations: Organization data, members, teams
- Actions: Workflows, runs, artifacts
- Apps: GitHub Apps information
- Git Database: Git objects and references
MIT License