trackmcp
Back to directory
wipiano

github-mcp-lw

View on GitHub

GitHub MCP Lightweight

0 stars JavaScriptOthers Updated Jun 23, 2025

Documentation

GitHub MCP Lightweight

A lightweight GitHub MCP (Model Context Protocol) server optimized for efficient issue and pull request analysis. This server provides minimal response sizes by returning only essential fields, making it perfect for bulk analysis of GitHub repositories.

๐Ÿš€ Features

  • Lightweight responses: 90%+ smaller than full GitHub API responses
  • Essential data only: Returns only id, html_url, title, body, and comment bodies
  • Efficient bulk analysis: Optimized for processing large numbers of issues/PRs
  • Simple setup: Easy installation and configuration
  • Rate limit aware: Built-in GitHub API rate limiting awareness

๐Ÿ“ฆ Installation

bash
npm install -g @wipiano/github-mcp-lightweight

๐Ÿ”ง Configuration

1. Get a GitHub Personal Access Token

1. Go to GitHub Settings > Developer settings > Personal access tokens

2. Click "Generate new token (classic)"

3. Select the following scopes:

    4. Copy the generated token

    2. Configure MCP Settings

    Add the server to your MCP settings configuration file:

    For Cline/Claude Dev:

    Edit `~/.vscode-server/data/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`:

    json
    {
      "mcpServers": {
        "github-lightweight": {
          "command": "npx",
          "type": "stdio",
          "args": [
            "-y",
            "@wipiano/github-mcp-lightweight"
          ],
          "env": {
            "GITHUB_TOKEN": "ghp_your_personal_access_token_here"
          }
        }
      }
    }

    For Claude Desktop:

    Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or equivalent:

    json
    {
      "mcpServers": {
        "github-lightweight": {
          "command": "github-mcp-lightweight",
          "env": {
            "GITHUB_TOKEN": "ghp_your_personal_access_token_here"
          }
        }
      }
    }

    ๐Ÿ› ๏ธ Available Tools

    `list_repository_issues`

    List issues from a GitHub repository with minimal response size.

    Parameters:

    • `owner` (string, required): Repository owner (username or organization)
    • `repo` (string, required): Repository name
    • `since` (string, required): Only show issues updated at or after this time (ISO 8601 format)

    Example:

    json
    {
      "owner": "microsoft",
      "repo": "vscode",
      "since": "2024-01-01T00:00:00Z"
    }

    `list_repository_pull_requests`

    List pull requests from a GitHub repository with minimal response size.

    Parameters:

    • `owner` (string, required): Repository owner (username or organization)
    • `repo` (string, required): Repository name
    • `since` (string, required): Only show pull requests updated at or after this time (ISO 8601 format)

    Example:

    json
    {
      "owner": "microsoft",
      "repo": "vscode",
      "since": "2024-01-01T00:00:00Z"
    }

    ๐Ÿ“Š Response Format

    Both tools return a lightweight response containing only essential fields:

    json
    {
      "repository": "owner/repo",
      "since": "2024-01-01T00:00:00Z",
      "total_issues": 42,
      "issues": [
        {
          "id": 123456789,
          "html_url": "https://github.com/owner/repo/issues/1",
          "title": "Issue title",
          "body": "Issue description...",
          "comments": [
            "First comment body...",
            "Second comment body..."
          ]
        }
      ]
    }

    ๐Ÿ”„ Comparison with Full GitHub MCP

    FeatureFull GitHub MCPLightweight MCP
    Response size~50+ fields per issue5 fields per issue
    Bandwidth usageHighLow (90%+ reduction)
    Processing speedSlowerFaster
    Use caseComprehensive operationsBulk analysis
    Comment dataFull metadataBody text only

    ๐Ÿšจ Error Handling

    The server provides clear error messages for common issues:

    • 401 Unauthorized: Invalid or expired GitHub token
    • 403 Forbidden: Rate limit exceeded or insufficient permissions
    • 404 Not Found: Repository not found or access denied

    ๐Ÿ”’ Security Best Practices

    1. Token Storage: Store your GitHub token securely in environment variables

    2. Token Permissions: Use minimal required scopes for your use case

    3. Token Rotation: Regularly rotate your personal access tokens

    4. Environment Isolation: Use different tokens for different environments

    ๐Ÿ“ˆ Rate Limiting

    • GitHub allows 5,000 requests per hour for authenticated requests
    • The server is aware of rate limits and will provide appropriate error messages
    • For large repositories, consider using more specific `since` parameters to reduce API calls

    ๐Ÿ› Troubleshooting

    Server won't start

    • Verify `GITHUB_TOKEN` environment variable is set
    • Check token permissions include required scopes
    • Ensure token is not expired

    Authentication errors

    • Regenerate your GitHub personal access token
    • Verify token has access to the target repository
    • Check if repository is private and token has `repo` scope

    Empty responses

    • Verify repository exists and is accessible
    • Check `since` parameter isn't too recent
    • Ensure repository has issues/PRs updated after the `since` date

    ๐Ÿค Contributing

    Contributions are welcome! Please feel free to submit a Pull Request.

    ๐Ÿ“„ License

    MIT License - see LICENSE file for details.

    Frequently asked questions

    What is github-mcp-lw?

    github-mcp-lw is GitHub MCP Lightweight

    How do I install github-mcp-lw?

    Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

    Is github-mcp-lw open source?

    Yes โ€” it is hosted on GitHub at https://github.com/wipiano/github-mcp-lw.

    Related MCP tools

    Run your own MCP server? See who uses it and what to fix.

    Measure it with TrackMCP