mcp-code-agent
An AI-powered code review agent that leverages Model Context Protocol (MCP) and Claude to provide intelligent, context-aware code reviews.
README
π MCP-Powered AI Code Review Agent
An AI-powered code review agent that leverages Model Context Protocol (MCP) and Claude to provide intelligent, context-aware code reviews.
β¨ Features
- π€ AI-Powered Reviews: Uses Claude to provide intelligent code analysis
- π§ MCP Integration: Built on Model Context Protocol for tool-augmented LLM reasoning
- π Code Metrics: Cyclomatic complexity, line counts, maintainability index
- π¨ Style Checking: Detects common anti-patterns and style issues
- π Git Integration: Review diffs, check history, understand context
- β‘ Streaming Output: Real-time feedback as the AI analyzes your code
π Quick Start
Installation
# Clone the repository
git clone https://github.com/geethikakoya/mcp-code-agent.git
cd mcp-code-agent
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -e .
Set up API Key
# Get your API key from https://console.anthropic.com/
export ANTHROPIC_API_KEY=your_api_key_here
Usage
# Review a file
mcp-review review src/main.py
# Review with streaming output
mcp-review review --stream src/main.py
# Review git changes
mcp-review diff
# Explain what a file does
mcp-review explain src/utils.py
# Quick analysis (no AI, just metrics)
mcp-review analyze src/main.py
π Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Code Review Agent β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β CLI βββββββΆβ Agent βββββββΆβ Claude API β β
β β (typer) ββββββββ (reviewer) ββββββββ (LLM) β β
β ββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β
β βΌ β
β ββββββββββββββββ β
β β MCP Tools β β
β ββββββββββββββββ β
β β β
β ββββββββββββββΌβββββββββββββ β
β βΌ βΌ βΌ β
β βββββββββββ βββββββββββ βββββββββββ β
β β File β β Git β β Code β β
β β Tools β β Tools β β Analysisβ β
β βββββββββββ βββββββββββ βββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π§ MCP Tools
File Operations
| Tool | Description |
|---|---|
read_file |
Read file contents with optional line range |
list_directory |
List files and directories |
search_code |
Regex search across codebase |
Git Integration
| Tool | Description |
|---|---|
git_diff |
Get diff of changes |
git_log |
Get commit history |
get_changed_files |
List modified files |
Code Analysis
| Tool | Description |
|---|---|
calculate_complexity |
Cyclomatic complexity (Python) |
count_lines |
LOC, comments, blanks |
check_code_style |
Style issues and anti-patterns |
π Example Output
π Reviewing: src/api/handler.py
π Metrics Summary
β’ Lines of Code: 142
β’ Cyclomatic Complexity: 8 (Moderate)
β’ Maintainability Index: 65.2
π΄ Critical Issues
1. Line 45: SQL injection vulnerability - use parameterized queries
β οΈ Warnings
1. Line 23: Function too long (>50 lines) - consider splitting
2. Line 67: Magic number - extract to constant
π‘ Suggestions
1. Add type hints to function parameters
2. Consider using dataclass for UserData
β
What's Good
β’ Good error handling in API endpoints
β’ Consistent naming conventions
ποΈ Project Structure
mcp-code-agent/
βββ src/
β βββ mcp_server/ # MCP Server (exposes tools)
β β βββ server.py # Main MCP server
β β βββ tools/
β β βββ file_tools.py
β β βββ git_tools.py
β β βββ analysis_tools.py
β β
β βββ agent/ # AI Agent
β β βββ reviewer.py # Code review logic
β β βββ prompts.py # System prompts
β β
β βββ cli/ # CLI interface
β βββ main.py
β
βββ tests/
βββ pyproject.toml
βββ requirements.txt
βββ README.md
π Using as MCP Server
You can use this as a standalone MCP server with any MCP-compatible client:
# Run the MCP server
mcp-review server
Configure in your MCP client (e.g., Claude Desktop):
{
"mcpServers": {
"code-review": {
"command": "python",
"args": ["-m", "src.mcp_server.server"],
"cwd": "/path/to/mcp-code-agent"
}
}
}
π§ͺ Development
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black src/
ruff check src/
π License
MIT License - see LICENSE for details.
π€ Author
Geethika Koya
- GitHub: @geethikakoya
- LinkedIn: geethika-koya
Built with β€οΈ using Model Context Protocol and Claude
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.