Codebase MCP
Codebase MCP
Privacy-first AI development assistant via MCP | Turn Claude into your personal coding assistant | Semantic code search β’ AI-assisted editing β’ Quality-checked generation β’ Persistent memory | Free open-source alternative to Cursor & paid AI coding tools | Python, React, TypeScript, FastAPI
Open Source**
Codebase MCP is an open-source AI-powered development assistant that connects Claude Desktop (or any MCP-compatible LLM) to your codebase through the Model Context Protocol. Stop paying for separate coding assistants - if you already have a Claude subscription, that's all you need.
π Read Full Documentation | ποΈ Architecture | π€ Contributing
π Why Codebase MCP?
The Problem
Modern AI coding assistants like Cursor, Windsurf, and others charge $20-40+/month on top of your existing LLM subscription. If you already pay for Claude, why pay again for a coding assistant?
The Solution
Codebase MCP turns your existing Claude subscription into a powerful coding assistant:
β One subscription - Use your existing Claude Pro/Team plan
β Privacy-first - Local embeddings and processing (except edit operations)
β Open source - Apache 2.0 license, community-driven
β Extensible - Works with any MCP-compatible LLM via Model Context Protocol
β Lightweight - ~100MB memory footprint for medium projects
β Fast - Sub-second semantic search with local FAISS indexing
β‘ Quick Start
Prerequisites
Python 3.11+
Claude Desktop (or any MCP-compatible client)
Git installed
uv package manager (recommended)
Installation
1. Clone the repository:
git clone https://github.com/danyQe/codebase-mcp.git
cd codebase-mcp2. Install globally (recommended):
# Install uv if you haven't
pip install uv
# Create virtual environment and install dependencies
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -r requirements.txt
# Install formatters globally (required for code formatting)
pip install black ruff3. Configure Gemini API (for edit tool):
# Create .env file
cp .env.example .env
# Get free API key from: https://aistudio.google.com/app/apikey
# Add to .env:
GEMINI_API_KEY=your_api_key_here4. Configure Claude Desktop:
Add to your claude_desktop_config.json:
{
"mcpServers": {
"codebase-manager": {
"command": "/path/to/your/.venv/bin/python",
"args": [
"/path/to/codebase-mcp/mcp_server.py"
]
}
}
}5. Start the FastAPI server:
# In a separate terminal, navigate to your project directory
python main.py /path/to/your/project
# Server starts on http://localhost:6789
# You can access the web dashboard at: http://localhost:67896. Use with Claude Desktop:
Restart Claude Desktop
Start chatting - Claude now has access to 13+ MCP tools for codebase management!
π― Key Features
π Semantic Code Search
AI-powered code understanding with local embeddings
Multi-language support (Python, JavaScript, TypeScript)
Symbol-level indexing (functions, classes, interfaces)
Fuzzy search and exact matching modes
π§ Persistent Memory System
Remember context across chat sessions
Categorize learnings: progress, mistakes, solutions, architecture
Semantic memory search with importance scoring
Never repeat the same mistake twice
πΏ Session-Based Git Workflow
Isolated development branches for each feature
Automatic commit tracking in
.codebasedirectorySeparate from user's
.git- track AI changes independentlyAuto-merge support with quality gates
βοΈ Intelligent Code Writing
Write Tool: Create new files with auto-formatting and quality scoring
Edit Tool: AI-assisted editing with Gemini integration (inspired by Cursor)
Quality Gates: Auto-commit only when code quality β₯ 80%
Dependency Checking: Prevent code duplication and missing imports
π¨ Auto-Formatting
Python: Black + Ruff (PEP 8 compliant)
TypeScript/JavaScript: Prettier + ESLint
Quality Scoring: Automatic code quality assessment
Error Recovery: Intelligent retry with corrections
π Project Intelligence
Real-time codebase analysis
File structure visualization
Dependency tracking
Symbol extraction and indexing
ποΈ Architecture
βββββββββββββββββββ
β Claude Desktop β User interacts via chat
ββββββββββ¬βββββββββ
β MCP Protocol (stdio)
β
βββββββββββββββββββ
β MCP Server β 13+ Tools (proxy layer)
β (mcp_server.py)β Lightweight, fast
ββββββββββ¬βββββββββ
β HTTP/REST
β
βββββββββββββββββββ
β FastAPI Server β Port 6789 (main.py)
β Core Engine β 40+ API endpoints
ββββββββββ¬βββββββββ
β
ββββββ΄ββββββ¬ββββββββββ¬βββββββββββ
β β β β
ββββββββββ ββββββββ ββββββββββ βββββββββββββ
βSemanticβ βMemoryβ β Git β βCode Tools β
β Search β βSystemβ βManager β β Pipeline β
ββββββββββ ββββββββ ββββββββββ βββββββββββββ
β β β β
ββββββββββββ΄ββββββββββ΄βββββββββββ
β
ββββββββββββββββββββββββ
β Local Storage β
β β’ FAISS (vectors) β
β β’ SQLite (metadata) β
β β’ .codebase (git) β
ββββββββββββββββββββββββPrivacy Note: All processing is local except the edit tool, which uses Google's free Gemini API for AI-assisted code editing. Only the edited file is sent to Gemini - no project context or history.

