Skip to main content
Glama
karthikeyanramu

MCP RAG Agent Server

README.md
# ๐Ÿš€ MCP RAG Agent โ€“ AI-Powered API Testing Framework

![Python](https://img.shields.io/badge/Python-3.10+-blue.svg)
![Flask](https://img.shields.io/badge/Flask-MCP_Server-green.svg)
![RAG](https://img.shields.io/badge/RAG-Enabled-purple.svg)
![API Testing](https://img.shields.io/badge/API-Testing-orange.svg)
![Status](https://img.shields.io/badge/Status-Active-success.svg)

---

## ๐Ÿ“Œ Overview

The **MCP RAG Agent** is an AI-driven modular testing framework that combines:

* ๐Ÿ”Ž **RAG (Retrieval Augmented Generation)** โ€“ Knowledge-based context retrieval
* โš™๏ธ **MCP Layer (Tool Execution Engine)** โ€“ Executes tools dynamically
* ๐Ÿงช **API Testing Agent** โ€“ Automates API validation like Postman

It enables **natural language โ†’ API execution โ†’ validation โ†’ intelligent response generation**.

---

# ๐Ÿง  System Architecture

```mermaid
graph TD
A[User Query] --> B[API Agent - NLP Parser]
B --> C[MCP Server - Tool Router]
C --> D[RAG Engine - Knowledge Retrieval]
C --> E[API Execution Tool]
D --> C
E --> F[External API / System]
F --> G[Response Validation Layer]
G --> H[Final AI Response]
```

---

## ๐Ÿงฉ Architecture Explanation

### 1๏ธโƒฃ API Agent Layer

* Accepts natural language input
* Converts request into structured API test case

### 2๏ธโƒฃ MCP Server Layer

* Central orchestration layer
* Routes requests to appropriate tools

### 3๏ธโƒฃ RAG Layer

* Fetches contextual knowledge from documents
* Enhances API validation logic

### 4๏ธโƒฃ Execution Layer

* Executes API calls (GET/POST/PUT/DELETE)
* Captures response payloads

### 5๏ธโƒฃ Validation Layer

* Compares expected vs actual response
* Returns structured test result

---

# ๐Ÿ” End-to-End Flow

```
User Input
   โ†“
API Agent (Intent Detection)
   โ†“
MCP Server (Tool Selection)
   โ†“
RAG (Context Injection)
   โ†“
API Execution Engine
   โ†“
Response Validation
   โ†“
Final Result Output
```

---

# โš™๏ธ Installation Guide

## 1๏ธโƒฃ Clone Repository

```bash
git clone https://github.com/karthikeyanramu/MCP_RAG_AGENT.git
cd MCP_RAG_AGENT
```

---

## 2๏ธโƒฃ Create Virtual Environment

```bash
python -m venv venv
```

Activate:

```bash
# Windows
venv\Scripts\activate

# Mac/Linux
source venv/bin/activate
```

---

## 3๏ธโƒฃ Install Dependencies

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

---

## 4๏ธโƒฃ Start MCP Server

```bash
python server/mcp_server.py
```

Expected:

```
MCP Server running on http://localhost:5000
```

---

## 5๏ธโƒฃ Run API Agent

```bash
python -m qa_agent.api_agent_runner
```

---

# ๐Ÿงช Postman Integration (Manual Testing Support)

Even though this system is AI-driven, it supports Postman-style API testing.

## ๐Ÿ“Œ Example Request

### ๐Ÿ”น Endpoint

```
POST http://localhost:5000/execute
```

### ๐Ÿ”น Headers

```json
{
  "Content-Type": "application/json",
  "Authorization": "Bearer <token-if-needed>"
}
```

### ๐Ÿ”น Sample Payload

```json
{
  "tool": "api_executor",
  "method": "POST",
  "url": "https://api.example.com/login",
  "headers": {
    "Content-Type": "application/json"
  },
  "body": {
    "username": "test_user",
    "password": "Test@123"
  }
}
```

---

## ๐Ÿ“Œ Sample Response

```json
{
  "status": 200,
  "message": "Login Successful",
  "token": "eyJhbGciOiJIUzI1NiIs...",
  "validation": "PASSED"
}
```

---

# ๐Ÿ”„ CI/CD Pipeline (QA Maturity Model)

This system can be integrated into CI/CD pipelines for **automated API validation**.

## ๐Ÿš€ Pipeline Flow

```mermaid
graph LR
A[Code Push] --> B[CI Trigger - GitHub Actions]
B --> C[Install Dependencies]
C --> D[Run API Tests via MCP Agent]
D --> E[RAG Validation Layer]
E --> F[Test Report Generation]
F --> G[Deploy / Fail Pipeline]
```

---

## ๐Ÿงช CI/CD Benefits

โœ” Automated API regression testing
โœ” AI-driven validation (reduces manual QA effort)
โœ” Early defect detection
โœ” Domain knowledge injection via RAG
โœ” Scalable test execution

---

## ๐Ÿ“Œ Sample GitHub Actions Workflow

```yaml
name: MCP API Tests

on: [push]

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3

      - name: Setup Python
        uses: actions/setup-python@v4
        with:
          python-version: 3.10

      - name: Install dependencies
        run: pip install -r requirements.txt

      - name: Run MCP API Agent
        run: python -m qa_agent.api_agent_runner
```

---

# ๐Ÿงฐ Available Tools

| Tool             | Purpose                      |
| ---------------- | ---------------------------- |
| knowledge_search | RAG-based document retrieval |
| calculator       | Arithmetic operations        |
| api_executor     | Executes HTTP requests       |

---

# ๐Ÿ“Š Real-World Use Cases

* Banking API automation (AML / KYC)
* Collateral management system testing
* Microservices regression testing
* AI-driven QA automation frameworks

---

# โš ๏ธ Troubleshooting

## โŒ Port conflict

```bash
netstat -ano | findstr :5000
taskkill /PID <pid> /F
```

## โŒ Module error

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

---

# ๐Ÿš€ Future Enhancements

* OpenAI / LLM integration
* UI dashboard for test execution
* Kubernetes deployment
* Advanced embedding-based RAG
* Postman collection auto-import

---

# ๐Ÿ‘จโ€๐Ÿ’ป Summary

This project demonstrates:

โœ” AI-powered API testing
โœ” MCP-based tool orchestration
โœ” RAG-enhanced validation
โœ” Enterprise-grade QA automation architecture