About GitHub MCP Server
A Python MCP server that uses GitHub's REST API to retrieve user and repository information. It also supports authenticated-user lookups using a personal access token.
Key features
- 01Fetch user information by username
- 02Retrieve repository details
- 03Get authenticated-user details
- 04Make asynchronous API calls with httpx
Use cases
- 01Look up a GitHub user's information
- 02Inspect details for a repository
- 03Retrieve the account associated with a personal access token
MCP support
Exposes GitHub user and repository lookups to MCP clients through tools implemented with FastMCP.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEGitHub MCP Server
Overview
GitHub MCP Server is an API-based tool that interacts with GitHub using the MCP (Modular Command Processor) framework. It provides various functionalities, including fetching user details, repository information, and authenticated user data using GitHub's REST API.
This project is built using Python and leverages httpx for asynchronous API calls. It also uses dotenv for secure handling of GitHub authentication tokens.
Features
- Fetch GitHub user information by username.
- Retrieve details of a GitHub repository.
- Get authenticated user details using a GitHub personal access token.
- Utilizes
FastMCPfor modular command processing.
Project Structure
D:/MCP_Project/
|----.env
│----.gitignore
│----claude_desktop_config.json (Create this file in C:\Users\your_username\AppData\Roaming\Claude\)
│----main.py
│----pyproject.toml
│----README.md
│----requirements.txt
main.py: Core logic of the GitHub MCP Server..env: Stores environment variables (e.g., GitHub Token).claude_desktop_config.json: Configuration for running the MCP Server.requirements.txt: Lists required dependencies.explanation_video.mp4: A video explaining the project.
Setup Instructions
Prerequisites
- Python >=3.10
- GitHub personal access token (for authenticated requests)
condaorvenvfor virtual environment management
Setup and Usage
- Clone the Repository
git clone https://github.com/DivyanshKushwaha/GitHub-MCP-Server-Claude.git cd GitHub-MCP-Server-Claude - Create Python environment
python -m venv venv
source venv/bin/activate
- Install Dependencies
pip install -r requirements.txt
- Set Up Environment Variables (Create .env file)
GITHUB_TOKEN=your_personal_access_token
- Setup claude_desktop_config.json
{
"mcpServers": {
"MCP_Server": {
"command": "my_env/Scripts/uv",
"args": [
"run",
"D:/MCP_Project/main.py"
]
}
}
}
-
The command key specifies the path to the uv script located in the conda environment. This is used to run the server.
-
The args key provides additional arguments for the uv script:
- "run": Indicates the action to run the server.
- my_env : python environment 'my_env'
- "D:/MCP_Project/main.py": Specifies the path to the main.py script, which contains the implementation of the MCP server.
- Launch the Claude Desktop Application
- Open the Claude Desktop Application.
- It will use the MCP Server as configured in the claude_desktop_config.json file to fetch and process data.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.