GitHub MCP Agent
GitHub MCP Agent
Задавайте вопросы на естественном языке о репозиториях GitHub и получайте ответы, подкрепленные актуальными данными GitHub. На Cloudflare Worker вызывает любого LLM-провайдера (Google, OpenAI, DeepSeek, Cloudflare, Groq или кастомный OpenAI-совместимый API) с поддержкой вызова инструментов и реализует инструменты GitHub через REST API. Локально вы по-прежнему можете запустить оригинальное приложение Streamlit, которое общается с официальным MCP-сервером GitHub через Docker.
Это самостоятельная упаковка GitHub MCP-агента из Shubhamsaboo/awesome-llm-apps. Оригинал находится внутри большой коллекции примеров; этот репозиторий — самодостаточный проект, который вы можете клонировать, запустить и развернуть.
Что он делает
Укажите приложению любой owner/repo, задайте вопрос и получите структурированный ответ, основанный на актуальных данных GitHub, а не на обобщенном предположении LLM. Типичные вопросы:
Какие issues помечены как баги?
Какие pull request'ы все еще требуют ревью?
Что недавно было смержено?
Насколько активен этот репозиторий?
Агент форматирует ответы в markdown, включая таблицы и ссылки обратно на GitHub, когда это уместно.
Related MCP server: GitHub Tools MCP Server
Возможности
Запросы на естественном языке по issues, pull request'ам, метаданным репозитория, файлам и поиску
Cloudflare Worker + статический чат-интерфейс для хостинга (любой LLM-провайдер + GitHub REST)
Официальный MCP-сервер GitHub (опциональный локальный путь) через Docker для оригинального приложения Streamlit
Используйте свой ключ LLM: Google, OpenAI, DeepSeek, Cloudflare Workers AI, Anthropic, Groq, OpenRouter, Mistral, xAI, Together или любой OpenAI-совместимый endpoint
Боковая панель аутентификации, выбор провайдера и поле модели, шаблоны запросов и пользовательские вопросы
Опциональная загрузка
.env/.dev.vars, чтобы хранить ключи вне интерфейса
Архитектура хостинга (Cloudflare)
Streamlit и Docker-образ GitHub MCP не могут работать на Cloudflare Pages/Workers. Хостируемое приложение — это переработанная для Cloudflare версия того же продукта:
┌─────────────────┐ POST /api/chat (SSE) ┌──────────────────┐
│ Static chat UI │ ────────────────────────────► │ Cloudflare Worker│
│ public/ │ │ Any LLM + tools │
└─────────────────┘ └────────┬─────────┘
│ GitHub REST
▼
┌──────────────────┐
│ api.github.com │
└──────────────────┘Worker обслуживает чат-интерфейс из
public/и обрабатывает/api/*.Запросы чата вызывают выбранный вами LLM с инструментами GitHub, эквивалентными наборам инструментов MCP
repos,issuesиpull_requests(плюс файлы и поиск).Worker выполняет эти инструменты через REST API GitHub, используя
GITHUB_TOKEN.Токены могут поступать из секретов Wrangler или из боковой панели (
X-LLM-Key,X-GitHub-Token). Значения из боковой панели переопределяют секреты для этого запроса.
Развертывание на Cloudflare
Предварительные требования
Node.js 18+
Аккаунт Cloudflare
Ключ API LLM от любого провайдера (Google, OpenAI, DeepSeek, Cloudflare, Groq, …)
Персональный токен доступа GitHub (не коммитить)
git clone https://github.com/MadanMohan0537/github-mcp-agent.git
cd github-mcp-agent
npm install
npx wrangler login
npx wrangler secret put LLM_API_KEY
npx wrangler secret put GITHUB_TOKEN
npx wrangler secret put LLM_PROVIDER
npm run deployПосле развертывания Wrangler выведет URL вида *.workers.dev. Интерфейс и API находятся на одном origin.
Локальная разработка Cloudflare
copy .dev.vars.example .dev.varsОтредактируйте .dev.vars, указав реальные ключи (никогда не коммитьте его), затем:
npm run devОткройте URL, который выведет Wrangler (обычно http://127.0.0.1:8787).
Переменная | Обязательно | Назначение |
| Да (для запросов) | Ключ любого провайдера: Google, OpenAI, DeepSeek, Groq, Cloudflare и т.д. |
| Нет |
|
| Нет | Идентификатор модели для этого провайдера |
| Кастомный / переопределение Cloudflare | OpenAI-совместимый базовый URL |
| Cloudflare Workers AI | ID аккаунта, используемый для построения URL Workers AI |
| Да (для запросов) | Аутентифицирует вызовы GitHub REST |
Псевдонимы провайдеров | Нет |
|
Вы также можете ввести ключи в боковой панели. Поле называется LLM API key, а не только OpenAI. Значения из боковой панели отправляются только этому Worker в качестве заголовков запроса.
Области действия токена:
Публичные репозитории: достаточно
public_repoПриватные репозитории:
repo
Опциональный локальный путь: Streamlit + GitHub MCP Docker
Оригинальное Python-приложение не изменено. Оно использует Agno, Streamlit и ghcr.io/github/github-mcp-server.
┌─────────────────┐ natural-language query ┌──────────────────┐
│ Streamlit UI │ ───────────────────────────────► │ Agno Agent │
│ github_agent.py│ │ (any LLM) │
└─────────────────┘ └────────┬─────────┘
│ MCP tools
▼
┌──────────────────┐
│ Docker container │
│ github-mcp-server│
└────────┬─────────┘
│ GitHub API
▼
┌──────────────────┐
│ api.github.com │
└──────────────────┘Предварительные требования
Требование | Примечания |
Python 3.10+ | Разрабатывалось под 3.12 |
Должен быть запущен; MCP-сервер GitHub — это контейнер | |
Ключ API LLM | Google, OpenAI, DeepSeek, Cloudflare, Groq или любой OpenAI-совместимый провайдер |
Персональный токен доступа GitHub |
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .env
streamlit run github_agent.pyИли . un.ps1 / run.bat после установки виртуального окружения. Откройте URL, который выведет Streamlit (обычно http://localhost:8501).
Первый Docker pull образа ghcr.io/github/github-mcp-server может занять минуту. Запросы имеют тайм-аут 120 секунд.
Пример использования
Репозиторий: Shubhamsaboo/awesome-llm-apps
Issues
Найди issues, помеченные как баги, в Shubhamsaboo/awesome-llm-appsКакие issues активно обсуждаются?
Pull request'ы
Какие PR требуют ревью?Покажи недавно смерженные PR
Репозиторий
Покажи метрики здоровья репозиторияПокажи паттерны активности репозиторияПроанализируй тренды качества кода
Старайтесь, чтобы каждый вопрос был сосредоточен на одной области (issues, PR или статистика репозитория). Широкие запросы выполняются дольше и дают более зашумленные ответы.
Структура проекта
github-mcp-agent/
├── public/ # Cloudflare static chat UI
├── src/ # Worker: multi-provider LLM agent + GitHub REST tools
├── wrangler.toml # Workers + assets project
├── package.json # npm run dev / npm run deploy
├── github_agent.py # Optional local Streamlit + MCP Docker app
├── requirements.txt
├── .env.example
├── .dev.vars.example
├── LICENSE # Apache License 2.0 (from the original project)
├── NOTICE
└── README.mdУстранение неполадок
Симптом | Что проверять |
| Ключ в боковой панели, |
| Токен в боковой панели, |
Развертывание Worker просит войти | Выполните |
Ошибки Docker / | Требуется только для пути Streamlit; установите Docker и запустите демон |
Тайм-аут / усеченные ответы | Сузьте запрос; результаты инструментов хостинга обрезаются для соблюдения лимитов Worker/LLM |
| Путь Streamlit: установите из |
Ошибки 401 / разрешений от GitHub | Срок действия токена истек, или отсутствует область |
Атрибуция
Основано на GitHub MCP Agent из Shubhamsaboo/awesome-llm-apps, а именно:
mcp_ai_agents/github_mcp_agent
Обучающее руководство: Build an MCP GitHub agent in less than 50 lines of code.
Этот репозиторий является независимым самостоятельным ответвлением с документацией, хостом Cloudflare Workers и небольшими изменениями упаковки. Он не является официальным продуктом GitHub или Cloudflare.
Лицензия
Оригинальный проект awesome-llm-apps лицензирован под Apache License 2.0. Это производное сохраняет эту лицензию. См. NOTICE для указания источника.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables analyzing and querying GitHub repositories through the GitHub Chat API, allowing users to index repositories and ask questions about their code, architecture and tech stack.286MIT
- Flicense-quality-maintenanceModel Context Protocol server that enables interaction with GitHub repositories, issues, pull requests, and search functionality through natural language.1
- Flicense-qualityDmaintenanceA production-ready server featuring over 28 tools for comprehensive GitHub analysis, including repository metadata, issue tracking, and workflow monitoring. It enables users to search repositories, analyze contributor activity, and inspect codebase health through natural language.1
- Flicense-qualityDmaintenanceA Model Context Protocol (MCP) server that connects Claude AI directly to the GitHub API, enabling natural language queries for live repository data, issues, PRs, and contributions.1
Related MCP Connectors
An MCP server that gives your AI access to the source code and docs of all public github repos
GibsonAI MCP server: manage your databases with natural language
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MadanMohan0537/github-mcp-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server