
CodeQL MCP Server

2025.03.31
84
Python代码分析开发工具集成开发效率
CodeQL MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,封装了 CodeQL 查询服务器。它允许工具如 Cursor 或 AI 代理通过结构化命令和文档搜索与 CodeQL 进行交互。
View on GitHub
Overview
基本能力
产品定位
CodeQL MCP Server 是一个中间件服务,旨在为开发工具(如 Cursor)或 AI 代理提供与 CodeQL 查询服务器的交互能力。
核心功能
- 注册 CodeQL 数据库
- 运行完整查询或快速评估符号
- 将
.bqrs
文件解码为 JSON - 定位谓词/类符号的位置
适用场景
- 开发工具集成:如 Cursor 等工具可以通过 MCP 协议与 CodeQL 交互。
- AI 代理:AI 代理可以通过结构化命令调用 CodeQL 功能。
- 代码分析:开发者可以通过此服务快速运行 CodeQL 查询并获取结果。
工具列表
server.py
:主 FastMCP 服务器,暴露 CodeQL 工具。codeqlclient.py
:CodeQLQueryServer 实现(JSON-RPC 处理器)。
常见问题解答
- 必须确保
codeql
二进制文件在$PATH
中,或在codeqlclient.py
中硬编码其路径。 - 需要在提示中指定查询位置、查询写入位置和数据库路径。
使用教程
使用依赖
安装依赖:
uv pip install -r requirements.txt
或
pip install fastmcp httpx
安装教程
运行 MCP 服务器:
uv run mcp run server.py -t sse
- 服务器将启动在
http://localhost:8000/sse
。
调试方式
确保 Cursor 的配置文件 .cursor/config.json
包含以下内容:
{
"mcpServers": {
"CodeQL": {
"url": "http://localhost:8000/sse"
}
}
}
许可证
None