# Reported issues for github-mcp-server

Pod holds 16 of 19 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to [github-mcp-server](/mcp/github-mcp-server).

## Most discussed

### 📚 Add optimization guide to CLAUDE.md

## Problem

A fresh Claude instance using this MCP server doesn't know:
- When to use GraphQL vs REST (91% token difference!)
- That `github_suggest_workflow` exists for bulk operations
- That `response_format: "compact"` saves 80-97% tokens

## Solution

Update CLAUDE.md with an **Optimization Tips** section that gets loaded into every conversation.

## Proposed Additions

### 1. Tool Selection Guide

| Task | Best Tool | Token Savings |
|------|-----------|---------------|
| PR overview/status

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/39) · 2025-12-18 · closed · 1 comment

### 🚀 Add compact format to all 26 remaining tools

## Summary

Complete the compact format rollout to ALL tools for maximum AI token efficiency.

**Current state:**
- ✅ 34 tools have compact format
- ❌ 26 tools missing compact format
- ⚪ 52 tools don't need it (create/update/delete actions)

## Tools Missing Compact Format

### By File

| File | Tools | Count |
|------|-------|-------|
| `actions.py` | get_workflow_runs, get_workflow, get_workflow_run, get_job, get_job_logs, get_artifact | 6 |
| `security.py` | get_dependabot_alert, get_code_sca

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/38) · 2025-12-18 · closed · 1 comment

### Cleanup: Update licensing from AGPL to MIT + remove licensing system

## Overview
The website has been updated to reflect MIT licensing and open source model. The GitHub MCP Server repo needs to match.

## Tasks

### 1. Update README
- [ ] Change all AGPL references to MIT
- [ ] Update any licensing/commercial messaging
- [ ] Ensure consistency with mcplabs.co.uk/products/github messaging

### 2. Remove Licensing System Code
- [ ] Identify and remove any license checking/validation code
- [ ] Remove any commercial license related files
- [ ] Clean up any AGPL-spec

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/40) · 2026-01-10 · open · outside contributor · 0 comments

### Standardize pagination and add compact response format for AI optimization

## Summary

Dogfooding audit reveals inconsistent pagination parameters and missing compact output options across 36 tools. This makes tools harder for Claude (the primary AI user) to use effectively and can cause buffer overflow issues with verbose responses.

## Problems Identified

| Issue | Count | Impact |
|-------|-------|--------|
| Uses `per_page` instead of `limit` | 23 tools | Inconsistent API, confusing |
| Missing `response_format` param | 17 tools | Can't get compact output |
| No p

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/35) · 2025-12-17 · closed · 0 comments

### Consolidate Deno executor: Remove dead mod.ts, keep only mod-pooled.ts

## Summary

When connection pooling was added, `mod.ts` became dead code since `USE_CONNECTION_POOL = true` by default. We now maintain two nearly identical files, which caused bugs when updating one but not the other (see #32).

## Current Architecture

```
deno_runtime.py
    │
    ├─► if USE_CONNECTION_POOL (default: true)
    │       └─► deno_pool.py → mod-pooled.ts ✅ (used 99% of time)
    │
    └─► else (fallback)
            └─► mod.ts ❌ (dead code)
```

## Problem

- **Code duplication**

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/34) · 2025-12-17 · closed · 0 comments

### Bug: listAvailableTools() exceeds response buffer with 112 tools

## Description

`listAvailableTools()` returns full metadata for all 112 tools, causing the response to exceed the Deno executor's buffer limit.

## Error Message
```
Error reading from process: Separator is not found, and chunk exceed the limit
```

## Root Cause

The current implementation returns full tool objects including:
- name
- description  
- parameters (with all details)
- example usage
- required/optional flags

For 112 tools, this creates a massive JSON payload that exceeds the read

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/32) · 2025-12-17 · closed · 0 comments

### 🚨 CRITICAL: Fix Workspace Tool Constraints - Make Tools Work on User Projects!

## 🚨 CRITICAL BLOCKER FOR MCP REGISTRY SUBMISSION

**Status:** Blocking registry submission  
**Priority:** CRITICAL 🔥🔥🔥  
**Affects:** Phase 2.5 (#15) - Workspace Architecture  
**Discovered:** Dogfooding Story #14 - Nov 11, 2025  

---

## 🤯 The Problem

**Three workspace tools are hardcoded to ONLY work on the github-mcp-server repository itself!**

### Affected Tools:
1. ❌ `workspace_grep` - Can only search github-mcp-server repo
2. ❌ `str_replace` - Can only edit files in github-mcp-server 

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/30) · 2025-11-11 · closed · 0 comments

### 🔧 [COMPLETE] [DOGFOODING #14] Tools Discovered They Can't Close Issues!

## 🤯 THE DISCOVERY

**Date:** Nov 11, 2025  
**Context:** Cleanup session using the tools to manage the repo  
**Discovery:** Tools can CREATE issues but can't CLOSE them! 🙈

---

## 📊 The Gap

### ✅ What We Have:
- `github_list_issues` - List issues
- `github_create_issue` - Create new issues
- `github_search_issues` - Search across repos
- `github_list_pull_requests` - List PRs
- `github_create_pull_request` - Create PRs
- `github_merge_pull_request` - Merge PRs

