Skip to main content
Glama
Archana-M-11

MCP_Based_AI_Assistant

by Archana-M-11
README.md
# MCP_Based_AI_Assistant

An AI assistant built using Model Context Protocol (MCP) and LangGraph. 
The assistant can understand user queries, determine whether a tool is required, 
and invoke the appropriate MCP tool through an MCP client.

- MCP server with multiple tools
- MCP client for connecting to the MCP server
- MCP tool discovery
- LangGraph-based stateful agent workflow
- LLM-based tool selection
- Conditional tool execution
- Human-in-the-Loop approval for sensitive tools
- Document search
- Employee information lookup
- Mathematical expression calculation
- LLM-based final response generation
- Test cases for validating different queries and tool workflows

## Architecture

![Architecture Diagram](images/Architecture.png)

## Installation

### 1. Clone the repository

```bash
git clone <your-repository-url>
cd MCP_Based_AI_Assistant

```

### 2. Create a virtual environment

```bash
uv venv
```

### 3. Activate the virtual environment

#### Windows PowerShell

```powershell
.venv\Scripts\Activate.ps1
```

### 4. Install dependencies

```bash
uv sync
```

### 5. Configure environment variables

Create a `.env` file in the project root directory:

```env
GEMINI_API_KEY=your_gemini_api_key
```

### 6. Run the test cases

```bash
uv run python -m tests.test
```