项目简介
'mcp-code-checker' 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 AI 助手(如 Claude)提供代码质量检查功能。通过此服务器,AI 助手可以执行代码静态分析(Pylint)和单元测试(Pytest),从而帮助开发者提升代码质量。
主要功能点
- 代码质量分析 (Pylint):使用 Pylint 对项目代码进行静态分析,检测代码风格问题、潜在错误和复杂度等,并生成易于理解的报告或提示信息。
- 单元测试 (Pytest):运行 Pytest 单元测试框架,执行项目中的测试用例,检测代码功能是否符合预期,并生成测试结果报告或提示信息。
- 综合检查:同时运行 Pylint 和 Pytest 检查,提供全面的代码质量分析结果。
- LLM 友好提示:针对代码检查结果,生成优化的提示信息,方便 LLM 理解和进一步处理,例如向开发者解释问题或建议修复方案。
- 项目目录安全限制:所有代码检查操作限定在指定的项目目录内,保障用户代码安全。
安装步骤
- 克隆仓库
git clone https://github.com/MarcusJellinghaus/mcp-code-checker.git cd mcp-code-checker
- 创建并激活虚拟环境 (可选,推荐)
python -m venv .venv source .venv/bin/activate # Linux/macOS .venv\Scripts\activate # Windows
- 安装依赖
pip install -e .
服务器配置
为了让 MCP 客户端(例如 Claude Desktop)连接到此代码检查服务器,您需要配置客户端的 MCP 服务器设置。以下是一个 'claude_desktop_config.json' 文件的配置示例,您需要根据实际情况修改路径:
{ "mcpServers": { "code_checker": { "command": "C:\\path\\to\\mcp_code_checker\\.venv\\Scripts\\python.exe", "args": [ "C:\\path\\to\\mcp_code_checker\\src\\main.py", "--project-dir", "C:\\path\\to\\your\\project" ], "env": { "PYTHONPATH": "C:\\path\\to\\mcp_code_checker\\" } } } }
配置参数说明:
- '"code_checker"': 服务器名称,可以自定义。
- '"command"': Python 解释器路径,需要指向您在安装步骤中创建的虚拟环境中的 Python 解释器。
- '"args"': 启动服务器的命令行参数,包括:
- '"C:\path\to\mcp_code_checker\src\main.py"': 服务器主程序 'main.py' 的路径。
- '"--project-dir"': 必需参数,指定要进行代码检查的项目根目录。
- '"C:\path\to\your\project"': 需要替换为您实际的项目根目录的路径。
- '"env"': 环境变量设置,'PYTHONPATH' 需要指向 'mcp-code-checker' 仓库的根目录。
请务必将示例配置中的 'C:\path\to\' 替换为您的实际路径。
基本使用方法
- 启动服务器
在 'mcp-code-checker' 仓库目录下,运行以下命令启动服务器,并指定要检查的项目目录:
python -m src.main --project-dir /path/to/your/project
- 配置 MCP 客户端
根据 MCP 客户端(如 Claude Desktop 或 MCP Inspector)的文档,配置连接到此 MCP 服务器。您需要提供服务器名称、启动命令和参数等信息,配置信息请参考 "服务器配置" 章节的说明。
- 使用 AI 助手进行代码检查
在 MCP 客户端中,您可以指示 AI 助手使用代码检查工具。例如,在 Claude 中,您可以自然语言描述您的需求,例如:
- "帮我检查一下这个项目中的代码质量问题。"
- "运行单元测试,看看有没有失败的用例。"
- "使用 Pylint 分析代码,找出潜在的错误。"
AI 助手会调用此 MCP 服务器提供的工具,对您的项目代码进行分析,并将结果返回给您。
使用 MCP Inspector 调试
您可以使用 MCP Inspector 工具来测试和调试此 MCP 服务器。按照 README 文档中的 "Using MCP Inspector" 章节进行操作,配置 MCP Inspector 连接到您的服务器,并测试可用的工具。
信息
分类
开发者工具