Agentic Retail MCP System
Agentic Retail MCP-System
Eine Full-Stack-Anwendung für künstliche Intelligenz, die einen Model Context Protocol (MCP)-Server implementiert, der sicher an eine Firebase Firestore-Datenbank angebunden ist, über eine Streamlit-Chat-Schnittstelle gesteuert wird und von OpenAIs gpt-4o betrieben wird.
Systemarchitektur
Dieses Projekt wurde unter Verwendung eines entkoppelten Microservice-Musters erstellt:
MCP-Backend-Server (
src/server.py): Einfastmcp-Python-Server, der einzelhandelsspezifische Tools['check_inventory', 'calculate_elasticity', 'get_demand_forecast']bereitstellt. Verbindet sich direkt mit Google Cloud Firestore.KI-Streamlit-Frontend (
src/client.py): Eine asynchrone Web-Benutzeroberfläche, die mit Ihrem Backend-Server über persistenteServer-Sent Events(SSE) kommuniziert. Analysiert Tool-Eingaben und schleift diese dynamisch in OpenAI-Funktionsaufrufe ein.
Related MCP server: E-commerce MCP Server
Voraussetzungen & Konfiguration
Bevor Sie Skripte ausführen, müssen Sie Ihre .env-Datei im Stammverzeichnis des Projekts konfigurieren.
Erstellen Sie eine .env-Datei und definieren Sie die folgenden Variablen:
# Your OpenAI API Key for the GPT-4o Agent
OPENAI_API_KEY="sk-proj-YOUR-KEY-HERE"
# The absolute path to your Firebase Service Account JSON key
FIREBASE_CREDENTIALS_PATH="./firebase-key.json"(Wenn FIREBASE_CREDENTIALS_PATH leer gelassen wird, versucht das System, die Application Default Credentials von Google Cloud nativ zu verwenden).
Installation
Dieses Projekt verwendet uv als blitzschnellen Python-Paket-Abhängigkeitsmanager.
Führen Sie den folgenden Befehl im Stammverzeichnis aus, um sicherzustellen, dass die Abhängigkeiten auf Python >= 3.11 abgebildet sind:
uv init
uv add mcp pydantic firebase-admin python-dotenv openai streamlitDatenbankinitialisierung (Mock-Daten)
Wenn Sie eine neue Firebase Firestore-Instanz haben, können Sie die integrierten Seeding-Tools verwenden, um Ihre Datenbank mit 100 Beispiel-Einzelhandelsprodukten zu füllen.
Generieren Sie die statischen CSV-Mock-Datenstrukturen:
uv run python generate_data.pyStreamen Sie die generierten CSV-Daten direkt in Ihre Firebase NoSQL-Datenbank:
uv run python seed_db.py
Ausführen der Anwendung
Da die Web-Schnittstelle und der Tool-Server über eine isolierte lokale Netzwerkschleife kommunizieren, müssen Sie beide Prozesse parallel in zwei separaten Terminal-Tabs ausführen.
1. Starten des Backend-Tool-Servers
Dies startet eine ASGI-Uvicorn-App auf Port 8000, die alle Tool-Ausführungsanfragen nativ über HTTP Server Sent Events verarbeitet.
uv run python src/server.py2. Starten des Streamlit-Clients
Starten Sie in einem neuen Terminalfenster den Streamlit-Konversationsagenten:
uv run streamlit run src/client.py Ein Webbrowser-Tab öffnet sich automatisch unter http://localhost:8501. Sie können nun Fragen stellen wie "Wie hoch ist der Lagerbestand von Produkt P1002?" oder "Analysiere die Preiselastizitätsprognosen für P1100".
Cloud-Bereitstellungen (Google Cloud Run)
Wenn Sie Ihren KI-Agenten und Ihre Backend-Infrastruktur dauerhaft in die Cloud verlagern möchten, habe ich fortschrittliche Dockerfiles konfiguriert, die speziell für die serverlose Bereitstellung auf Google Cloud Run entwickelt wurden.
Bitte lesen Sie die vollständige DEPLOYMENT.md-Dokumentation für Anweisungen zum Hochladen beider Container ins Web.
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP for e-commerce: live product catalog, stock, and pricing for AI agents.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables large language models like Claude to perform comprehensive interactions with Firebase Firestore databases, supporting full CRUD operations, complex queries, and advanced features like transactions and TTL management.44 npm4MIT
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides real-time access to MongoDB product data, enabling sophisticated e-commerce queries with price range filters, category searching, and product recommendations through a conversational interface.-
- FlicenseNot gradedqualityDmaintenanceA comprehensive Model Context Protocol (MCP) server for product inventory management with PostgreSQL database backend, enabling natural language queries for product information across multiple AI platforms.-
- AlicenseAqualityDmaintenanceA Model Context Protocol server that exposes Firebase Firestore and Authentication to AI agents, supporting multi-project configurations and read operations.574 npmMIT