π οΈ Available Tools
Codebase MCP provides 13 specialized MCP tools for comprehensive development automation:
Tool | Purpose | Key Features |
| Manage dev sessions | Create branches, auto-commit, merge |
| Store/retrieve knowledge | Persistent context, semantic search |
| Git operations | Status, diff, log, commit, branches |
| Intelligent file creation | Auto-format, quality scoring, dependency check |
| AI-assisted editing | Gemini-powered, error recovery, format validation |
| Semantic code search | 4 modes: semantic, fuzzy, text, symbol |
| Smart code reading | Symbol-level, line ranges, whole file |
| Project analysis | Structure, dependencies, overview |
| Directory exploration | Tree view, metadata, gitignore support |
| Code quality checks | Syntax, linting, imports, dependencies |
| Symbol extraction | Functions, classes, interfaces |
| DB symbol lookup | Fast indexed retrieval |
| Project visualization | Enhanced tree with stats |
π Performance
Semantic Search: Sub-second response for typical codebases
Memory Footprint: ~100MB for medium projects (<20k lines)
Indexing Speed: ~30 seconds for 10k lines initial index
Edit Operations: 5-15 seconds (Gemini API + formatting)
Optimal Project Size: <20,000 lines (tested and verified)
Note: Edit tool can be slow due to Gemini API latency and code formatting. Claude Desktop may timeout on very large edits (use smaller, focused edits).
π Usage Examples
Creating a New Feature
User: "Create a FastAPI endpoint for user authentication with JWT tokens"
Claude:
β
Searching for existing auth patterns...
β
Creating session: feat/user-auth
β
Writing authentication.py with JWT implementation
β
Auto-formatted with Black + Ruff
β
Quality score: 95% - Auto-committed
β
Storing solution in memoryRefactoring Code
User: "Refactor the user service to use dependency injection"
Claude:
β
Reading current user service implementation
β
Searching for DI patterns in codebase
β
Editing with AI assistance (Gemini)
β
Validating changes with quality gates
β
Session: refactor/user-di ready for reviewMemory-Driven Development
User: "Continue working on the payment integration"
Claude:
β
Loading memory context...
β
Found previous progress: Stripe API setup complete
β
Found previous mistake: Don't use synchronous requests in async endpoints
β
Continuing from last checkpoint...π Privacy & Security
Privacy-First Design
Local Embeddings: AllMiniLM-L6-v2 runs entirely on your machine
Local Processing: FAISS vector store, SQLite metadata - all local
No Cloud Dependencies: Except for Gemini API (edit tool only)
Gemini API Usage
Scope: Only
edit_filetool uses GeminiData Sent: Only the file being edited (no project context)
Alternative: Contributors can add local LLM support (GPU required)
Cost: Free tier (15 RPM, 250K TPM, 1K RPD)
Security Best Practices
Never commit
.envwith API keysUse
.gitignorefor sensitive filesReview AI-generated code before production deployment
Keep dependencies updated
π€ Contributing
We welcome contributions! This project was built to be community-driven and extensible.
Priority Areas:
π Language Support: Add Java, Go, Rust, PHP, etc.
π§ Local LLM Integration: Replace Gemini with local models
π Search Improvements: Enhanced semantic algorithms
π UI/UX: Improve web dashboard
β‘ Performance: Optimization for larger codebases
See CONTRIBUTING.md for detailed guidelines.
π License
This project is licensed under the Apache License 2.0 - see LICENSE file for details.
Credits:
Edit tool techniques inspired by Cursor
Built with Claude Sonnet 4 and 4.5
Powered by Model Context Protocol
πΊοΈ Roadmap
Current Version: v1.0.0-beta
Upcoming Features:
Community-driven enhancements
More language support
Local LLM alternatives
Performance optimizations
Advanced prompt engineering templates
π Support
π Documentation: https://danyqe.github.io/codebase-mcp/
π Issues: https://github.com/danyQe/codebase-mcp/issues
π¬ Discussions: https://github.com/danyQe/codebase-mcp/discussions
π Star this repo if you find it useful!
π Acknowledgments
Special thanks to:
Anthropic for Claude and the Model Context Protocol
Google for the free Gemini API
Cursor team for pioneering AI-assisted editing techniques
Open source community for making this possible
Made with β€οΈ by developers, for developers
Stop paying for coding assistants. Start building with your own LLM.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/danyQe/codebase-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server