MAGI Code Review MCP server

Orchestrates code reviews through a distributed framework of three specialized agents (Melchior, Balthasar, and Casper) that evaluate submissions and deliver majority-rule verdicts on code quality.
Back to servers
Setup instructions
Provider
Miki Hoshizaki
Release date
Mar 02, 2025
Language
Python
Stats
2 stars

The MAGI MCP Server implements the Model Context Protocol for code reviews, offering a standardized interface to submit code and monitor the review process. It orchestrates reviews through multiple specialized agents (Melchior, Balthasar, and Casper) that collaborate to assess code quality.

Prerequisites

  • Python 3.11 or higher
  • Access to MAGI Gateway (default: ws://127.0.0.1:8000/ws)
  • Docker (optional, for containerized deployment)

Installation

Install the MCP server by following these steps:

  1. Clone the repository
  2. Install dependencies:
    pip install -r requirements.txt
    

Running the Server

Start the MCP server with the following command:

python -m src.server

By default, the server connects to the MAGI Gateway at ws://127.0.0.1:8000/ws. You can specify a different gateway by setting the MAGI_URL environment variable:

MAGI_URL=ws://your-magi-gateway.com/ws python -m src.server

Note: You can use the official MAGI System gateway: ws://magisystem.ai/ws

Docker Deployment

For containerized deployment, follow these steps:

  1. Build the Docker image:

    docker build -t magi-mcp-server .
    
  2. Run the container:

    docker run -p 8080:8080 magi-mcp-server
    
  3. To connect to a specific MAGI Gateway:

    docker run -p 8080:8080 -e MAGI_URL=ws://your-magi-gateway.com/ws magi-mcp-server
    
  4. Enable debug mode if needed:

    docker run -p 8080:8080 -e DEBUG=1 magi-mcp-server
    

Testing with the Client

The project includes a test client to verify server functionality:

python -m src.client --file path/to/your/code.py

Client Options

  • --file, -f: Path to the Python file to review
  • --magi-url: MAGI Gateway WebSocket URL (default: ws://127.0.0.1:8000/ws)
  • --server-script: Path to the server script (default: src/server.py)
  • --timeout: Review timeout in seconds (default: 300)
  • --output, -o: Save results to JSON file
  • --debug: Enable debug mode

If no file is specified, the client will use an example code snippet for testing.

Usage Examples

Review a Specific Python File

python -m src.client --file my_code.py

Save Review Results to a File

python -m src.client --file my_code.py --output review_results.json

Use a Custom MAGI Gateway

python -m src.client --file my_code.py --magi-url ws://custom-gateway:8000/ws

Review Process

When you submit code for review, the process works as follows:

  1. The client submits code to the MCP Server
  2. The server forwards the code to the MAGI Gateway
  3. The gateway distributes the code to three review agents (Melchior, Balthasar, and Casper)
  4. Each agent conducts a specialized review and provides a POSITIVE or NEGATIVE decision
  5. The final decision is determined by majority vote (at least 2 positive reviews to pass)
  6. Detailed results are returned to the client

The sample output shows the review format, with each agent providing specific feedback on different aspects of code quality.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "magi-code-review" '{"command":"python","args":["-m","src.server"]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "magi-code-review": {
            "command": "python",
            "args": [
                "-m",
                "src.server"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "magi-code-review": {
            "command": "python",
            "args": [
                "-m",
                "src.server"
            ]
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later