This guide covers installation, configuration, and usage of the CodeQL Development MCP Server.
- Node.js v24.13.0 or later (nodejs.org)
- CodeQL CLI (github.com/github/codeql-cli-binaries)
- VS Code with GitHub Copilot extension
The easiest and recommended way to get started is the VS Code extension (VSIX
archive bundle), which automates installation, configuration, and CodeQL CLI
discovery. Download the .vsix from
GitHub Releases
and install it in VS Code via Extensions: Install from VSIX… in the Command
Palette, or build from source (npm run package:vsix at the repository root).
See the VS Code Extension guide for details.
The package is published to the public npm registry. No authentication or special configuration is needed:
# Install globally
npm install -g codeql-development-mcp-server
# Install CodeQL pack dependencies (required on first use)
codeql-development-mcp-server-setup-packsNote (Windows): The
codeql-development-mcp-server-setup-packscommand requires a Bash-compatible shell (e.g., Git Bash or WSL). On Windows without Bash, runsetup-packs.shdirectly from the package'sscripts/directory.
Or use npx to run without a global install:
npx -y codeql-development-mcp-serverNote: The npm package bundles the tool query source packs (
.qlfiles and lock files), but their CodeQL library dependencies (e.g.,codeql/javascript-all) must be fetched from GHCR on first use. Runcodeql-development-mcp-server-setup-packsonce after installing to download them (~/.codeql/packages/). If you skip this step, thecodeql_pack_installMCP tool can install dependencies on demand for individual packs.
- Download the latest release from Releases
- Extract:
tar -xzf codeql-development-mcp-server-vX.Y.Z.tar.gz -C /path/to/destination
git clone --recurse-submodules https://github.com/advanced-security/codeql-development-mcp-server.git
cd codeql-development-mcp-server
npm install && npm run buildAdd to your mcp.json file:
| OS | Location |
|---|---|
| macOS | ~/Library/Application Support/Code/User/mcp.json |
| Windows | %APPDATA%\Code\User\mcp.json |
| Linux | ~/.config/Code/User/mcp.json |
{
"servers": {
"ql-mcp": {
"command": "npx",
"args": ["-y", "codeql-development-mcp-server"],
"type": "stdio"
}
}
}{
"servers": {
"ql-mcp": {
"command": "node",
"args": ["/path/to/destination/server/dist/codeql-development-mcp-server.js"],
"type": "stdio"
}
}
}| Variable | Description | Default |
|---|---|---|
CODEQL_PATH |
Absolute path to the CodeQL CLI binary | codeql |
TRANSPORT_MODE |
stdio or http |
stdio |
HTTP_PORT |
HTTP port | 3000 |
DEBUG |
Enable debug logging | false |
CODEQL_DATABASES_BASE_DIRS |
Colon-separated directories to search for CodeQL databases | — |
CODEQL_QUERY_RUN_RESULTS_DIRS |
Colon-separated directories containing per-run query result subdirectories | — |
CODEQL_MRVA_RUN_RESULTS_DIRS |
Colon-separated directories containing MRVA run result subdirectories | — |
- Restart VS Code
- Open Command Palette (
Ctrl+Shift+P/Cmd+Shift+P) - Run "GitHub Copilot: List MCP Servers"
- Confirm
ql-mcpappears
- Tool query errors (e.g., PrintAST fails): Run
codeql-development-mcp-server-setup-packsto install CodeQL pack dependencies - Server not listed: Verify absolute path in
mcp.json, restart VS Code - CodeQL errors: Run
codeql --versionto confirm CLI is installed - Permission denied: Check file permissions on server directory
- Tools Reference - Available MCP tools
- Prompts Reference - MCP prompts for CodeQL workflows
- Resources Reference - MCP resources for CodeQL learning