Copilot MCP Server

Copilot MCP Server

Integrates GitHub Copilot with MCP-compatible tools to provide AI-powered code assistance, including chat, code explanation, and reviews. It leverages existing GitHub CLI authentication to support multiple models like GPT-4o and Claude 3.5 Sonnet.

Category
Visit Server

README

Copilot MCP Server

A Model Context Protocol (MCP) server that integrates with GitHub Copilot to provide AI-powered code assistance directly to Claude Code and other MCP-compatible tools.

Features

  • Chat with Copilot: Get general programming assistance using GitHub Copilot's AI models
  • Code Explanation: Detailed explanations of code snippets
  • Code Suggestions: Generate code based on natural language descriptions
  • Code Review: Get feedback and improvement suggestions for your code
  • Multiple AI Models: Support for GPT-4o, Claude 3.5 Sonnet, and Gemini 2.0 Flash
  • Rate Limiting: Built-in rate limiting to respect API limits
  • Automatic Authentication: Works with your existing GitHub Copilot CLI setup

Installation

Option 1: Using npx (Recommended)

npx @willianpaiva/copilot-mcp-server

Option 2: Manual Installation

  1. Clone this repository:
git clone https://github.com/WillianPaiva/copilot-mcp.git
cd copilot-mcp
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Configuration

No Configuration Needed!

The server works out of the box with your existing GitHub Copilot authentication.

Optional Configuration

Only needed for special use cases. Create a .env file:

cp .env.example .env

Optional settings:

# Only if you want to override the detected organization
GITHUB_ORG=your_organization_name

# Optional debugging
LOG_LEVEL=info
DEBUG=false
MAX_REQUESTS_PER_MINUTE=60

Setup Requirements

Prerequisites:

  1. GitHub Copilot Subscription: You need an active GitHub Copilot subscription
  2. GitHub Copilot CLI Installed: Install and authenticate GitHub Copilot CLI:
    # Install GitHub CLI first
    brew install gh  # or your preferred method
    
    # Install GitHub Copilot CLI extension
    gh extension install github/gh-copilot
    
    # Authenticate (this will save tokens to ~/.config/github-copilot/)
    gh auth login
    

Authentication

Automatic Authentication (Recommended)

The MCP server automatically detects your GitHub Copilot authentication from:

  1. ~/.config/github-copilot/hosts.json
  2. ~/.config/github-copilot/apps.json

No manual configuration needed if you have GitHub Copilot CLI installed and authenticated!

Troubleshooting Authentication

If automatic detection fails, ensure you have GitHub Copilot CLI properly installed and authenticated:

gh extension install github/gh-copilot
gh auth login

Usage

With Claude Code

Add the following to your Claude Code MCP configuration:

Option 1: Using npx (Recommended)

{
  "mcpServers": {
    "copilot": {
      "command": "npx",
      "args": ["-y", "@willianpaiva/copilot-mcp-server"]
    }
  }
}

Option 2: Manual Installation

{
  "mcpServers": {
    "copilot": {
      "command": "node",
      "args": ["/path/to/your/copilot-mcp/build/index.js"]
    }
  }
}

That's it! No tokens or environment variables needed - the server automatically uses your existing GitHub Copilot authentication.

Available Tools

copilot_chat

General programming assistance and questions.

// Example usage in Claude Code
copilot_chat({
  message: "How do I implement a binary search algorithm?",
  model: "gpt-4o",
  context: "I'm working on a JavaScript project"
})

copilot_explain

Get detailed explanations of code.

copilot_explain({
  code: "function fibonacci(n) { return n <= 1 ? n : fibonacci(n-1) + fibonacci(n-2); }",
  language: "javascript"
})

copilot_suggest

Generate code from natural language descriptions.

copilot_suggest({
  prompt: "Create a React component for a user profile card",
  language: "javascript",
  maxSuggestions: 3
})

copilot_review

Get code review and improvement suggestions.

copilot_review({
  code: "your code here",
  language: "python",
  reviewType: "security"
})

Available Resources

copilot://models

List of available AI models and their capabilities.

copilot://usage

Current usage statistics and rate limiting information.

Development

Run in Development Mode

npm run dev

Build

npm run build

Lint

npm run lint

Test

npm test

Rate Limiting

The server implements rate limiting to respect GitHub's API limits:

  • Default: 60 requests per minute
  • Configurable via MAX_REQUESTS_PER_MINUTE environment variable
  • Automatic reset every minute

Error Handling

The server includes comprehensive error handling for:

  • Authentication failures
  • Rate limit exceeded
  • Network issues
  • Invalid requests
  • API unavailability

Troubleshooting

Common Issues

  1. Authentication Failed

    • Ensure GitHub Copilot CLI is installed: gh extension install github/gh-copilot
    • Make sure you're authenticated: gh auth login
    • Verify you have access to GitHub Copilot
  2. Rate Limit Exceeded

    • Wait for the rate limit to reset (1 minute)
    • Consider reducing the frequency of requests
  3. API Not Available

    • Verify you have access to GitHub Copilot
    • Check GitHub's status page for outages

Debug Mode

Enable debug mode for verbose logging:

DEBUG=true
LOG_LEVEL=debug

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Security

  • The server uses your existing GitHub Copilot authentication
  • No tokens are stored or transmitted by this application
  • Authentication files are read-only from GitHub CLI's standard locations
  • Follow GitHub's security best practices for your main GitHub authentication

Support

For issues and questions:

  1. Check the troubleshooting section
  2. Search existing GitHub issues
  3. Create a new issue with detailed information

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured