CodeQL N1ght MCP Server
A Model Context Protocol (MCP) server for integrating CodeQL N1ght tool with AI assistants.
Overview
This MCP server provides a standardized interface for AI assistants to interact with the CodeQL N1ght tool, enabling automated code analysis workflows including environment setup, database creation, and security scanning.
Features
- Environment Installation: One-click setup of JDK, Ant, and CodeQL dependencies
- Database Creation: Create CodeQL databases from JAR/WAR/ZIP files with configurable decompilers
- Security Scanning: Execute security scans with customizable query packs
- Parallel Processing: Support for goroutines and multi-threading
- Flexible Configuration: Customizable paths, timeouts, and caching options
Available Tools
version
Get version or help information from the CodeQL N1ght executable.
install_environment
Install required dependencies (JDK, Ant, CodeQL) with optional custom URLs.
create_database
Create a CodeQL database from target files (JAR/WAR/ZIP) with options for:
- Decompiler selection (procyon/fernflower)
- Dependency handling (none/all)
- Parallel processing
- Cache management
scan_database
Execute security scans on CodeQL databases with configurable:
- Database and query pack paths
- Parallel processing options
- Cache control
run_codeql_n1ght
Generic interface for direct command execution with custom arguments.
Installation
- Install dependencies:
pip install -r requirements.txt
- Ensure the CodeQL N1ght executable is available at the configured path (default:
J:\mcp\codeql-n1ght.exe)
Usage
Run the MCP server in STDIO mode:
python codeql_n1ght_mcp_server.py
Configuration
- Default Executable Path:
J:\mcp\codeql-n1ght.exe - Path Compatibility: Supports both Windows (
J:\path) and Unix-style (/j:/path) path formats - Timeouts: Configurable per operation (default: 10 minutes for general operations, 20 hours for database/scan operations)
Response Format
All tools return a standardized response format:
{
"returncode": 0,
"stdout": "command output",
"stderr": "error output",
"timeout": false
}
Error Handling
- Executable Not Found: Returns error if CodeQL N1ght executable is missing
- Invalid Parameters: Validates decompiler and dependency options
- Timeout Management: Configurable timeouts with process termination
- Path Resolution: Automatic path normalization and validation
License
This project is open source and available under the MIT License.
Metadata
Release files for iflow-mcp_yezere-codeql_n1ght_mcp_server 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0.tar.gz | 4.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.7 kB
Release files / iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0.tar.gz
| Download URL | iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0.tar.gz |
|---|---|
| Size | 4.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
355d0a5c2fd0e50990ed98ffe06949aefbd2243ab6d3171543f342cb756db3b8
|
|
BLAKE2b-256 checksum How to use checksums |
685ee2a6f8cba72fbad1b31a259ea6b78da3f18c65181d7a8351783177e0c90c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0-py3-none-any.whl
| Download URL | iflow_mcp_yezere_codeql_n1ght_mcp_server-0.1.0-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1956dd53c79de972e2778320d5b3f2b36133da4670498cd1a62e442603bdfebf
|
|
BLAKE2b-256 checksum How to use checksums |
b50df57528b4a3429ae5f3951a69f5200a98edfc31d53d21b868f63f8bc54437
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|