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

✨ 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
    

Contributions from all collaborators are welcome for the continued development of RageBot MCP.


📄 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.4.tar.gz (92.9 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.4-py3-none-any.whl (99.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ragebot_mcp-1.0.4.tar.gz
  • Upload date:
  • Size: 92.9 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.4.tar.gz
Algorithm Hash digest
SHA256 e5e44de94e0e0fed55811b3de3d9c42e42a9658c380e90f2a43066d11310f365
MD5 1cde99e356fcb1815902636596bd9b82
BLAKE2b-256 69fc279aee1f1e33efdb345c2ebaced40d94478ae478e16480adbbdae89ca4f5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ragebot_mcp-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 99.6 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f41430a27ee7d53530ccd4d114150da68645f51a994ba6d742913391b0b4904e
MD5 1bf9401bc982d91ba6f1b3c9997a035c
BLAKE2b-256 2464181cb5eebe24a54cea44430e9b28de59976cc3c905d6046cf91d2fec9d16

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