GitHub Enterprise MCP Server

by ddukbg

29 stars
403 downloads
Not rated
GitHub

About

Integrate with the GitHub Enterprise API to access repositories, issues, pull requests, and workflows.

Details

Author
ddukbg
GitHub stars
29
Downloads
403
Categories
Developer Tools, Other, Infrastructure, Project Management, API

- Retrieve and manage repositories (create, update, delete)
- Manage issues and pull requests with full CRUD
- View file and directory contents from any branch
- Manage GitHub Actions workflows and runs
- User management including suspend and unsuspend
- Access enterprise statistics

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 Enterprise 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

Install with Node.js 18+, configure the GITHUB_ENTERPRISE_URL and GITHUB_TOKEN environment variables, then run the server via Docker, npm, or npx. Connect to Cursor using HTTP (URL) mode or command mode, or configure Claude Desktop in its claude_desktop_config.json.

Claude Desktop / Cursor

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

{
    "mcpServers": {
        "github enterprise mcp server": {
            "github-enterprise": {
                "command": "npx",
                "args": [
                    "@ddukbg/github-enterprise-mcp"
                ],
                "env": {
                    "GITHUB_ENTERPRISE_URL": "https://github.your-company.com/api/v3",
                    "GITHUB_TOKEN": "your_github_token"
                }
            }
        }
    }
}

McpServers

{
    "github-enterprise": {
        "command": "npx",
        "args": [
            "@ddukbg/github-enterprise-mcp"
        ],
        "env": {
            "GITHUB_ENTERPRISE_URL": "https://github.your-company.com/api/v3",
            "GITHUB_TOKEN": "your_github_token"
        }
    }
}

GitHub Enterprise MCP Server

image

An MCP (Model Context Protocol) server for integration with GitHub Enterprise API. This server provides an MCP interface to easily access repository information, issues, PRs, and more from GitHub Enterprise in Cursor.

Compatibility

This project is primarily designed for GitHub Enterprise Server environments, but it also works with:

- GitHub.com
- GitHub Enterprise Cloud

> Note: Some enterprise-specific features (like license information and enterprise statistics) will not work with GitHub.com or GitHub Enterprise Cloud.

Key Features

- Retrieve repository list from GitHub Enterprise instances
- Get detailed repository information
- List repository branches
- View file and directory contents
- Manage issues and pull requests
- Repository management (create, update, delete)
- GitHub Actions workflows management
- User management (list, create, update, delete, suspend/unsuspend users)
- Access enterprise statistics
- Enhanced error handling and user-friendly response formatting

Getting Started

Prerequisites

- Node.js 18 or higher
- Access to a GitHub Enterprise instance
- Personal Access Token (PAT)

Docker Installation and Setup

Option 1: Running with Docker

1. Build the Docker image:

    docker build -t github-enterprise-mcp .
    

2. Run the Docker container with environment variables:

    docker run -p 3000:3000 \
      -e GITHUB_TOKEN="your_github_token" \
      -e GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" \
      -e DEBUG=true \
      github-enterprise-mcp
    

> Note: The Dockerfile is configured to run with --transport http by default. If you need to change this, you can override the command:

docker run -p 3000:3000 \
  -e GITHUB_TOKEN="your_github_token" \
  -e GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" \
  -e DEBUG=true \
  github-enterprise-mcp node dist/index.js --transport http --debug

Option 2: Using Docker Compose

1. Create a .env file in the project root with the required environment variables:

    GITHUB_ENTERPRISE_URL=https://github.your-company.com/api/v3
    GITHUB_TOKEN=your_github_token
    DEBUG=true
    

2. Start the container with Docker Compose:

    docker-compose up -d
    

3. Check the logs:

    docker-compose logs -f
    

4. Stop the container:

    docker-compose down
    

Installation and Setup

Local Development (Using Concurrent Mode)

This method is recommended for active development with automatic recompilation and server restarts:

1. Clone the repository and install required packages:

    git clone https://github.com/ddukbg/github-enterprise-mcp.git
    cd github-enterprise-mcp
    npm install
    

2. Run the development server:

    export GITHUB_TOKEN="your_github_token"
    export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3"
    npm run dev
    

This will:
- Compile TypeScript code automatically when files change
- Restart the server when compiled files are updated
- Run the server in HTTP mode for URL-based connections

3. Connect to Cursor using URL mode as described below

Installation and Setup for Production

Option 1: Using URL Mode (Recommended for Local Development)

This method is the most stable and recommended for local development or testing:

1. Clone the repository and install required packages:

    git clone https://github.com/ddukbg/github-enterprise-mcp.git
    cd github-enterprise-mcp
    npm install
    

2. Build the project:

    npm run build
    chmod +x dist/index.js
    

3. Run the server:

    export GITHUB_TOKEN="your_github_token"
    export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3"
    node dist/index.js --transport http --debug
    

4. Connect to Cursor using URL mode:
- Add the following to your Cursor's .cursor/mcp.json file:

   {
     "mcpServers": {
       "github-enterprise": {
         "url": "http://localhost:3000/sse"
       }
     }
   }
   

Option 2: Install as a Global Command (npm link)

This method is useful for local development:

```bash

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.