Multi-Agent MCP Server

Multi-Agent MCP Server

Automates codebase review and documentation generation using specialized AI agents, integrating with MCP for AI workflows and Smithery for deployment.

Category
Visit Server

README

Multi-Agent MCP Server

License: MIT Python 3.10+ MCP Smithery

A production-ready, modular multi-agent MCP server for automated codebase review and documentation generation. Built with the Model Context Protocol (MCP) for seamless integration with AI development workflows and compatible with Smithery for easy deployment.

๐Ÿš€ Features

  • ๐Ÿค– Multi-Agent Architecture: Specialized AI agents for different analysis types
    • Debt Agent: Technical debt and maintainability analysis
    • Improvement Agent: Code quality improvement recommendations
    • Critical Agent: Security vulnerabilities and reliability issues
    • Documentation Agent: Comprehensive project documentation generation
  • ๐Ÿ“ก MCP Integration: Full Model Context Protocol support for AI tool integration
  • ๐Ÿ”€ Workflow Orchestration: Advanced DSPy workflow integration for intelligent analysis
  • โœ… Strict Validation: Comprehensive output validation with Pydantic schemas
  • ๐Ÿญ Production Ready: Comprehensive testing, logging, and professional packaging
  • โ˜๏ธ Smithery Compatible: Ready for deployment on Smithery platform
  • โšก Flexible Execution: Quick scan for fast analysis or deep scan with LLM integration

๐Ÿ“‹ Table of Contents

๐Ÿ› ๏ธ Installation

Via Smithery (Recommended)

The easiest way to use this MCP server is through Smithery:

  1. Visit Smithery
  2. Search for "multi-agent-code-review"
  3. Add to your AI workflow with one click

Python Package

# Using uv (recommended)
uv add multiagent-mcp-server

# Using pip
pip install multiagent-mcp-server

# Using conda
conda install -c conda-forge multiagent-mcp-server

From Source

# Clone the repository
git clone https://github.com/Arpit-Moga/Vibechecker.git
cd Vibechecker

# Install with uv (recommended)
uv sync

# Or with pip
pip install -e .

๐Ÿš€ Quick Start

As MCP Server

# Run the MCP server
python -m multiagent_mcp_server

# Or using the installed script
multiagent-mcp-server

MCP Client Configuration

Add to your MCP client configuration (e.g., Claude Desktop, Continue, etc.):

{
  "mcpServers": {
    "multi-agent-code-review": {
      "command": "python",
      "args": ["-m", "multiagent_mcp_server"],
      "env": {
        "CODE_DIRECTORY": "./",
        "LOG_LEVEL": "INFO"
      }
    }
  }
}

With Environment Variables

# Set API keys for LLM analysis (optional for quick mode)
export GOOGLE_API_KEY="your-google-api-key"
export OPENAI_API_KEY="your-openai-api-key"

# Configure analysis settings
export CODE_DIRECTORY="/path/to/your/project"
export MAX_FILE_SIZE_MB="10.0"
export LOG_LEVEL="INFO"

# Run the server
python -m multiagent_mcp_server

๐Ÿ”ง MCP Tools Reference

The server provides the following MCP tools for AI agents:

issue_detection_review

Runs unified issue detection analysis on the specified code directory.

Parameters:

  • code_directory (string, optional): Path to analyze (default: current directory)
  • output_directory (string, optional): Output path (default: ./DOCUMENTATION)
  • output_format (enum): "md" or "json" (default: "md")
  • scan_mode (enum): "quick" or "deep" (default: "quick")

Example:

{
  "tool": "issue_detection_review",
  "arguments": {
    "code_directory": "./src",
    "scan_mode": "deep",
    "output_format": "json"
  }
}

documentation_generate

Generates comprehensive project documentation.

Parameters:

  • code_directory (string, optional): Path to analyze
  • output_directory (string, optional): Output path

comprehensive_review

Runs all analyses in a coordinated workflow for complete project review.

