Establish comprehensive compatibility testing for the MCP server across multiple CodeQL CLI versions to ensure broad usability.
Target CLI Versions
| Version |
Status |
Notes |
| v2.18.1 |
⏳ Untested |
Minimum supported version |
| v2.20.3 |
⏳ Untested |
Mid-range version |
| v2.21.4 |
⏳ Untested |
Pre-2.22 API changes |
| v2.24.0 |
⏳ Untested |
Current latest release |
Implementation Design
-
Version Detection (server/src/lib/cli-executor.ts)
- Parse
codeql version --format=json output
- Store detected version in session state
- Expose via
codeql_server_info tool response
-
Compatibility Matrix (server/src/lib/version-compat.ts)
- Define feature availability per CLI version
- Map breaking changes (e.g.,
--format flag changes, subcommand renames)
- Implement version-specific command builders
-
CI/CD Validation (.github/workflows/)
- Matrix build testing each target version
- Download CLI via
github/codeql-action/init
- Run full integration test suite per version
-
Runtime Adaptation
- Graceful degradation for unavailable features
- Version-specific tool descriptions noting limitations
- Warning logs for deprecated CLI usage patterns
Acceptance Criteria
Establish comprehensive compatibility testing for the MCP server across multiple CodeQL CLI versions to ensure broad usability.
Target CLI Versions
Implementation Design
Version Detection (
server/src/lib/cli-executor.ts)codeql version --format=jsonoutputcodeql_server_infotool responseCompatibility Matrix (
server/src/lib/version-compat.ts)--formatflag changes, subcommand renames)CI/CD Validation (
.github/workflows/)github/codeql-action/initRuntime Adaptation
Acceptance Criteria
codeql_server_infoREADME.md