Skip to main content

Intelligent CLI-based Project Context Engine with MCP server support

Project description

🤖 RageBot MCP

Intelligent Project Context Engine with full MCP Server support. Index your codebase, query it in natural language, and expose it as tools to any AI client.

Python 3.10+ MCP Compatible Typer FAISS License: MIT


📦 Installation

To install RageBot as a package, run:

pip install ragebot

Note: For development or local setup from source, see the Development section.


✨ Features

  • 🔍 Semantic Code Search: Powered by FAISS and Sentence-Transformers for deep codebase understanding.
  • 💬 Interactive AI Chat: Multi-turn persistent sessions with context preservation.
  • 🤖 Multi-Provider LLM: Support for Google Gemini, Groq, and local Ollama models.
  • 🔌 Full MCP Server: Expose your codebase as tools to Claude Desktop, Cursor, Zed, and more.
  • 📖 Code Intelligence: Auto-generate documentation, unit tests, and symbol explanations.
  • 📸 Snapshot Management: Save, list, and restore project index states instantly.
  • 🔒 Secure Key Storage: API keys are stored in the OS keyring (macOS Keychain, Windows Credential Manager).
  • 🎨 Modern CLI: Rich terminal output with interactive menus and progress indicators.

🚀 Quick Start

1. Authenticate

Configure your preferred AI provider:

# Interactive setup for Gemini, Groq, or Ollama
rage auth 

2. Initialize & Index

Prepare your project for analysis:

cd /path/to/your/project
rage init
rage save

3. Start Querying

Ask questions or enter the interactive REPL:

# Ask a quick question
rage ask "How does the authentication logic work?"

# Start interactive REPL
ragebot

📋 Command Reference

Core Commands

Command Description
rage init Initialize RageBot in the current directory.
rage save Index the project and save a snapshot.
rage ask Ask a one-shot question about the codebase.
rage chat Start an interactive multi-turn chat session.
rage search Perform a semantic search across files.
rage explain Get a detailed explanation of a file or symbol.
rage docs Generate Markdown documentation for a file.
rage test Generate pytest test cases for a file.
rage status Show project indexing and LLM connectivity status.
rage context Show project overview (use --tree for file structure).

Management Commands

Command Description
rage auth Manage API keys and active providers.
rage config View or edit configuration settings.
rage model Switch between available models for the active provider.
rage snapshot List, restore, or delete project snapshots.
rage history List and resume previous chat sessions.

🔌 MCP Server

RageBot is a compliant Model Context Protocol server. You can use it as a toolset for AI IDEs and clients.

Tools Provided:

  • ragebot_ask: AI question & answer with citations.
  • ragebot_search: Semantic/keyword search.
  • ragebot_save: Index or re-index the project.
  • ragebot_explain: Explain files or symbols.
  • ragebot_file_tree: Get project structure.
  • ragebot_generate_docs: Auto-generate documentation.
  • ragebot_generate_tests: Auto-generate tests.
  • ragebot_apply_edit: Apply natural language edits to files.

Start the Server:

# Stdio transport (default)
ragebot-mcp-server --project /path/to/your/project

# SSE transport
ragebot-mcp-server --transport sse --port 8765 --project /path/to/your/project

📁 Project Structure

ragebot/
├── agents/             # Context builders for specific AI roles
├── auth/               # Secure provider authentication (Keyring)
├── core/               # Orchestrator, Scanner, and Config management
├── llm/                # LLM implementations (Gemini, Groq, Ollama)
├── mcp/                # MCP Server implementation (Stdio & SSE)
├── parsers/            # AST-based code and document parsers
├── search/             # Vector embeddings and FAISS retrieval
├── storage/            # SQLite database and Snapshot logic
└── utils/              # UI helpers, logging, and token utilities

🛠️ Development

If you want to contribute or run from source:

  1. Clone the repository:

    git clone https://github.com/atharvrahate296/Ragebot-MCP
    cd Ragebot-MCP
    
  2. Install in editable mode:

    pip install -r requirements.txt
    
  3. Run tests:

     python ./tests/tests.py
    

📄 License

MIT © Atharv Rahate

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ragebot_mcp-1.0.3.tar.gz (93.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ragebot_mcp-1.0.3-py3-none-any.whl (99.4 kB view details)

Uploaded Python 3

File details

Details for the file ragebot_mcp-1.0.3.tar.gz.

File metadata

  • Download URL: ragebot_mcp-1.0.3.tar.gz
  • Upload date:
  • Size: 93.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for ragebot_mcp-1.0.3.tar.gz
Algorithm Hash digest
SHA256 3b9718a0d966ed41147aab4a9c28e74e0c36303a925775b6de0a72554e5e7c44
MD5 12e76df0d4a4f0bda8cb969a1f9d1a7d
BLAKE2b-256 cff999edffe970d02063979ef4285d17d26bb58bbd0eb4003c2dc9621d15f37e

See more details on using hashes here.

File details

Details for the file ragebot_mcp-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: ragebot_mcp-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 99.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for ragebot_mcp-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8002eb523e188074e9bdc7f1291699003b0ec57a3c90f73f9732f8088f366f7b
MD5 e11ddf3b1e79cc3df4f984e5d46e4167
BLAKE2b-256 547289122d93b26016d1e77e95854e40f64f5366222bb18c10c25eed0ce3fa3f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page