ecommerce-retail-rag-mcp
E-commerce Retail RAG + MCP: Sistema de atención al cliente
Un sistema de generación aumentada por recuperación (RAG) de múltiples fuentes para escenarios de e-commerce/retail. Usa Google ADK para orquestar el agente, recupera el catálogo de productos y las políticas de devolución/entrega y, tras el ranqueo por fusión de múltiples fuentes (RRF, Reciprocal Rank Fusion), consigue que el LLM genere respuestas fiables basadas en contexto con fuentes, eliminando las alucinaciones.
✨ Capacidades principales
Capacidad | Descripción | Estado |
Búsqueda RAG multifuente | Búsqueda de doble fuente (catálogo de productos + políticas de postventa), con una sola vectorzación y recuperación multifuente | ✅ Disponible |
Ranqueo por fusión RRF | Resuelve el problema de que una fuente fuerte eclipse a una débil cuando los volúmenes de datos están desequilibrados | ✅ Validado experimentalmente |
Demo de extremo a extremo | Interfaz web: el usuario pregunta → búsqueda multifuente → respuesta con referencias | ✅ Ejecutable en vivo |
Encapsulación de herramientas MCP | Herramientas como | ✅ Implementado |
Guardián de consistencia de embeddings | Unifica | ✅ Integrado |
Related MCP server: ecommerce-catalog-agent
📊 Resultados del desarrollo (para añadir directamente al currículum)
Experimento de comparación de la fusión RRF — con las mismas 12 consultas, se compara el efecto de recuperación entre la fusión RRF y la concatenación directa:
Métrica | Concatenación directa | Fusión RRF |
Tasa de aciertos Top-3 en consultas relacionadas con políticas | 9/12 | 12/12 |
Posición de los documentos de alta relevancia de la fuente débil (políticas) | Eclipse por el catálogo de productos | Sube a la 2.ª posición |
Conclusión: cuando el catálogo de productos (fuente fuerte) supera ampliamente en volumen a las políticas (fuente débil), la concatenación directa hace que los documentos de políticas queden totalmente relegados; tras la fusión RRF, los documentos relevantes ascienden de forma notable. Análisis completo en
docs/RRF对比实验报告.html
Registro de tropiezos (punto a favor en la entrevista) → docs/RAG二开踩坑记录.html
🚀 Comienzo rápido — Demo en funcionamiento
Solo necesitas Ollama a nivel local; no hace falta API Key en la nube. Puedes ejecutarlo en 5 minutos.
# 1. 启动 Ollama 并拉取所需模型(首次)
ollama serve &
ollama pull nomic-embed-text # 嵌入模型(768维)
ollama pull qwen2.5:3b # 生成模型
# 2. 安装 Python 依赖
pip install -r requirements.txt
# 3.(可选)如预计算嵌入缓存缺失则重建向量库
python scripts/_precompute_embeddings.py
# 4. 启动端到端 Web Demo
python scripts/demo_web.py
# 浏览器打开 http://127.0.0.1:8080Prueba con preguntas como: do you refund damaged produce, free delivery over 35 dollars.
La recuperación del Demo está basada en la caché de embeddings precalculados
embedding_index.json + embeddings_cache.npy(generada por Ollama). Ya incluye una capa de búsqueda por coseno en memoria, por lo que no hay que lanzar ChromaDB, evitando las malas pasadas de la persistencia local en Windows.
🧪 Reproducción del experimento comparativo
python scripts/compare_rrf_vs_join.py💻 Pila tecnológica
Orquestación: Google ADK (
FunctionTool+SequentialAgent)Embeddings / generación: Ollama (
nomic-embed-text/qwen2.5:3b), 100 % localRecuperación vectorial: embeddings precalculados + búsqueda por coseno en memoria con NumPy (se conserva la capa de adaptación original de ChromaDB)
Fusión y ranqueo: RRF propio (
agents/tools/rrf_fusion.py)Servicio: servidor FastAPI MCP (
src/mcp_server)
📁 Estructura del proyecto
scripts/
demo_web.py # 端到端 Web Demo(问→检→带出处答)
compare_rrf_vs_join.py # RRF vs 直接拼接对比实验
_precompute_embeddings.py # 预计算嵌入缓存
chat_rag_demo.py # 命令行 RAG Demo
src/
embeddings/ollama_client.py # embed_text + generate_answer
rag/
inmemory_cache.py # 内存余弦检索层(二开新增)
vector_store.py # ChromaDB 适配层(保留)
agents/
tools/rrf_fusion.py # RRF 融合算法(二开新增)
rag_agent.py # ADK RAG Agent
workflows.py # ADK 工作流
docs/
RRF对比实验报告.html # 二开:对比实验报告
RAG二开踩坑记录.html # 二开:踩坑技术博客
configs/ # 环境变量模板
tests/ # 含嵌入一致性守卫测试✅ Pruebas
pytest tests/ # 单元测试 + 嵌入一致性守卫
bash scripts/checks.sh # 静态检查🌱 Próximas etapas
Integrar más fuentes de recuperación (comentarios, inventario) y un Reranker
Añadir un pipeline de evaluación (recopy@k / fundamentación)
RBAC / control de frecuencia en las herramientas MCP
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables hybrid search over policies using Reciprocal Rank Fusion and provides grounded, context-aware answers via a LangGraph agent with COSTAR prompting.3
- FlicenseNot gradedqualityCmaintenanceEnables conversational product search and validation for e-commerce catalogs, with hybrid retrieval and live price/stock checks from a database.
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to independently investigate and resolve e-commerce order issues, particularly refund processing, with tools for order search, refund eligibility checks, and safe refund execution.
- FlicenseAqualityBmaintenanceProvides e-commerce customer support tools for order status, delivery, account, and policy questions, with RAG-grounded retrieval and strict authorization checks over mock data.6
Related MCP Connectors
Policy review and purchase discovery for AI-agent commerce actions.
Agent-native product catalog for AI shopping agents. 296M+ products, 28 countries.
Search your knowledge bases from any AI assistant using hybrid RAG.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vanity-1/ecommerce-retail-rag-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server