A Model Context Protocol (MCP) server providing code quality checking operations. This server offers a API for performing code quality checks within a specified project directory, following the MCP protocol design.
This MCP server enables AI assistants like Claude (via Claude Desktop) or other MCP-compatible systems to perform quality checks on your code. With these capabilities, AI assistants can:
All operations are securely contained within your specified project directory, giving you control while enabling powerful AI collaboration for code quality improvement.
By connecting your AI assistant to your code checking tools, you can transform your debugging workflow - describe what you need in natural language and let the AI identify and fix issues directly in your project files.
run_pylint_check
: Run pylint on the project code and generate smart prompts for LLMsrun_pytest_check
: Run pytest on the project code and generate smart prompts for LLMsrun_all_checks
: Run all code checks (pylint and pytest) and generate combined resultsThe pylint tools expose the following parameters for customization:
Parameter | Type | Default | Description |
---|---|---|---|
disable_codes | list | None | List of pylint error codes to disable during analysis |
Additionally, run_all_checks
exposes:
Parameter | Type | Default | Description |
---|---|---|---|
pylint_categories | set | ERROR, FATAL | Set of pylint message categories to include (convention, refactor, warning, error, fatal) |
Both run_pytest_check
and run_all_checks
expose the following parameters for customization:
Parameter | Type | Default | Description |
---|---|---|---|
test_folder | string | "tests" | Path to the test folder relative to project directory |
markers | list | None | Optional list of pytest markers to filter tests |
verbosity | integer | 2 | Pytest verbosity level (0-3) |
extra_args | list | None | Optional list of additional pytest arguments |
env_vars | dictionary | None | Optional environment variables for the subprocess |
keep_temp_files | boolean | False | Whether to keep temporary files after execution |
continue_on_collection_errors | boolean | True | Whether to continue on collection errors |
python_executable | string | None | Path to Python interpreter to use for running tests |
venv_path | string | None | Path to virtual environment to activate for running tests |
# Clone the repository
git clone https://github.com/MarcusJellinghaus/mcp-code-checker.git
cd mcp-code-checker
# Create and activate a virtual environment (optional but recommended)
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -e .
python -m src.main --project-dir /path/to/project [--python-executable /path/to/python] [--venv-path /path/to/venv]
The server uses FastMCP for operation. The project directory parameter (--project-dir
) is required for security reasons. All code checking operations will be restricted to this directory.
Additional parameters:
--python-executable
: Optional path to Python interpreter to use for running tests--venv-path
: Optional path to virtual environment to activate for running testsTo enable Claude to use this code checking server for analyzing files in your local environment:
Create or modify the Claude configuration file:
%APPDATA%\Claude\claude_desktop_config.json
(on Windows)~/Library/Application Support/Claude/claude_desktop_config.json
Add the MCP server configuration to the file:
{
"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",
"--python-executable",
"C:\\path\\to\\python.exe",
"--venv-path",
"C:\\path\\to\\venv"
],
"env": {
"PYTHONPATH": "C:\\path\\to\\mcp_code_checker\\"
}
}
}
}
Replace all C:\\path\\to\\
instances with your actual paths:
Restart the Claude desktop app to apply changes
Claude will now be able to analyze code in your specified project directory.
%APPDATA%\Claude\logs
For more information on logging and troubleshooting, see the MCP Documentation.
MCP Inspector allows you to debug and test your MCP server:
npx @modelcontextprotocol/inspector \
uv \
--directory C:\path\to\mcp_code_checker \
run \
src\main.py
In the MCP Inspector web UI, configure with the following:
C:\path\to\mcp_code_checker\.venv\Scripts\python.exe
C:\path\to\mcp_code_checker\src\main.py --project-dir C:\path\to\your\project
PYTHONPATH
C:\path\to\mcp_code_checker\
This will launch the server and provide a debug interface for testing the available tools.
The server exposes the following MCP tools:
REM Clone the repository
git clone https://github.com/yourusername/mcp-code-checker.git
cd mcp-code-checker
REM Create and activate a virtual environment
python -m venv .venv
.venv\Scripts\activate
REM Install dependencies
pip install -e .
REM Install development dependencies
pip install -e ".[dev]"
# Set the PYTHONPATH and run the server module using mcp dev
set PYTHONPATH=. && mcp dev src/server.py
This project is licensed under the MIT License - see the LICENSE file for details.
The MIT License is a permissive license that allows reuse with minimal restrictions. It permits use, copying, modification, and distribution with proper attribution.
Seamless access to top MCP servers powering the future of AI integration.