Skip to main content
Glama
Bisma474

RAG Config Generator MCP

by Bisma474
README.md
# RAG Config Generator MCP

An MCP (Model Context Protocol) server that generates RAG (Retrieval-Augmented Generation) pipeline configurations based on natural language descriptions.

## Live Demo

- **UI:** [Hugging Face Spaces](https://bismaa474-rag-config-generator.static.hf.space/index.html)
- **API:** [Vercel Deployment](https://mcp-steel-mu.vercel.app)

## Features

- **Generate Full Config**: Describe your RAG use case in natural language
- **Chunking Strategy**: Get chunking recommendations based on document type
- **Embeddings**: Get embedding model recommendations based on use case and budget
- **Vector Store**: Get vector store recommendations based on data size and latency

## API Endpoints

| Endpoint | Description |
|----------|-------------|
| `GET /` | Server info |
| `GET /generate-rag-config?description=...` | Generate full RAG config |
| `GET /suggest-chunking?doc_type=...&doc_size=...` | Chunking recommendations |
| `GET /suggest-embeddings?use_case=...&budget=...` | Embedding recommendations |
| `GET /suggest-vector-store?data_size=...&latency=...` | Vector store recommendations |

## Installation

```bash
pip install -r requirements.txt
```

## Usage

### Run Gradio UI

```bash
python app.py
```

Opens at `http://localhost:7860`

### Run MCP Server

```bash
python server.py
```

The MCP server will be available at `http://localhost:8000/mcp`

## Project Structure

```
mcp/
├── server.py           # FastAPI + MCP server
├── rag_configs.py      # RAG config templates and logic
├── app.py              # Gradio UI
├── api/
│   └── index.py        # Vercel serverless function
├── requirements.txt    # Python dependencies
├── vercel.json         # Vercel configuration
└── README.md           # Documentation
```

## Tech Stack

- **Backend**: Python, FastAPI, FastAPI-MCP
- **Frontend**: Gradio, HTML/CSS/JS
- **Deployment**: Vercel (API), Hugging Face Spaces (UI)

## License

MIT