Skip to content

Updated

GitHub Copilot CLI

GitHub Copilot CLI reads MCP server configuration from ~/.copilot/mcp-config.json (global), .mcp.json (project) or .github/mcp.json (project). You can also manage servers with the copilot mcp add command.

Install with the pinned CLI

CLI 0.2.14 has a matching installer for this client. Sign in first with npx -y lyrashield@0.2.14 login --oauth for local stdio. Review the planned changes before writing:

npx -y lyrashield@0.2.14 install copilot-cli --dry-run

When the preview is correct, run the installer:

npx -y lyrashield@0.2.14 install copilot-cli

The installer updates LyraShield's entry and preserves unrelated configuration. You can also use the manual snippet below. Restart or reload the client and complete a read-only authenticated call; an installed config entry alone does not prove client discovery.

Merge the current configuration by hand below; Node.js 24 or newer is required for local stdio.

Local stdio setup

Add the following to ~/.copilot/mcp-config.json or .mcp.json. Preserve other entries. Authenticate separately with npx -y lyrashield@0.2.14 login --oauth in the same OS account and select the intended workspace.

Manual fallback: merge the following into .mcp.json. Recommended: run npx -y lyrashield@0.2.14 login --oauth once; the local MCP server reads the selected workspace credential from ~/.lyrashield/credentials.json. If you use an API key instead, set it in your private process environment before starting the client.

{
  "mcpServers": {
    "lyrashield": {
      "command": "npx",
      "args": [
        "-y",
        "@lyrashield/mcp@0.2.12"
      ],
      "env": {
        "LYRASHIELD_API_URL": "https://app.lyrashieldai.com"
      },
      "type": "local"
    }
  }
}
CLI installer for this client: Run this pinned command to add LyraShield's entry. The client-specific writer preserves unrelated configuration where supported.
npx -y lyrashield@0.2.14 install copilot-cli

Important gotchas

  • Copilot CLI stdio entries use `type: "local"` (or `"stdio"`); remote uses `type: "http"`.
  • Each entry may carry a `tools` array (e.g. ["*"]) to allowlist server tools.
  • GitHub's own MCP server is built in — you don't add it manually.
type field: Copilot CLI stdio entries use "type": "local" (or "stdio"). Each entry may also carry a tools array (e.g. ["*"]) to allowlist server tools. GitHub's own built-in MCP server does not need to be added manually.

Remote HTTP setup

For environments where you prefer not to run a local process, connect to the remote endpoint.

Manual fallback: merge the following into .mcp.json. Enter the workspace API key only in the client's private, untracked server settings or its documented secret-backed header interpolation. The snippet contains a placeholder; never put a real key in a shared project file or shell command.

{
  "mcpServers": {
    "lyrashield": {
      "url": "https://app.lyrashieldai.com/api/mcp",
      "headers": {
        "Authorization": "Bearer <LYRASHIELD_API_KEY>"
      },
      "type": "http"
    }
  }
}
Remote authorization: Browser-confirmed OAuth delegations run matching actions without repeated approval. Mutating calls authenticated with an API key receive a connect_required response pointing at OAuth connect and out-of-grant delegated calls are denied. Local stdio approval is separate from hosted delegation.

Verify the connection

Run copilot mcp list to confirm the lyrashield server is registered. Then ask Copilot to call lyrashield_list_workspaces and confirm the intended workspace. Server discovery and an authenticated read are separate checks.

Requirements: For local stdio, Node.js 24+ and a local OAuth login or workspace API key. Remote OAuth needs no local key. The @lyrashield/mcp package is published on npm, so npx -y @lyrashield/mcp@0.2.12 resolves directly.