MCP STUDENT ASSISTANT
A distributed Agentic System built using the Model Context Protocol (MCP). This system demonstrates a Client-Host-Server architecture connecting a local private tool and a remote public tool into a single Command Line Interface.
ARCHITECTURE
Client (client.py): A Python-based MCP Host that orchestrates connections. It uses a Human-in-the-Loop workflow and does not require an API Key. Server A (servers/deadline_server.py): Transport: Stdio (Local Pipe). Function: Manages a local JSON file to track private homework deadlines. Security: Data never leaves the local machine. Server B (servers/remote_campus.py): Transport: HTTP (SSE) via uvicorn. Function: Simulates a University API to fetch Library books and Cafeteria menus.
INSTALLATION
Clone the repository. Install dependencies by running the following command: pip install -r requirements.txt
HOW TO RUN
This system requires two terminal windows running simultaneously.
Step 1: Start the Remote Server
Open Terminal 1 and run the following command: python servers/remote_campus.py
Wait until you see the message: INFO: Uvicorn running on http://0.0.0.0:8000
Step 2: Start the Client
Open Terminal 2 and run the following command: python client.py
AVAILABLE TOOLS
add_deadline (Local): Save a new assignment to deadlines.json. list_deadlines (Local): Read your saved assignments. search_library (Remote): Check if a book is available. get_cafeteria_menu (Remote): Check the lunch menu for a specific day.