Copilot Leecher MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
git clone https://github.com/xiangxiaobo/Copilot-Leecher.git
cd Copilot-Leecher
npm install
npm run build
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add copilot-leecher -- node "<FULL_PATH_TO_COPILOT_LEECHER>/dist/index.js"

Replace <FULL_PATH_TO_COPILOT_LEECHER>/dist/index.js with the actual folder you prepared in step 1.

README.md

Squeeze every drop out of your GitHub Copilot premium requests.

πŸ§› Copilot Leecher

English | δΈ­ζ–‡

Squeeze every drop out of your GitHub Copilot premium requests β€” turn follow-up prompts into free MCP tool calls.

Why This Exists

GitHub Copilot charges by premium requests (300/month on Pro; each Claude Opus 4.6 call costs 3 requests), not by tokens. Through experimentation, we discovered:

Action Costs a Premium Request?
New user prompt βœ… Yes
Follow-up in the same session βœ… Yes
Tool call / MCP call ❌ No

So the most cost-effective way to use Copilot is: pack as much work as possible into a single premium request.

The problem? Humans rarely express everything perfectly in one shot. Follow-up questions ("wait, also do X…") are inevitable β€” and each one burns another request.

Copilot Leecher solves this by providing a request_review MCP tool. When the agent finishes a task, it calls this tool and blocks β€” waiting for your feedback via a local web UI. Your feedback is returned as a tool call result (free!), not a new user prompt. The agent then acts on your feedback within the same request.

One prompt β†’ review β†’ refine β†’ review β†’ approve. All for the price of a single premium request.

How It Works

You (1 prompt)                    Copilot Agent
    β”‚                                  β”‚
    β”œβ”€β”€β”€ "Implement feature X" ────────►  (works on it…)
    β”‚                                  β”‚
    β”‚                  request_review() β”‚  ← MCP tool call (FREE)
    β”‚                                  β”‚
    β”‚   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
    β”‚   β”‚ Web UI (localhost:3456)      β”‚
    β”‚   β”‚ "Also handle edge case Y"   β”‚  ← your feedback
    β”‚   └───────────────────────────────
    β”‚                                  β”‚
    β”‚                  (improves work…) β”‚
    β”‚                                  β”‚
    β”‚                  request_review() β”‚  ← still FREE
    β”‚   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
    β”‚   β”‚ "ok"                         β”‚  ← approved
    β”‚   └───────────────────────────────
    β”‚                                  β”‚
    β”‚            βœ… Done ◄───────────────
    β”‚                                  β”‚
    Total premium requests used: 1

Quick Start

1. Install & Build

git clone https://github.com/user/copilot-leecher.git
cd copilot-leecher
npm install
npm run build

2. Configure VS Code

Add to your VS Code settings.json:

{
  "github.copilot.chat.mcp.servers": {
    "copilot-leecher": {
      "command": "node",
      "args": ["/absolute/path/to/copilot-leecher/dist/index.js"]
    }
  }
}

Replace the path with your actual absolute path.

3. Restart VS Code & Open Dashboard

Restart VS Code. The MCP server auto-starts an HTTP dashboard at http://127.0.0.1:3456.

4. Use It

In your Copilot Chat prompt or Agent Contract, instruct the agent:

After completing your work, call the request_review tool with a taskId and summary.
Wait for feedback. If approved, finish. Otherwise, improve and request review again.

Then open http://127.0.0.1:3456 to review and provide feedback.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  VS Code #1     β”‚   β”‚  VS Code #2     β”‚   β”‚  Browser        β”‚
β”‚  Copilot Agent  β”‚   β”‚  Copilot Agent  β”‚   β”‚  127.0.0.1:3456 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚ MCP                 β”‚ MCP                  β”‚ HTTP
    β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”           β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”                 β”‚
    β”‚MCP+HTTP β”‚           β”‚MCP only β”‚                 β”‚
    β”‚Server #1β”‚           β”‚Server #2β”‚                 β”‚
    β”‚(:3456)  β”‚           β”‚(skipped)β”‚                 β”‚
    β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜           β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜                 β”‚
         β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                      β”‚
                  β–Ό                                   β”‚
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”              β”‚
    β”‚  /tmp/copilot-reviewer-sessions/ β”‚β—„β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
    β”‚  (file-system persistence)       β”‚
    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  • The first MCP process binds port 3456 for the web dashboard.
  • Subsequent instances skip the HTTP server but share session data via the filesystem.

MCP Tool: `request_review`

Parameter Type Required Description
taskId string βœ… Unique task identifier (e.g. task-20260217-001)
summary string βœ… Brief summary of work done (2-3 sentences)

Returns: { status, feedback, sessionId, reviewerUrl }

  • status: "approved" or "needs_revision"
  • feedback: The reviewer's text

HTTP API

Method Endpoint Description
GET /api/sessions List all sessions
GET /api/sessions/pending List pending sessions
GET /api/sessions/:id Get session details
POST /api/sessions/:id/feedback Submit feedback { "feedback": "..." }
GET /api/health Health check

Agent Contract Template

Add this to your prompt / system instructions:


Tools (1)

request_reviewBlocks the agent to wait for user feedback via a local web UI, returning feedback as a tool call result.

Configuration

claude_desktop_config.json
{"github.copilot.chat.mcp.servers": {"copilot-leecher": {"command": "node", "args": ["/absolute/path/to/copilot-leecher/dist/index.js"]}}}

Try it

β†’After completing your work, call the request_review tool with a taskId and summary. Wait for feedback. If approved, finish. Otherwise, improve and request review again.
β†’Implement the new login feature and use request_review to get my approval before finalizing the code.
β†’Refactor the authentication module. Once done, call request_review so I can check the implementation details.

Frequently Asked Questions

What are the key features of Copilot Leecher?

Enables iterative refinement of AI outputs within a single premium request session. Provides a local web dashboard at localhost:3456 for reviewing AI work. Returns user feedback as free tool call results instead of new user prompts. Supports session persistence via the filesystem for multiple VS Code instances.

What can I use Copilot Leecher for?

Reducing GitHub Copilot premium request consumption for complex coding tasks. Iteratively improving code quality through human-in-the-loop reviews. Handling multi-step feature implementation without triggering additional billing requests. Reviewing and refining AI-generated documentation or configuration files.

How do I install Copilot Leecher?

Install Copilot Leecher by running: git clone https://github.com/xiangxiaobo/Copilot-Leecher.git && cd Copilot-Leecher && npm install && npm run build

What MCP clients work with Copilot Leecher?

Copilot Leecher works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Copilot Leecher docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare