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.2.tar.gz (91.4 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.2-py3-none-any.whl (97.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ragebot_mcp-1.0.2.tar.gz
  • Upload date:
  • Size: 91.4 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.2.tar.gz
Algorithm Hash digest
SHA256 d76040bff88896cbaf08525ec121381751d34306cdb1fcd5a2a393b42ebf51e4
MD5 185a7bd451eae2ff54fe843d02f230a5
BLAKE2b-256 3ba1e33d5c613c0666bb6328f6978ad09426c2ed6804ef5ed3eb4b7ebbc40e43

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ragebot_mcp-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 97.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 359ce7eab1a00068de581cc58f01e093e60cc119ce41fb1402e4f2ef22a0b301
MD5 c2fa634b8ccba81128eb70bdc24bd602
BLAKE2b-256 a5b632394bc5afae8e5424f406b156e535a59923876cffe43a754af9091e5b81

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