x51xxx/copilot-mcp-server
If you are the rightful owner of copilot-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
Copilot MCP Tool is an open-source Model Context Protocol (MCP) server that connects IDEs or AI assistants to GitHub Copilot CLI for enhanced code analysis and automation.
Copilot MCP Tool
Copilot MCP Tool is an open‑source Model Context Protocol (MCP) server that connects your IDE or AI assistant (Claude, Cursor, etc.) to GitHub Copilot CLI. It enables non‑interactive automation, safe tool execution with permissions, and large‑scale code analysis via @ file references. Built for reliability and speed, it streams progress updates, and integrates cleanly with standard MCP clients for code review, refactoring, documentation, and CI automation.
- Primary: Ask GitHub Copilot CLI questions from your MCP client, with comprehensive tool management
- Advanced: Batch processing, code review, and brainstorming capabilities
TLDR:
+ GitHub Copilot CLI
Goal: Use GitHub Copilot CLI directly from your MCP-enabled editor to analyze and edit code efficiently.
Prerequisites
Before using this tool, ensure you have:
- Node.js (v18.0.0 or higher)
- GitHub Copilot CLI - Required
One-Line Setup
claude mcp add copilot-cli -- npx -y @trishchuk/copilot-mcp-server
Verify Installation
Type /mcp inside Claude Code to verify the Copilot MCP is active.
Alternative: Import from Claude Desktop
If you already have it configured in Claude Desktop:
- Add to your Claude Desktop config:
"copilot-cli": {
"command": "npx",
"args": ["-y", "@trishchuk/copilot-mcp-server"]
}
- Import to Claude Code:
claude mcp add-from-claude-desktop
Configuration
Register the MCP server with your MCP client:
For NPX Usage (Recommended)
Add this configuration to your Claude Desktop config file:
{
"mcpServers": {
"copilot-cli": {
"command": "npx",
"args": ["-y", "@trishchuk/copilot-mcp-server"],
"env": {
"COPILOT_MODEL": "claude-sonnet-4.5"
}
}
}
}
For Global Installation
If you installed globally, use this configuration instead:
{
"mcpServers": {
"copilot-cli": {
"command": "copilot-mcp",
"env": {
"COPILOT_MODEL": "claude-sonnet-4.5"
}
}
}
}
Configuration File Locations:
- Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/claude/claude_desktop_config.json
- macOS:
After updating the configuration, restart your terminal session.
Environment Variables
Configure default behavior with environment variables:
COPILOT_MODEL - Default AI Model
Method 1: In MCP Configuration (Recommended)
Add the env field to your MCP server configuration:
{
"mcpServers": {
"copilot-cli": {
"command": "npx",
"args": ["-y", "@trishchuk/copilot-mcp-server"],
"env": {
"COPILOT_MODEL": "claude-sonnet-4.5"
}
}
}
}
Method 2: System Environment Variable
# Set for current session
export COPILOT_MODEL=claude-sonnet-4.5
# Permanently (add to ~/.bashrc or ~/.zshrc)
echo 'export COPILOT_MODEL=claude-sonnet-4.5' >> ~/.zshrc
Available models:
claude-sonnet-4.5- Default, best for code generationclaude-sonnet-4- Faster versiongpt-5- OpenAI GPT-5
Priority: model parameter > COPILOT_MODEL env > Copilot CLI default (claude-sonnet-4.5)
Override in requests:
# Uses COPILOT_MODEL
Use ask tool to analyze @src/
# Overrides with gpt-5
Use ask tool with model gpt-5 to analyze @src/
COPILOT_MCP_CWD - Working Directory
Purpose: Sets the working directory for Copilot CLI command execution. This is especially important when the MCP server starts from a different directory than your project (e.g., from home directory in IDE integrations).
Method 1: In MCP Configuration (Recommended for IDE)
{
"mcpServers": {
"copilot-cli": {
"command": "npx",
"args": ["-y", "@trishchuk/copilot-mcp-server"],
"env": {
"COPILOT_MCP_CWD": "/absolute/path/to/your/project"
}
}
}
}
Method 2: System Environment Variable
# Set for current session
export COPILOT_MCP_CWD=/path/to/your/project
# Permanently (add to ~/.bashrc or ~/.zshrc)
echo 'export COPILOT_MCP_CWD=/path/to/your/project' >> ~/.zshrc
Resolution Priority:
workingDirparameter in request (highest)COPILOT_MCP_CWDenv variablePWDorINIT_CWDenv variables- Auto-inferred from
@pathin prompt process.cwd()(lowest)
Override in requests:
# Use explicit workingDir parameter
Use ask tool with workingDir "/path/to/project" to analyze the codebase
For IntelliJ IDEA / IDE Users: If Copilot CLI cannot find your project files, set COPILOT_MCP_CWD in your MCP server configuration to point to your project directory.
See Getting Started Guide for full configuration details.
Example Workflow
- Natural language: "use copilot to explain index.html", "understand this repo with @src", "look for vulnerabilities and suggest fixes"
- Claude Code: Type
/copilotto access the MCP server tools.
Usage Examples
GitHub Copilot CLI
// Use GitHub Copilot CLI for analysis
'explain the architecture of @src/';
// Code review with specific focus
'use copilot to review @src/main.ts for security vulnerabilities';
// Batch processing multiple files
'use batch to refactor all JavaScript files in @src/ for ES6 syntax';
// Comprehensive code review
'use review to perform security review of @api/ with high severity filter';
With File References (using @ syntax)
ask copilot to analyze @src/main.ts and explain what it doesuse copilot to summarize @. the current directoryanalyze @package.json and list dependencies using copilot
General Questions (without files)
ask copilot to explain div centeringask copilot about best practices for React developmentuse copilot for TypeScript debugging help
Advanced Examples
// GitHub Copilot CLI batch processing
'use batch to update all React components in @src/components/ for React 18 patterns';
// Comprehensive code review
'use review for security review of @api/ with critical severity filter and fix suggestions';
// Multiple task processing
'use batch to: 1) add JSDoc comments to @utils.js, 2) fix ESLint issues in @main.ts, 3) update imports in @index.js';
Brainstorming & Ideation
brainstorm ways to optimize our CI/CD pipeline using SCAMPER methoduse copilot to brainstorm 10 innovative features for our appask copilot to generate product ideas for the healthcare domain with design-thinking approach
Tool Permissions & Safety
GitHub Copilot CLI supports tool permissions and directory access controls. This server defaults to allowing all tools for non-interactive mode.
use copilot to create and run a Python script that processes dataask copilot to safely test @script.py and explain what it does
Tools (for the AI)
These tools are designed to be used by the AI assistant.
Primary Tools (GitHub Copilot CLI)
-
ask: Executes GitHub Copilot CLI with comprehensive tool and directory management.- Supports
@file references for including file content - Tool permissions:
allowAllTools,allowTool,denyTool - Directory access:
addDirfor granting file system access - Advanced options:
logLevel,resume(session management),screenReadersupport - Session management and logging controls
- Supports
-
batch: Processes multiple atomic tasks with GitHub Copilot CLI in batch mode.- Supports parallel or sequential execution
- Priority-based task ordering (high, normal, low)
- Comprehensive error handling and progress reporting
- Stop-on-error or continue-on-error modes
- Detailed execution reports with timing and status
-
review: Comprehensive code review using GitHub Copilot CLI.- Multiple review types:
security,performance,code-quality,best-practices,architecture,testing,documentation,accessibility,comprehensive - Severity filtering:
low,medium,high,critical - Output formats:
markdown,json,text - Fix suggestions and priority ranking
- File pattern exclusions and issue limits
- Multiple review types:
Utility Tools
-
brainstorm: Generate novel ideas with structured methodologies.- Multiple frameworks: divergent, convergent, SCAMPER, design-thinking, lateral
- Domain-specific context (software, business, creative, research, product, marketing)
- Configurable idea count and analysis depth
- Includes feasibility, impact, and innovation scoring
- Example:
brainstorm prompt:"ways to improve code review process" domain:"software" methodology:"scamper"
-
ping: A simple test tool that echoes back a message.- Use to verify MCP connection is working
- Example:
/copilot:ping (MCP) "Hello from Copilot MCP!"
-
Help: Shows CLI help text for GitHub Copilot.- Automatically detects available CLI tools
- Displays installation instructions if tools are missing
-
version: Shows version information for all CLI tools and MCP server.- Reports GitHub Copilot CLI, Node.js, and MCP server versions
- Includes installation commands for missing tools
-
timeout-test: Test tool for timeout prevention.- Runs for a specified duration in milliseconds
- Useful for testing long-running operations
Slash Commands (for the User)
You can use these commands directly in Claude Code's interface (compatibility with other clients has not been tested).
- /analyze: Analyzes files or directories using Copilot, or asks general questions.
prompt(required): The analysis prompt. Use@syntax to include files (e.g.,/analyze prompt:@src/ summarize this directory) or ask general questions (e.g.,/analyze prompt:Please use a web search to find the latest news stories).
- /review: Performs comprehensive code review using Copilot.
target(required): Files/directories to review (e.g.,/review target:@src/or/review target:@main.js).reviewType(optional): Type of review - security, performance, code-quality, etc.
- /batch: Processes multiple tasks in batch mode.
tasks(required): Array of tasks to process.
- /help: Displays CLI help information for available tools.
- /ping: Tests the connection to the server.
message(optional): A message to echo back.
Acknowledgments
This project was inspired by the excellent work from jamubc/gemini-mcp-tool. Special thanks to @jamubc for the original MCP server architecture and implementation patterns.
Contributing
Contributions are welcome! Please submit pull requests or report issues through GitHub.
License
This project is licensed under the MIT License. See the file for details.
Disclaimer: This is an unofficial, third-party tool and is not affiliated with, endorsed, or sponsored by GitHub or Microsoft.