mcp-business-bot
by Akes102
README.md
# š¤ Business Knowledge AI Bot with RAG & MCP
An AI-powered enterprise knowledge assistant that answers company-specific questions using Retrieval-Augmented Generation (RAG), ChromaDB, LangChain, OpenAI, and the Model Context Protocol (MCP).
The assistant retrieves relevant information from internal company documents before generating accurate, context-aware responses.
---
## š Project Overview
This project demonstrates how a business can use AI to provide employees with instant access to company knowledge without requiring manual document searches.
Instead of relying solely on an LLM's general knowledge, the assistant searches a private knowledge base built from company documentation and uses the retrieved information to generate reliable answers.
The project is designed as a portfolio example of an enterprise AI assistant.
---
## š Features
- š PDF document ingestion
- š Semantic search using vector embeddings
- š§ Retrieval-Augmented Generation (RAG)
- š¬ Natural language question answering
- šļø ChromaDB vector database
- š¤ OpenAI GPT integration
- š Model Context Protocol (MCP) server
- š Gradio web interface
- ā” Fast semantic document retrieval
---
## šļø System Architecture
```
Company Documents
ā
ā¼
PDF Document Loader
ā
ā¼
Text Chunking
ā
ā¼
Sentence Transformers Embeddings
ā
ā¼
Chroma Vector Database
ā
ā¼
Semantic Similarity Search
ā
ā¼
Retrieved Context
ā
ā¼
OpenAI GPT-4.1-mini
ā
ā¼
MCP Server
ā
ā¼
Gradio Web UI
```
---
## š ļø Technology Stack
| Technology | Purpose |
|------------|---------|
| Python 3.14 | Programming Language |
| LangChain | RAG Framework |
| OpenAI | Large Language Model |
| ChromaDB | Vector Database |
| Sentence Transformers | Text Embeddings |
| HuggingFace | Embedding Models |
| MCP SDK | Model Context Protocol |
| Gradio | Web Interface |
| PyPDF | PDF Processing |
---
## š Project Structure
```
mcp-business-bot/
ā
āāā app.py
āāā config.py
āāā ingest.py
āāā rag.py
āāā mcp_server.py
āāā prompts.py
āāā requirements.txt
āāā README.md
ā
āāā assets/
ā āāā screenshot.png
ā
āāā knowledge/
ā āāā company_handbook.pdf
ā āāā TechSolutions_Company_Policies.pdf
ā āāā TechSolutions_Internal_Procedures.pdf
ā āāā TechSolutions_Product_Information.pdf
ā āāā TechSolutions_Technical_Documentation.pdf
ā āāā mcp_architecture.md
ā
āāā chroma_db/
```
---
## š Knowledge Base
The assistant indexes multiple business documents, including:
- Company Handbook
- Company Policies
- Internal Procedures
- Product Information
- Technical Documentation
- MCP Architecture
These documents are converted into semantic embeddings and stored in ChromaDB for efficient retrieval.
---
## āļø Installation
Clone the repository:
```bash
git clone https://github.com/Akes102/mcp-business-bot.git
cd mcp-business-bot
```
Create a virtual environment:
```bash
python -m venv .venv
```
Activate the environment.
Windows:
```bash
.venv\Scripts\activate
```
Install dependencies:
```bash
pip install -r requirements.txt
```
Create a `.env` file:
```text
OPENAI_API_KEY=your_api_key_here
```
---
## š„ Build the Knowledge Base
After adding PDF documents to the `knowledge` folder:
```bash
python ingest.py
```
The ingestion process:
- Loads PDFs
- Splits text into chunks
- Generates embeddings
- Stores vectors in ChromaDB
---
## ā¶ļø Run the Application
Start the Gradio interface:
```bash
python app.py
```
Open your browser:
```
http://127.0.0.1:7860
```
---
## š¬ Example Questions
Try asking:
- What cybersecurity policies does TechSolutions have?
- Explain the employee onboarding process.
- What products does TechSolutions provide?
- What is the company's password policy?
- How are IT incidents escalated?
- Explain the MCP architecture used in this project.
---
## š How RAG Works
1. User submits a question.
2. The question is converted into an embedding.
3. ChromaDB searches for similar document chunks.
4. Relevant context is retrieved.
5. The retrieved context is sent to the OpenAI model.
6. The AI generates an accurate response based on company documentation.
This process helps reduce hallucinations by grounding responses in the indexed documents.
---
## š Model Context Protocol (MCP)
This project includes an MCP server that exposes the RAG functionality through the Model Context Protocol.
Using MCP allows compatible AI clients to access the enterprise knowledge base in a standardized way.
---
## šø Demo
### Application
Replace with your own screenshot:
```
assets/screenshot.png
```
---
## š Future Improvements
- User authentication
- Multi-user support
- Role-based access control
- Conversation history
- Source citations
- Streaming responses
- Docker deployment
- Cloud deployment
- Multi-document collections
- Admin dashboard
---
## šÆ Learning Outcomes
This project demonstrates practical experience with:
- Retrieval-Augmented Generation (RAG)
- Enterprise AI Assistants
- LangChain
- ChromaDB
- OpenAI API
- Vector Embeddings
- MCP
- Gradio
- Semantic Search
- Prompt Engineering
-------
---
## š License
This project is intended for educational and portfolio purposes.This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues