GitHub Integration
STDIOMulti-Claude Program for interacting with GitHub APIs through Claude Desktop.
Multi-Claude Program for interacting with GitHub APIs through Claude Desktop.
A Multi-Claude Program (MCP) for interacting with GitHub APIs through Claude Desktop.
Clone this repository:
git clone https://github.com/yourusername/github-mcp.git cd github-mcp
Create and activate a virtual environment:
# On macOS/Linux python -m venv venv source venv/bin/activate # On Windows python -m venv venv .\venv\Scripts\activate
Install dependencies:
pip install -r requirements.txt
Create a .env
file in the project root:
touch .env
Add your GitHub credentials to the .env
file:
GITHUB_TOKEN=your_personal_access_token_here
GITHUB_USERNAME=your_github_username
Test the installation:
# Run all tests python -m pytest # Run a specific test file python -m pytest tests/test_search_repos.py
Start the MCP server:
python run.py
You'll need a fine-grained personal access token to authenticate with GitHub:
Search for GitHub repositories using various criteria.
Parameters:
Create a new GitHub issue in a specified repository.
Parameters:
Create a new pull request.
Parameters:
Update repository settings and configurations.
Parameters:
Search for issues across repositories.
Parameters:
Manage GitHub Actions workflows.
Parameters:
Manage repository collaborators.
Parameters:
# Search for repositories search_repos(query="python web framework", sort="stars", max_results=5) # Create a new issue create_issue( owner="username", repo="repository", title="Bug: Login not working", body="Users cannot log in using the login button", labels=["bug", "high-priority"] ) # Create a pull request create_pull_request( owner="username", repo="repository", title="Feature: Add user authentication", body="Implements JWT-based authentication", head="feature/auth", base="main" ) # Search for issues search_issues(query="is:open is:issue author:username", max_results=10) # Manage repository settings manage_repo_settings( owner="username", repo="repository", settings={ "has_issues": True, "has_projects": True, "has_wiki": True } )
# Run all tests python -m pytest # Run with coverage python -m pytest --cov=src tests/ # Run specific test file python -m pytest tests/test_search_repos.py
src/tools/
src/main.py
tests/
MIT License