### ❌ What We're Missing:
- `g

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/29) · 2025-11-11 · closed · 0 comments

## Most recent

### 🔍 Add workspace_grep tool for efficient code search

## 🎯 Feature Request

**Priority:** HIGH 🔥  
**Category:** Phase 2.5 - Workspace Architecture  
**Impact:** 90-99% token reduction for code search operations

---

## 📋 Overview

Add a `workspace_grep` tool that efficiently searches through repository files using pattern matching, returning only matching lines with context instead of full file contents.

**Discovered through:** Dogfooding! Noticed Cursor uses grep for efficient file search, realized we need the same capability.

---

## 🎯 Proble

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/27) · 2025-11-07 · closed · 0 comments

### ✅ [DONE] CHANGELOG updated with v1.4.0 & v1.5.0

✅ **COMPLETED!**

The CHANGELOG.md has been successfully updated with v1.4.0 and v1.5.0 entries!

**Changes Made:**
- Added v1.5.0 entry (Phase 0-1 infrastructure)
- Added v1.4.0 entry (License tool)
- Updated [Unreleased] section with Phase 2.5 mention

**Commit:** 79f0e6d6c0bc25f624e4b9e2498c1131525e45ae
**Updated By:** The tools themselves! 🤖

**View Updated CHANGELOG:**
https://github.com/crypto-ninja/github-mcp-server/blob/main/CHANGELOG.md

---

**Meta Achievement:** The tools updated thei

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/24) · 2025-11-07 · closed · 0 comments

### ✅ [RESOLVED] File tools bug fixed - ETag caching issue

## ✅ BUG FIXED!

**Root Cause Identified:**
The new ETag caching in PR #14 was returning `{"_from_cache": True}` markers, but the file tools weren't handling them.

**Fix Applied by Cursor:**
- Updated `github_get_file_content` (lines 1372-1417)
- Updated `github_list_repo_contents` (lines 1776-1850)
- Both now detect cache markers and make fresh requests
- Added safe `.get()` access throughout

**Testing Results:**
✅ `github_get_file_content` - WORKING
✅ `github_list_repo_contents` - WORKING
✅ 

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/23) · 2025-11-07 · closed · 0 comments

### 🔬 Bug Analysis: 'name' KeyError in file tools

## Bug Analysis for Issue #20

### Error Details

**Error Message:** `Unexpected error occurred: 'name'`  
**Affected Tools:**
- `github_get_file_content` ❌
- `github_list_repo_contents` ❌

**Working Tools:**
- `github_get_repo_info` ✅
- `github_create_issue` ✅
- `github_list_issues` ✅
- All other tools ✅

### Root Cause Hypothesis

The error `'name'` suggests a **KeyError** where code is trying to access `response['name']` or `data['name']` but the key doesn't exist.

**Most Likely Cause:**
PR 

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/22) · 2025-11-07 · closed · 0 comments

### 🐛 BUG: github_get_file_content fails with 'name' error

## Bug Description

The `github_get_file_content` tool is failing with error: `Unexpected error occurred: 'name'`

## How to Reproduce

```python
github_get_file_content(
    owner="crypto-ninja",
    repo="github-mcp-server", 
    path="CHANGELOG.md"
)
```

**Result:** `Error: Unexpected error occurred: 'name'`

## Expected Behavior

Should return the file content as it did in previous versions.

## Context

Discovered during repo cleanup session on Nov 7, 2025 while trying to read CHANGELOG.md

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/20) · 2025-11-07 · closed · 0 comments

### 📚 Update README.md for v1.5.0 (34 tools)

## Task

Update `README.md` to reflect current state with 34 tools.

## Changes Needed

### 1. Update Tool Count

Find and update all references to tool count:
- Change: `31 tools` → `34 tools`  
- Change: `32 tools` → `34 tools`
- Update any comparison stats

### 2. Add New Tools to List

Add these 3 new tools to the appropriate sections:

**Tool #32 (v1.4.0):**
- `github_license_info` - Display license status and tier

**Tool #33 (v1.5.0):**
- `github_get_pr_overview_graphql` - GraphQL-based P

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/19) · 2025-11-07 · closed · 0 comments

### 📝 Update CHANGELOG.md with v1.4.0 and v1.5.0

## Task

Update `CHANGELOG.md` to add missing v1.4.0 and v1.5.0 release entries.

## Current State

CHANGELOG last updated: v1.3.0 (Nov 4, 2025)
Missing releases:
- v1.4.0 (license tool - Nov 6)
- v1.5.0 (Phase 0-1 infrastructure - Nov 6)

## Content to Add

Insert these entries **AFTER the v1.3.0 section** and **BEFORE the [Unreleased] section:**

```markdown
## [1.5.0] - 2025-11-06

### 🚀 Phase 0-1: Infrastructure & Performance Upgrade

**Meta Achievement:** This release was merged AND release

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/18) · 2025-11-07 · closed · 0 comments

### 🎯 Phase 2.5: Workspace Architecture for Token Efficiency & User Projects

## 🎯 Vision: Workspace-Based Architecture

### Problem Statement

The current `repo_read_file_chunk` tool (added in PR #14) is **repo-root constrained**, meaning it can only read files within the github-mcp-server repository itself. While this is perfect for meta-dogfooding during development, it's **not useful for actual customers** who will be using the MCP server to work on their own projects.

**Current limitation:**
- ✅ Works for: developers working on github-mcp-server itself
- ❌ Doesn't w

[Read the thread](https://github.com/crypto-ninja/mcp-server-for-Github/issues/15) · 2025-11-06 · closed · 0 comments

The remaining reports are on [the project's issue tracker](https://github.com/crypto-ninja/mcp-server-for-Github/issues).
