Provides access to GitHub repository contents, allowing browsing and reading files from specified repositories, navigating directories, and supporting branch-specific file access.
MCP GitHub Repository Server
An MCP (Model Context Protocol) server that provides access to GitHub repository contents. This server allows AI assistants to browse and read files from specified GitHub repositories.
Demo

Related MCP server: GitHub MCP Server
Features
Resources
Access any file in a GitHub repository via URI
List repository contents and navigate directories
Support for branch-specific file access
File contents are served as plain text
Resource URIs
Base URL format:
https://api.github.com/repos/{owner}/{repo}/contents/{path}Supports both files and directories
Files are served with
text/plainMIME typeDirectories are served with
application/x-directoryMIME type
Configuration
The server requires the following environment variables:
Development
Install dependencies:
Build the server:
For development with auto-rebuild:
Installation
To use with Claude Desktop, add the server configuration:
Config Location
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
API Implementation
The server implements three main MCP endpoints:
ListResources- Lists files and directories in the repositoryReadResource- Retrieves contents of a specific file
Authentication
The server uses GitHub Personal Access Token for authentication. Make sure your token has appropriate permissions to access the repository contents.
Error Handling
The server includes error handling for:
Missing environment variables
GitHub API errors
Invalid paths (e.g., trying to read a directory as a file)
Authentication failures
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. Use the MCP Inspector for debugging:
This will provide a URL to access debugging tools in your browser.
Security Notes
Keep your GitHub Personal Access Token secure
Consider using tokens with minimal required permissions
Be aware of repository size limitations when accessing large repositories
License
MIT