GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
제작자가 쓴 설명(영어 원문)
AI-powered MCP server for generating GitHub issues and detecting semantic duplicates.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO, GEMINI_API_KEY비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"github-issue": {
"command": "npx",
"args": [
"-y",
"github-issue-mcp"
],
"env": {
"GITHUB_TOKEN": "your-value",
"GITHUB_OWNER": "your-value",
"GITHUB_REPO": "your-value",
"GEMINI_API_KEY": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add github-issue --env GITHUB_TOKEN=your-value --env GITHUB_OWNER=your-value --env GITHUB_REPO=your-value --env GEMINI_API_KEY=your-value -- npx -y github-issue-mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"github-issue": {
"command": "npx",
"args": [
"-y",
"github-issue-mcp"
],
"env": {
"GITHUB_TOKEN": "your-value",
"GITHUB_OWNER": "your-value",
"GITHUB_REPO": "your-value",
"GEMINI_API_KEY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"github-issue": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"github-issue-mcp"
],
"env": {
"GITHUB_TOKEN": "your-value",
"GITHUB_OWNER": "your-value",
"GITHUB_REPO": "your-value",
"GEMINI_API_KEY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검
레지스트리 이름이 GitHub 계정 sarim-aliii 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO, GEMINI_API_KEY
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.1.2)은 3개월 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.
같은 카테고리에는: GitHub, Desktop Commander, Cloudflare MCP
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
An AI-powered GitHub issue management system built with Model Context Protocol (MCP), Google Gemini, TypeScript, and the GitHub REST API.
GitHub Issue MCP turns a short natural-language bug report into a structured GitHub issue while intelligently checking for existing duplicates before anything is created.
The project demonstrates a controlled agentic workflow where Gemini can reason and use MCP tools, while persistent GitHub write operations remain explicitly controlled by the application and the user.
The MCP server is also packaged as a reusable npm package so it can be embedded into other Node.js applications or launched directly as an MCP stdio server.
github-issue-mcp MCP CLInpm install github-issue-mcp
The package is available on npm as:
github-issue-mcp
Current release:
v1.1.2 🚀 Quick Start Run as an MCP server
The package exposes an executable MCP server CLI.
npx -y github-issue-mcp
The server communicates using MCP over stdio.
This is the recommended approach when configuring the server in an MCP-compatible client.
🔌 MCP Client Configuration
GitHub Issue MCP can be used with any MCP-compatible client that supports stdio servers.
Using npx
The simplest configuration uses the published npm package:
{ "mcpServers": { "github-issue-mcp": { "command": "npx", "args": [ "-y", "github-issue-mcp" ], "env": { "GITHUB_TOKEN": "YOUR_GITHUB_TOKEN", "GITHUB_OWNER": "YOUR_GITHUB_OWNER", "GITHUB_REPO": "YOUR_GITHUB_REPO", "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY" } } } }
The MCP client starts:
npx -y github-issue-mcp
and communicates with the server over stdio.
⚙️ Configuration
Create a .env file when running the project locally.
GITHUB_TOKEN=your_github_token GITHUB_OWNER=your_github_username GITHUB_REPO=your_repository
GEMINI_API_KEY=your_gemini_api_key
GEMINI_MODEL=gemini-3.6-flash GEMINI_MAX_RETRIES=3 GEMINI_RETRY_BASE_DELAY=1000
DEBUG=false Environment variables Variable Required Description Default GITHUB_TOKEN Yes GitHub API authentication token Required GITHUB_OWNER Yes GitHub repository owner or organization Required GITHUB_REPO Yes GitHub repository name Required GEMINI_API_KEY Yes Google Gemini API key Required GEMINI_MODEL No Gemini model used by the AI client gemini-3.6-flash GEMINI_MAX_RETRIES No Maximum number of Gemini retries 3 GEMINI_RETRY_BASE_DELAY No Base retry delay in milliseconds 1000 DEBUG No Enables debug behavior/logging false
Never commit .env, GitHub tokens, or Gemini API keys to Git.
🧩 MCP Tools
The MCP server exposes the following tools:
Tool Purpose generate_issue Generate a structured GitHub issue create_github_issue Create an issue on GitHub list_github_issues Retrieve open repository issues list_github_labels Retrieve repository labels check_duplicate_issue Find likely duplicate issue candidates generate_issue
Generates a structured issue from supplied information.
Inputs description reproductionSteps expectedBehavior actualBehavior environment additionalContext Example output { "title": "Bug: Login button does not work", "body": "## Description\n\nLogin button does not work...", "labels": ["bug"] } check_duplicate_issue
Retrieves likely duplicate candidates from the repository.
The tool performs inexpensive lexical candidate ranking against existing open issues.
The similarity score is not treated as proof of duplication.
Gemini performs the final semantic analysis.
This keeps the expensive AI reasoning focused on a small candidate set rather than every issue in the repository.
list_github_issues
Retrieves open GitHub issues while filtering out pull requests.
list_github_labels
Retrieves labels available in the repository.
create_github_issue
Creates the final GitHub issue.
This tool is intentionally not exposed to the autonomous Gemini agent.
It is invoked directly by the client only after explicit human approval.
🏗️ Architecture ┌──────────────────┐ │ User │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ CLI Client │ └────────┬─────────┘ │ ▼ ┌──────────────────────────┐ │ MCP Client │ └────────────┬─────────────┘ │ ▼ ┌──────────────────────────┐ │ MCP Server │ └────────────┬─────────────┘ │ ┌──────────────────┼──────────────────┐ │ │ │ ▼ ▼ ▼ Duplicate Check Issue Generation GitHub Tools │ │ │ ▼ ▼ ▼ Candidate Issues Proposed Issue GitHub REST API │ │ ▼ ▼ Gemini Semantic Human Approval Analysis │ │ │ ┌────┴────┐ ┌────┴────┐ │ │ │ │ Yes No No Yes │ │ │ │ ▼ ▼ ▼ ▼ Stop Continue Stop Create Issue 🔑 Core Design Principle
The most important architectural decision is:
Gemini does not have autonomous access to the GitHub write operation.
The workflow is intentionally divided into controlled phases.
Phase 1 Duplicate Detection │ ▼ Semantic Analysis │ ▼ Phase 2 Collect Details │ ▼ Phase 3 Issue Generation │ ▼ Phase 4 Human Approval │ ▼ Phase 5 GitHub Creation
This provides a clear human-in-the-loop safety boundary around persistent external side effects.
🔄 Workflow
The complete workflow is:
🔍 Duplicate Detection
Duplicate detection is deliberately split into two stages.
Stage 1 — Candidate Retrieval
The MCP tool performs inexpensive lexical similarity/ranking against existing open issues.
For example:
User:
"The search results page crashes when I apply multiple filters."
│ ▼
check_duplicate_issue
│ ▼
Candidate #8
"The search results page crashes when I apply multiple filters."
Similarity: 0.21
The similarity score is only used to identify potentially relevant candidates.
It is not considered proof of duplication.
Stage 2 — Semantic Analysis
Gemini receives the candidate issues and determines whether any candidate describes the same underlying problem.
Example:
{ "isDuplicate": true, "duplicateIssue": { "number": 8, "title": "Bug: The search results page crashes when I apply multiple filters.", "url": "https://github.com/example/repository/issues/8" }, "reason": "The candidate describes the exact same underlying problem." }
This prevents unrelated issues from being incorrectly classified as duplicates merely because they share common words such as:
login page button crash issue 🤖 Agent Workflow
The Gemini agent supports controlled multi-step tool execution.
Available MCP tools are restricted according to the current workflow phase.
Phase 1 — Duplicate Detection
Gemini receives:
check_duplicate_issue
The agent can use this tool to retrieve candidate issues.
It cannot use:
generate_issue create_github_issue
during this phase.
Phase 3 — Issue Generation
Gemini receives:
list_github_labels generate_issue
This allows the agent to inspect repository labels and generate the proposed issue.
It still cannot create the GitHub issue.
Phase 5 — Issue Creation
The autonomous Gemini agent does not receive:
create_github_issue
Instead, the application directly invokes the tool after explicit human approval.
🔐 Security Model
The project uses multiple layers to prevent unintended GitHub writes.
Available tools are restricted depending on the current workflow phase.
Duplicate Phase │ └── check_duplicate_issue Generate Phase │ ├── list_github_labels └── generate_issue Creation Phase │ └── create_github_issue (client-controlled)
The Gemini agent cannot directly invoke:
create_github_issue
Even if the model attempts to request the tool, the agent workflow rejects the operation.
The proposed issue is displayed to the user before creation.
Example:
================================ PROPOSED GITHUB ISSUE ================================
Title: Bug: Login button does not work with valid credentials.
Labels: bug
Body:
Login button does not work with valid credentials.
Open login page → enter valid credentials → click Login.
User should be redirected to the dashboard.
Nothing happens after clicking Login.
Create this issue on GitHub? [y/N]:
Only explicit approval proceeds to the GitHub write operation.
👤 Human-in-the-Loop Creation
Issue creation is intentionally controlled by the application.
Gemini │ ▼ Generate Proposed Iss
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요