
GitHub Enterprise MCP-сервер
Сервер MCP (Model Context Protocol) для интеграции с API GitHub Enterprise. Этот сервер предоставляет интерфейс MCP для легкого доступа к информации репозитория, проблемам, PR и многому другому из GitHub Enterprise в Cursor.
Совместимость
Этот проект в первую очередь предназначен для сред GitHub Enterprise Server, но он также работает с:
GitHub.com
Корпоративное облако GitHub
Примечание : некоторые корпоративные функции (например, информация о лицензии и корпоративная статистика) не будут работать с GitHub.com или GitHub Enterprise Cloud.
Основные характеристики
Получить список репозиториев из экземпляров GitHub Enterprise
Получить подробную информацию о репозитории
Список ветвей репозитория
Просмотр содержимого файлов и каталогов
Управление проблемами и запросами на извлечение
Управление репозиторием (создание, обновление, удаление)
Управление рабочими процессами GitHub Actions
Управление пользователями (список, создание, обновление, удаление, приостановка/отмена приостановки пользователей)
Доступ к корпоративной статистике
Улучшенная обработка ошибок и удобное форматирование ответов
Начиная
Предпосылки
Node.js 18 или выше
Доступ к экземпляру GitHub Enterprise
Персональный токен доступа (PAT)
Установка и настройка Docker
Вариант 1: запуск с Docker
Создайте образ Docker:
docker build -t github-enterprise-mcp .Запустите Docker-контейнер с переменными среды:
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
Примечание : Dockerfile настроен на запуск с
--transport httpпо умолчанию. Если вам нужно изменить это, вы можете переопределить команду:
Вариант 2: Использование Docker Compose
Создайте файл
.envв корне проекта с необходимыми переменными среды:GITHUB_ENTERPRISE_URL=https://github.your-company.com/api/v3 GITHUB_TOKEN=your_github_token DEBUG=trueЗапустите контейнер с помощью Docker Compose:
docker-compose up -dПроверьте журналы:
docker-compose logs -fОстановите контейнер:
docker-compose down
Установка и настройка
Локальная разработка (с использованием параллельного режима)
Этот метод рекомендуется для активной разработки с автоматической перекомпиляцией и перезапусками сервера:
Клонируйте репозиторий и установите необходимые пакеты:
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm installЗапустите сервер разработки:
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" npm run devЭто позволит:
Автоматически компилировать код TypeScript при изменении файлов
Перезапустите сервер после обновления скомпилированных файлов.
Запустите сервер в режиме HTTP для подключений на основе URL.
Подключитесь к курсору, используя режим URL, как описано ниже.
Установка и настройка для производства
Вариант 1: использование режима URL (рекомендуется для локальной разработки)
Этот метод наиболее стабилен и рекомендуется для локальной разработки или тестирования:
Клонируйте репозиторий и установите необходимые пакеты:
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm installСоздайте проект:
npm run build chmod +x dist/index.jsЗапустите сервер:
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" node dist/index.js --transport http --debugПодключитесь к курсору, используя режим URL:
Добавьте следующее в файл
.cursor/mcp.jsonвашего курсора:
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }
Вариант 2: Установка как глобальной команды (ссылка npm)
Этот метод полезен для местного развития:
Вариант 3: Использование npx (когда пакет опубликован)
Если пакет опубликован в публичном реестре npm:
Интеграция с инструментами ИИ
Клод Десктоп
Добавьте следующее в ваш claude_desktop_config.json :
Замените YOUR_GITHUB_TOKEN и YOUR_GITHUB_ENTERPRISE_URL на ваши фактические значения.
Курсор
Рекомендуется: режим URL (наиболее стабильный)
Для наиболее надежной работы в Курсоре рекомендуется использовать режим URL:
Запустите сервер в отдельном окне терминала:
cd /path/to/github-enterprise-mcp GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" GITHUB_TOKEN="your_github_token" node dist/index.js --transport httpНастройте параметры MCP курсора:
Откройте Курсор и перейдите в Настройки.
Перейдите в раздел AI > MCP-серверы.
Отредактируйте файл
.cursor/mcp.json:
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }Перезапустите курсор, чтобы применить изменения.
Альтернатива: командный режим
В качестве альтернативы вы можете настроить Cursor на использование командного режима, хотя режим URL более надежен:
Откройте Курсор и перейдите в Настройки.
Перейдите в раздел AI > MCP-серверы.
Нажмите Добавить сервер MCP.
Введите следующие данные:
Имя : GitHub Enterprise
Команда :
npxАргументы :
@ddukbg/github-enterprise-mcpПеременные среды :
GITHUB_ENTERPRISE_URL: URL-адрес вашего API GitHub EnterpriseGITHUB_TOKEN: Ваш персональный токен доступа GitHub
Кроме того, вы можете вручную отредактировать файл .cursor/mcp.json , включив в него:
Конфигурация языка
Этот сервер MCP поддерживает английский и корейский языки. Вы можете настроить язык с помощью:
Переменные среды
Аргументы командной строки
Если не указан иной язык, по умолчанию используется английский.
Дополнительные параметры в режиме HTTP
--debug: Включить ведение журнала отладки--github-enterprise-url <URL>: Установить URL-адрес API GitHub Enterprise--token <TOKEN>: Установить токен персонального доступа GitHub--language <LANG>: Установить язык (en или ko, по умолчанию: en)
Доступные инструменты MCP
Этот сервер MCP предоставляет следующие инструменты:
Название инструмента | Описание | Параметры | Требуемые разрешения PAT |
| Получить список репозиториев для пользователя или организации |
: Имя пользователя/название организации
: Является ли это
организации : Тип репозитория
: Критерии сортировки
: Номер страницы
: Элементов на странице |
|
| Получить подробную информацию о репозитории |
: Владелец репозитория
: Имя репозитория |
|
| Список ветвей репозитория |
: Владелец репозитория
: Имя репозитория
: Показывать ли только защищенные ветви
: Номер страницы
: Элементы на странице |
|
| Извлечь содержимое файла или каталога |
: Владелец репозитория
: Имя репозитория
: Путь к файлу/каталогу
: Ветвь/фиксация (необязательно) |
|
| Список запросов на извлечение в репозитории |
: Владелец репозитория
: Имя репозитория
: Состояние PR filter
: Критерии сортировки
: Направление сортировки
: Номер страницы
: Элементов на странице |
|
| Получить детали запроса на включение |
: Владелец репозитория
: Имя репозитория
: Номер запроса на извлечение |
|
| Создать новый запрос на извлечение |
: Владелец репозитория
: Имя репозитория
: Название PR
: Головная ветвь
: Базовая ветвь
: Описание PR
: Создать как черновик PR |
|
| Объединить запрос на извлечение |
: Владелец репозитория
: Имя репозитория
: Номер запроса на извлечение
: Метод слияния
: Заголовок коммита
: Сообщение коммита |
|
| Список проблем в репозитории |
: Владелец репозитория
: Имя репозитория
: Фильтр состояния проблемы
: Критерии сортировки
: Направление сортировки
: Номер страницы
: Элементы на странице |
|
| Получить подробную информацию о проблеме |
: Владелец репозитория
: Имя репозитория
: Номер выпуска |
|
| Список комментариев по проблеме или запросу на включение внесенных изменений |
: Владелец репозитория
: Имя репозитория
: Номер выпуска/PR
: Номер страницы
: Элементы на странице |
|
| Создать новый выпуск |
: Владелец репозитория
: Имя репозитория
: Заголовок проблемы
: Содержимое тела проблемы
: Массив имен меток
: Массив имен пользователей
: Идентификатор вехи |
|
| Создать новый репозиторий |
: Имя репозитория
: Описание репозитория
: Является ли он частным
: Инициализация с помощью README
: Добавить .gitignore
: Добавить лицензию
: Название организации |
|
| Обновить настройки репозитория |
: Владелец репозитория
: Имя репозитория
: Новое описание
: Изменить конфиденциальность
: Изменить ветку по умолчанию
: Включить/отключить проблемы
: Включить/отключить проекты
: Включить/отключить вики
: Архивировать/разархивировать |
|
| Удалить репозиторий |
: Владелец репозитория
: Имя репозитория
: Подтверждение (должно быть верно) |
|
| Список рабочих процессов GitHub Actions |
: Владелец репозитория
: Имя репозитория
: Номер страницы
: Элементы на странице |
|
| Список запущенных рабочих процессов |
: Владелец репозитория
: Имя репозитория
: Идентификатор рабочего процесса/имя файла
: Фильтр по
ветви : Фильтр по статусу
: Номер страницы
: Элементы на странице |
|
| Запустить рабочий процесс |
: Владелец репозитория
: Имя репозитория
: Идентификатор/имя файла рабочего процесса
: Ссылка Git
: Входные данные рабочего процесса |
|
| Получить информацию о лицензии GitHub Enterprise | - | Требуется учетная запись site_admin (Администратор) |
| Получить статистику системы GitHub Enterprise | - | Требуется учетная запись site_admin (Администратор) |
Примечание : Для Enterprise-специфичных инструментов (
get-license-infoиget-enterprise-stats) требуется пользователь с правами администратора сайта . Рекомендуется Classic Personal Access Token, поскольку Fine-grained Tokens могут не поддерживать эти разрешения Enterprise-level.
Использование инструментов в курсоре
После настройки сервера MCP и настройки Cursor для подключения к нему вы можете использовать инструменты GitHub Enterprise непосредственно в чате ИИ Cursor. Вот несколько примеров:
Список репозиториев
Получение информации о репозитории
Листинг запросов на вытягивание
Управление проблемами
Работа с содержимым репозитория
Управление репозиторием
Управление пользователями (только Enterprise)
Эти функции специально разработаны для сред GitHub Enterprise Server и требуют административных разрешений:
Улучшения API
Гибкая конфигурация URL API (поддерживает различные переменные среды и аргументы командной строки)
Улучшенная обработка ошибок и управление тайм-аутами
Удобное форматирование ответов и сообщений
Внося вклад
Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.
Лицензия
МСК
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Сервер MCP, обеспечивающий интеграцию с API GitHub Enterprise, позволяя пользователям получать доступ к информации репозитория, управлять проблемами, запросами на извлечение, рабочими процессами и другими функциями GitHub через Cursor.
Related MCP Servers
- Asecurity-licenseAqualityMCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.Last updated -22,57371,962MIT License
- Asecurity-licenseAqualityMCP Server for the GitHub API, providing features for file operations, repository management, and advanced search, with automatic branch creation and comprehensive error handling.Last updated -1804
- Asecurity-licenseAqualityA MCP server that provides access to GitHub trending repositories and developers data through a simple API interface.Last updated -235MIT License
- -security-license-qualityAn MCP server that wraps around the GitHub CLI tool, allowing AI assistants to interact with GitHub repositories through commands for pull requests, issues, and repository operations.Last updated -2MIT License