v2.24.2
v2.24.2
Highlights
π’ New VS Code Extension: advanced-security.vscode-codeql-development-mcp-server π
This release introduces a new VS Code extension distributed as a VSIX archive (codeql-development-mcp-server-v2.24.2.vsix) that acts as a "bridge" between the GitHub CodeQL extension and the CodeQL Development MCP Server. When installed, the extension:
- Automatically discovers CodeQL databases, query run results, and MRVA (Multi-Repository Variant Analysis) results managed by the
GitHub.vscode-codeqlextension, and exposes them to MCP-connected AI agents via environment variables. - Bundles the MCP server and all CodeQL tool packs inside the VSIX, so that installation is self-contained β no separate
npm installrequired. - Manages the MCP server lifecycle (start/stop/restart) from within VS Code, with configurable settings for the server command, arguments, and npm version.
- Registers an MCP Server Definition Provider, enabling VS Code's built-in MCP support to discover and connect to the server automatically.
Download: The VSIX is attached as a release asset. Install it via
code --install-extension codeql-development-mcp-server-v2.24.2.vsixor through the VS Code Extensions sidebar ("Install from VSIXβ¦").
New MCP Server Tools
| Tool | Description |
|---|---|
list_codeql_databases |
Discovers CodeQL databases in configured base directories. Returns path, language, CLI version, and creation time for each database. |
list_query_run_results |
Lists discovered query run result directories. Returns path, query name, timestamp, language, and available artifacts (evaluator-log, BQRS, SARIF, query.log, summary). Supports filtering by queryName, language, or queryPath. |
list_mrva_run_results |
Lists discovered MRVA run results. Returns run ID, timestamp, repositories scanned, analysis status, and available artifacts. |
profile_codeql_query_from_logs |
Parses CodeQL query evaluation logs into a performance profile without re-running the query. Works with logs from codeql query run, codeql database analyze, or vscode-codeql query history. |
read_database_source |
Reads source file contents directly from a CodeQL database's source archive (src.zip) or extracted source directory (src/), enabling agents to inspect code at alert locations without the original source tree. |
New MCP Server Prompts
| Prompt | Description |
|---|---|
run_query_and_summarize_false_positives |
Guides an agent through running a CodeQL query, reading source code from the database archive via read_database_source, and diagnosing false positives / false negatives to improve query precision. |
Changed MCP Server Tools
| Tool | Change |
|---|---|
codeql_bqrs_decode |
Added text and bqrs output formats, --result-set selection, --sort-key / --sort-direction sorting, --no-titles flag, --entities column display control, and --rows pagination. Improved description to document the typical decode workflow. |
codeql_bqrs_info |
Enhanced description with cross-references to related tools and workflow guidance. |
codeql_database_analyze |
Improved logging and error messages; auto-creates output directories. |
codeql_query_run |
Minor logging improvements. |
register_database |
Error objects now chain the original cause for better debugging. |
Changed MCP Server Prompts
All existing workflow prompts have been updated to use #tool_name hashtag references (instead of backtick formatting) for tool mentions, improving consistency when rendered in VS Code Copilot Chat. Additionally, prompt templates are now embedded at build time via esbuild's loader: { '.md': 'text' }, fixing a critical bug where prompts were missing at runtime in VSIX and npm-installed deployments.
Bug Fixes
- VSIX bundle missing server dependencies β Fixed a packaging bug where the esbuild
externalconfiguration excluded required Node.js dependencies (express,cors,zod, etc.) from the bundled VSIX extension, causing runtime failures. (#71) - Prompt templates not found at runtime β Refactored prompt loading from filesystem reads (
readFileSync) to build-time static imports, ensuring prompt templates are available in all deployment scenarios (monorepo, npm, VSIX). (#71) - Client integration test timeouts β Resolved timeout issues in client integration test fixtures that caused flaky CI runs. (#74)
- VS Code extension version not tracked in release scripts β The
update-release-version.shscript and nightly CodeQL CLI update workflow now correctly detect and update the version inextensions/vscode/package.jsonalongside other version-bearing files. (#75) - VSIX-bundled server pack installation β The extension now prefers the bundled
server/directory inside the VSIX for CodeQL pack resolution, falling back to npm-installed packages only if necessary. (#81) - Error chaining in
register_databaseβ All error paths now preserve the originalcause, making debugging registration failures easier. (#61)
Infrastructure & CI/CD
- Refactored the release workflow into separate child workflows with isolated deployment environments. (#45)
- Added a nightly CodeQL CLI update workflow that automates version bumps across all packages. (#58)
- Added dedicated GitHub Actions workflows for building, testing (with coverage), linting, bundling, and packaging the VS Code extension. (#61)
- Added
stdiotransport support to the client integration test runner alongside SSE. (#77) - Release artifacts now include version strings in filenames (e.g.,
codeql-development-mcp-server-v2.24.2.vsix,codeql-development-mcp-server-v2.24.2.tar.gz). (#81) - Release workflow uses a concurrency group keyed by version, preventing overlapping releases. (#81)
- Added
.mddocumentation enforcement for all.qltool queries. (#81)
Dependency Updates
- Upgraded CodeQL CLI dependency to v2.24.2. (#65)
- Bumped
actions/download-artifactfrom 6 to 7. (#49) - Bumped
dotenvfrom 17.2.4 to 17.3.0. (#54) - Bumped
eslintfrom ^10.0.0 to ^10.0.1 across all packages. (#75)
What's Changed (PRs)
- Refactor release into separate child workflows with isolated deployment environments by @data-douser in #45
- Build(deps): bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #49
- Build(deps): bump dotenv from 17.2.4 to 17.3.0 by @dependabot[bot] in #54
- Add nightly CodeQL CLI update workflow by @data-douser in #58
- Add
vscode-codeql-development-mcp-server.vsixextension for "bridge" toGitHub.vscode-codeqlextension's databases, query results, and MRVA results by @data-douser in #61 - Upgrade CodeQL CLI dependency to v2.24.2 by @github-actions[bot] in #65
- Add a new prompt & tool for diagnosing FPs/FNs from query runs by @MichaelRFairhurst in #70
- Fixes and integration tests for MCP-provided prompts and VSIX bundle by @data-douser in #71
- Avoid timeouts in client integration test fixtures by @data-douser in #74
- Fixes for
v2.24.2release prep by @data-douser in #75 - Add
stdiotransport support to client integration test runner by @Copilot in #77 - Prep for
v2.24.2release by @data-douser in #81
New Contributors
- @dependabot[bot] made their first contribution in #49
- @MichaelRFairhurst made their first contribution in #70
- @github-actions[bot] made their first contribution in #65
Full Changelog: v2.24.1...v2.24.2
What's Changed
- Prep for v2.24.1 release by @data-douser in #38
- Refactor release into separate child workflows with isolated deployment environments by @data-douser in #45
- Build(deps): bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #49
- Build(deps): bump dotenv from 17.2.4 to 17.3.0 by @dependabot[bot] in #54
- Add nightly CodeQL CLI update workflow by @data-douser in #58
- Add
vscode-codeql-development-mcp-server.vsixextension for "bridge" toGitHub.vscode-codeqlextension's databases, query results, and MRVA results by @data-douser in #61 - Fixes and integration tests for MCP-provided prompts and VSIX bundle by @data-douser in #71
- Avoid timeouts in client integration test fixtures by @data-douser in #74
- Add a new prompt & tool for diagnosing FPs/FNs from query runs. by @MichaelRFairhurst in #70
- Upgrade CodeQL CLI dependency to v2.24.2 by @github-actions[bot] in #65
- Fixes for
v2.24.2release prep by @data-douser in #75 - Add
stdiotransport support to client integration test runner by @Copilot in #77 - Prep for
v2.24.2release by @data-douser in #81 - Fix
release-tagworkflow for releases created fromv*tag onmainbranch by @data-douser in #85 - Fix release-tag workflow to push only annotated tags to main by @data-douser in #87
New Contributors
- @dependabot[bot] made their first contribution in #49
- @MichaelRFairhurst made their first contribution in #70
- @github-actions[bot] made their first contribution in #65
Full Changelog: v2.24.0...v2.24.2