GitHub MCP Server

by melythemev

3 stars
168 downloads
Not rated
GitHub Website

About

This repository provides a robust MCP (Model Context Protocol), A2A server, enabling advanced file operations, repository management, and search. It features modular integrations for token analytics and social sentiment analysis, making it ideal for developers and analysts seekin

Details

Author
melythemev
GitHub stars
3
Downloads
168
Categories
Developer Tools

- Automatic branch creation as needed
- Comprehensive error handling with clear messages
- Git history preservation during operations
- Batch operations for single and multi-file changes
- Advanced search across code, issues/PRs, and users

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name GitHub MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Requires a GitHub Personal Access Token with appropriate permissions. The server can be run via Docker (mcp/github image) or NPX (@modelcontextprotocol/server-github), passing the token as an environment variable. Configure it in your MCP client (e.g., Claude Desktop) as shown in the setup examples.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "github mcp server": {
            "NexyA2A": {
                "command": "docker",
                "args": [
                    "build",
                    "-t",
                    "mcp/github",
                    "-f",
                    "src/github/Dockerfile",
                    "."
                ]
            }
        }
    }
}

McpServers

{
    "NexyA2A": {
        "command": "docker",
        "args": [
            "build",
            "-t",
            "mcp/github",
            "-f",
            "src/github/Dockerfile",
            "."
        ]
    }
}

GitHub MCP Server

> Deprecation Notice:
> Development for this project has been moved to github/github-mcp-server.

---

Overview

MCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.

---

Architecture

flowchart TD
    User[User/Client] -->|API Request| MCPServer[MCP Server]
    MCPServer -->|GitHub API| GitHub[GitHub]
    MCPServer -->|File Ops| FileSystem[(File System)]
    MCPServer -->|Service: nexy-cron| NexyCron[nexy-cron Service]
    MCPServer -->|Service: SocialNexy| SocialNexy[SocialNexy Service]

---

Features

- Automatic Branch Creation: Branches are created as needed.
- Comprehensive Error Handling: Clear error messages for common issues.
- Git History Preservation: Maintains proper Git history.
- Batch Operations: Supports single and multi-file operations.
- Advanced Search: Search code, issues/PRs, and users.

---

Services

- nexy-cron: Token analytics, wallet stats, trending tokens, and more.
- SocialNexy: Social sentiment, trending topics, and influencer data.

---

Tools

graph TD
    subgraph File & Repo
        create_or_update_file
        push_files
        get_file_contents
        create_repository
        fork_repository
        create_branch
        list_commits
    end
    subgraph Search
        search_repositories
        search_code
        search_issues
        search_users
    end
    subgraph Issues & PRs
        create_issue
        update_issue
        add_issue_comment
        create_pull_request
        get_pull_request
        list_pull_requests
        create_pull_request_review
        merge_pull_request
        get_pull_request_files
        get_pull_request_status
        get_pull_request_comments
        get_pull_request_reviews
        update_pull_request_branch
        get_issue
        list_issues
    end

- See the full list of tools and their parameters in the Tools Section.

---

Setup

Personal Access Token

1. Create a GitHub Personal Access Token with appropriate permissions.
2. Add it to your environment or configuration.

Usage with Claude Desktop

Docker

{
  "mcpServers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "mcp/github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

NPX

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

---

Build

docker build -t mcp/github -f src/github/Dockerfile .

---

License

MIT License. See LICENSE for details.

---

Diagrams

High-Level Architecture

flowchart TD
    User[User/Client] -->|API Request| MCPServer[MCP Server]
    MCPServer -->|GitHub API| GitHub[GitHub]
    MCPServer -->|File Ops| FileSystem[(File System)]
    MCPServer -->|Service: nexy-cron| NexyCron[nexy-cron Service]
    MCPServer -->|Service: SocialNexy| SocialNexy[SocialNexy Service]

Tools/Commands Overview

graph TD
    subgraph File & Repo
        create_or_update_file
        push_files
        get_file_contents
        create_repository
        fork_repository
        create_branch
        list_commits
    end
    subgraph Search
        search_repositories
        search_code
        search_issues
        search_users
    end
    subgraph Issues & PRs
        create_issue
        update_issue
        add_issue_comment
        create_pull_request
        get_pull_request
        list_pull_requests
        create_pull_request_review
        merge_pull_request
        get_pull_request_files
        get_pull_request_status
        get_pull_request_comments
        get_pull_request_reviews
        update_pull_request_branch
        get_issue
        list_issues
    end

---

For more details, see the full documentation or codebase.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.