Parameters: Same as issue_detection_review

โ˜๏ธ Smithery Integration

This MCP server is fully compatible with Smithery, providing:

  • Easy Deployment: One-click deployment to Smithery cloud
  • Automatic Discovery: Server is automatically indexed in Smithery registry
  • Configuration Schema: Full JSON schema validation for parameters
  • HTTP Transport: Optional HTTP endpoint for remote access
  • Security Scanning: Passes Smithery security validation

Smithery Configuration

The server includes a smithery.yaml configuration file that defines:

  • Server metadata and capabilities
  • Connection methods (stdio and HTTP)
  • Tool schemas and validation
  • Security settings

Publishing to Smithery

  1. Ensure your code is in a public GitHub repository
  2. Add proper tags and description in smithery.yaml
  3. Smithery will automatically discover and index your server
  4. Users can then find and use your server through the Smithery platform

โš™๏ธ Configuration

Environment Variables

Variable Description Default
CODE_DIRECTORY Default directory to analyze .
GOOGLE_API_KEY Google AI API key for LLM analysis None
OPENAI_API_KEY OpenAI API key for LLM analysis None
MAX_FILE_SIZE_MB Maximum file size to process 5.0
MAX_FILES_TO_PROCESS Maximum number of files 100
LOG_LEVEL Logging level INFO

Scan Modes

  • Quick Mode: Fast static analysis using linting tools (ruff, bandit, mypy)
  • Deep Mode: Comprehensive analysis including LLM-powered review

Output Formats

  • Markdown: Human-readable reports with formatting
  • JSON: Structured data for programmatic consumption

๐Ÿ“š API Documentation

Response Format

All tools return a consistent response structure:

interface AgentReport {
  issues: IssueOutput[];
  review: string;
  total_issues?: number;
  high_severity_count?: number;
  documentation_files?: number;
  error?: boolean;
}

interface IssueOutput {
  type: "maintainability" | "security" | "performance" | "compliance" | "other";
  severity: "low" | "medium" | "high";
  description: string;
  file: string;
  line: number;
  suggestion?: string;        // For maintainability/performance
  remediation?: string;       // For security/compliance
  reference?: string;
}

Error Handling

The server implements comprehensive error handling:

  • Input validation with detailed error messages
  • Graceful degradation when tools are unavailable
  • Structured error responses with error codes
  • Comprehensive logging for debugging

๐Ÿงช Development

Prerequisites

  • Python 3.10+
  • uv package manager (recommended) or pip

Setup Development Environment

# Clone the repository
git clone https://github.com/Arpit-Moga/Vibechecker.git
cd Vibechecker

# Install development dependencies
uv sync --dev

# Install pre-commit hooks
pre-commit install

Running Tests

# Run all tests
pytest

# Run with coverage
pytest --cov=multiagent_mcp_server

# Run specific test file
pytest tests/test_models.py -v

Code Quality

# Format code
black src tests
isort src tests

# Lint code
flake8 src tests
mypy src

# Security scan
bandit -r src

Project Structure

multiagent-mcp-server/
โ”œโ”€โ”€ src/multiagent_mcp_server/    # Main package
โ”‚   โ”œโ”€โ”€ __init__.py               # Package exports
โ”‚   โ”œโ”€โ”€ __main__.py               # Module entry point
โ”‚   โ”œโ”€โ”€ server.py                 # MCP server implementation
โ”‚   โ”œโ”€โ”€ models.py                 # Pydantic models
โ”‚   โ”œโ”€โ”€ config.py                 # Configuration management
โ”‚   โ”œโ”€โ”€ base_agent.py             # Base agent class
โ”‚   โ”œโ”€โ”€ issue_detection_agent.py  # Issue detection logic
โ”‚   โ”œโ”€โ”€ documentation_agent.py    # Documentation generation
โ”‚   โ””โ”€โ”€ ...                       # Other modules
โ”œโ”€โ”€ tests/                        # Test suite
โ”œโ”€โ”€ docs/                         # Documentation
โ”œโ”€โ”€ smithery.yaml                 # Smithery configuration
โ”œโ”€โ”€ mcp.json                      # MCP manifest
โ”œโ”€โ”€ pyproject.toml                # Package configuration
โ””โ”€โ”€ README.md                     # This file

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

