Skip to content

Add GitHub Copilot CLI installer provider#86

Open
SrFlipFlop wants to merge 1 commit into
PortSwigger:mainfrom
SrFlipFlop:feature/copilot-cli-installer
Open

Add GitHub Copilot CLI installer provider#86
SrFlipFlop wants to merge 1 commit into
PortSwigger:mainfrom
SrFlipFlop:feature/copilot-cli-installer

Conversation

@SrFlipFlop
Copy link
Copy Markdown

Why

GitHub Copilot CLI was also verified as a working Burp MCP client, but setting it up currently requires users to manually create or edit ~/.copilot/mcp-config.json and wire in the packaged proxy jar with the correct --sse-url arguments.

That makes Copilot CLI setup more error-prone than the built-in Claude Desktop installer path. Adding a dedicated installer button makes the working Burp configuration reproducible and removes the need for users to hand-edit the MCP config for the common setup.

What changed

  • add a new GitHubCopilotCliProvider installer
  • register an Install to GitHub Copilot CLI button in the MCP installation panel
  • extract or reuse the packaged mcp-proxy-all.jar via ProxyJarManager
  • create or update ~/.copilot/mcp-config.json
  • add or replace the mcpServers.burp entry with the tested local stdio proxy configuration
  • preserve unrelated Copilot CLI MCP config entries when updating the file
  • add tests covering config creation and replacement behavior

Scope

This PR only adds automatic installation for GitHub Copilot CLI.

It does not:

  • add installers for other clients
  • change the MCP server runtime behavior
  • modify the existing Claude Desktop installer flow

Related issues

  • Builds on the client setup work documented in #83.
  • Completes another verified manual client installation path from the README examples.
  • Helps with #46 by making one tested client easier to configure.
  • Related to #38, which asks for clearer setup outside the Claude Desktop happy path.
  • May help users hitting #42 by reducing manual config mistakes around proxy and endpoint setup.

Manual verification

  • verified that GitHub Copilot CLI works against a local Burp MCP server through mcp-proxy-all.jar
  • verified installer output writes a valid mcp-config.json entry for mcpServers.burp
  • verified existing Copilot CLI MCP config entries are preserved while the Burp entry is updated

Tests

  • added focused tests for Copilot CLI config creation
  • added focused tests for Copilot CLI config merge/replacement behavior
  • ran ./gradlew test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant