JUHE API Marketplace
jar285 avatar
MCP Server

GitHub Repository Analyzer

Enables Large Language Models to analyze GitHub repositories in real-time, providing tools for retrieving repository information, analyzing issues, accessing documentation, and visualizing activity.

0
GitHub Stars
8/23/2025
Last Updated
No Configuration
Please check the documentation below.

README Documentation

GitHub Repository Analyzer MCP Server

A Model Context Protocol (MCP) server that enables Large Language Models to analyze GitHub repositories in real-time. This server provides tools for retrieving repository information, analyzing issues, accessing documentation, and visualizing activity.

Features

  • Repository Information Tool: Retrieve basic metadata about GitHub repositories
  • Issue Analysis Tool: List and categorize repository issues
  • README Access Resource: Access repository documentation
  • Commit History Tool: Analyze recent code changes
  • Activity Analysis Tool: Calculate repository activity metrics
  • Visualization Tool: Create visual charts of repository activity

Prerequisites

  • Python 3.10 or higher
  • GitHub account and Personal Access Token

Installation

  1. Clone this repository:
git clone <repository-url>
cd github-repo-analyzer
  1. Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Create a .env file with your GitHub API token:
cp .env.example .env

Edit the .env file and replace your_github_token_here with your actual GitHub Personal Access Token.

Usage

Running the Server

To start the server in development mode with the MCP Inspector:

mcp dev src/server.py

This will open a web interface in your browser where you can test the server's tools.

Registering with Claude Desktop

To register the server with Claude Desktop:

mcp install src/server.py

After registering, restart Claude Desktop. You can then interact with the GitHub Repository Analyzer by asking Claude questions about GitHub repositories.

Example Prompts for Claude

  • "Can you analyze the GitHub repository 'modelcontextprotocol/python-sdk' and tell me about its purpose and activity level?"
  • "What are the top 5 open issues in the 'openai/openai-python' repository?"
  • "How active has the 'anthropics/anthropic-sdk-python' repository been in the last 30 days?"
  • "Please read the README of the 'microsoft/TypeScript' repository and explain its main features."
  • "Generate a chart showing the commit activity for 'facebook/react' over the last 60 days."

Development

Project Structure

github-repo-analyzer/
├── src/
│   ├── github_tools.py  # GitHub API client implementation
│   └── server.py        # MCP server implementation
├── requirements.txt     # Dependencies
├── .env.example         # Example environment variables
├── .gitignore           # Git ignore file
└── README.md            # Project documentation

Adding New Tools

To add a new tool to the server, follow these steps:

  1. Add the necessary functionality to the GitHubAPIClient class in github_tools.py
  2. Register the tool with the MCP server in server.py using the @server.tool decorator
  3. Test the tool using the MCP Inspector

Testing

To test the server, use the MCP Inspector as described in the Usage section. You can also write unit tests for the GitHub API client functionality.

Security Considerations

  • Never commit your GitHub API token to version control
  • Use the minimum required scopes for your GitHub token
  • Be mindful of GitHub API rate limits

License

MIT License

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source