Quick Contribution Steps

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Add tests for new functionality
  5. Ensure all tests pass (pytest)
  6. Commit your changes (git commit -m 'Add amazing feature')
  7. Push to the branch (git push origin feature/amazing-feature)
  8. Open a Pull Request

Development Guidelines

  • Follow PEP 8 style guidelines
  • Add type hints to all functions
  • Write comprehensive tests for new features
  • Update documentation as needed
  • Ensure backwards compatibility

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • Model Context Protocol for the excellent protocol specification
  • Smithery for the amazing MCP server registry and deployment platform
  • FastMCP for the simplified MCP server framework
  • DSPy for advanced workflow orchestration
  • All contributors and the open-source community

๐Ÿ”— Links

  • GitHub Repository: https://github.com/Arpit-Moga/Vibechecker
  • Smithery Registry: https://smithery.ai/
  • Model Context Protocol: https://modelcontextprotocol.io/
  • Documentation: https://github.com/Arpit-Moga/Vibechecker/tree/main/docs
  • Issue Tracker: https://github.com/Arpit-Moga/Vibechecker/issues

Ready to supercharge your code review process? Try the Multi-Agent MCP Server today! ๐Ÿš€

๐Ÿšฆ Quick Start

Start the Server

# Using the installed package
multiagent-mcp-server

# Or using Python module
python -m multiagent_mcp_server.server

๐Ÿงฉ MCP Tools Reference

The server exposes agent tools via the Model Context Protocol (MCP), not RESTful HTTP endpoints.

Available MCP Tools

Tool Name Description
issue_detection_review Unified code issue detection and analysis
documentation_generate Generate comprehensive project documentation
comprehensive_review Run all agents for complete codebase analysis

Refer to the MCP documentation for integration details.

๐Ÿ“– Documentation

Comprehensive documentation is available in the docs/ directory:

๐Ÿ—๏ธ System Architecture

flowchart TD
    subgraph Agents
        A1[Documentation Agent]
        A2[Unified Issue Detection Agent]
    end
    subgraph Plugins
        P1[Bandit Plugin]
        P2[Mypy Plugin]
        P3[Ruff Plugin]
        P4[Semgrep Plugin]
    end
    U[User/Client] --> S[MCP Server]
    S --> Agents
    S --> Plugins
    Agents --> R[Aggregated Report]
    Plugins --> R
    R --> U

๐Ÿ”ง Development

Prerequisites

  • Python 3.10 or higher
  • uv or pip for package management

Setup

# Clone and setup
git clone https://github.com/your-org/multi-agent-mcp-server.git
cd multi-agent-mcp-server
uv sync

# Install pre-commit hooks
pre-commit install

# Run tests
pytest

# Run with coverage
pytest --cov=src/multiagent_mcp_server

Project Structure

multi-agent-mcp-server/
โ”œโ”€โ”€ src/multiagent_mcp_server/    # Main package
โ”œโ”€โ”€ docs/                         # Documentation
โ”œโ”€โ”€ examples/                     # Usage examples
โ”œโ”€โ”€ tests/                        # Test suite
โ”œโ”€โ”€ data/                         # Sample data and outputs
โ””โ”€โ”€ scripts/                      # Utility scripts

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Development setup
  • Code style guidelines
  • Testing requirements
  • Pull request process

Quick Contribution Steps

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests and documentation
  5. Submit a pull request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments


๐Ÿ“š Documentation โ€ข ๐Ÿ› Issues โ€ข ๐Ÿ’ฌ Discussions

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured