Skip to main content
Glama
olivio-git

MCP Inventario

by olivio-git

📦 MCP Inventario - Sistema Modular

Sistema de inventario implementado como servidor MCP (Model Context Protocol) con arquitectura modular y soporte para múltiples bases de datos.

🚀 Inicio Rápido

Instalación

npm install

Configurar MongoDB

Asegúrate de tener MongoDB corriendo en localhost:27017, o configura la variable de entorno:

export MONGODB_URI="mongodb://localhost:27017/inventario"

Ejecutar el Servidor MCP

node index.js

Probar con el Cliente de Pruebas

node test-client.js

Chat con Groq (Requiere API Key)

export GROQ_API_KEY="tu-api-key"
node chat-groq.js

📁 Archivos Principales

Archivos que DEBES USAR

Archivo

Propósito

index.js

Servidor principal modular - Punto de entrada del servidor MCP

test-client.js

Cliente de pruebas para probar las herramientas MCP

chat-groq.js

Chat interactivo usando Groq AI + herramientas MCP

src/

Directorio con toda la lógica modular del proyecto

⚠️ Archivo OBSOLETO (No usar)

Archivo

Estado

mcp-server.js

OBSOLETO - Reemplazado por index.js + estructura modular en src/

Nota: mcp-server.js se mantiene solo como referencia. Toda la funcionalidad está ahora en la estructura modular.

🏗️ Estructura del Proyecto

experiments-mcp/
├── index.js                    ✅ Servidor principal (USA ESTE)
├── chat-groq.js               ✅ Chat con Groq AI
├── test-client.js             ✅ Cliente de pruebas
├── mcp-server.js              ⚠️  OBSOLETO (no usar)
│
└── src/
    ├── database/              # Gestión de base de datos
    │   ├── db.js             # Clase Database (multi-conexión)
    │   ├── models/           # Modelos Mongoose
    │   └── examples/         # Ejemplos de uso
    │
    ├── handlers/              # Lógica de negocio
    │   ├── index.js          # Router de handlers
    │   ├── item.handler.js   # Operaciones de items
    │   └── categoria.handler.js
    │
    ├── tools/                 # Definiciones MCP
    │   └── index.js          # Registro de herramientas
    │
    ├── server/                # Configuración servidor
    │   ├── index.js          # Setup del servidor MCP
    │   └── config.js         # Configuración
    │
    └── mockups/               # Datos de prueba
        ├── categorias.mc.js
        └── items.mc.js

🛠️ Herramientas Disponibles

  1. listar_items - Lista items con filtro opcional por categoría

  2. buscar_item - Busca items por nombre

  3. contar_items - Cuenta items y calcula totales

  4. crear_items - Crea uno o más items

  5. eliminar_item - Elimina un item por ID

  6. actualizar_item - Actualiza un item existente

  7. listar_categorias - Lista todas las categorías

📚 Documentación

  • ARCHITECTURE.md - Documentación detallada de la arquitectura

  • Ver ejemplos en src/database/examples/

🔄 Migración desde la versión anterior

Si estabas usando mcp-server.js:

  1. Cambiar referencias: Actualiza cualquier script o configuración que apunte a mcp-server.js para que use index.js

  2. Funcionalidad idéntica: Todas las herramientas funcionan igual, solo el código está mejor organizado

  3. Beneficios:

    • ✅ Código más organizado y fácil de mantener

    • ✅ Separación de responsabilidades

    • ✅ Más fácil agregar nuevas herramientas

    • ✅ Soporte para múltiples bases de datos

    • ✅ Mejor para testing

🧪 Testing

Probar todas las herramientas

node test-client.js

Probar con chat interactivo

export GROQ_API_KEY="tu-clave"
node chat-groq.js

Ejemplo de conversación:

💬 Tú: Lista todos los items de electrónica

🤖 Groq: Aquí están los items de electrónica:
- Laptop Dell (5 unidades) - $800
- Mouse Logitech (15 unidades) - $25
...

🔐 Variables de Entorno

# MongoDB (opcional, default: mongodb://localhost:27017/inventario)
export MONGODB_URI="mongodb://localhost:27017/inventario"

# Groq API (solo para chat-groq.js)
export GROQ_API_KEY="tu-api-key"

🆘 Troubleshooting

Error: "Cannot connect to MongoDB"

  • Verifica que MongoDB esté corriendo: mongosh

  • Verifica la URI de conexión

Error: "GROQ_API_KEY not found"

Error: "Module not found"

npm install

📖 Más Información

  • Arquitectura completa: Ver ARCHITECTURE.md

  • Ejemplos de múltiples conexiones: Ver src/database/examples/multi-connection-example.js

📝 Licencia

MIT


¿Dudas? Revisa la documentación de arquitectura o los ejemplos en src/database/examples/.

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/olivio-git/mcp-experiment-inventory'

If you have feedback or need assistance with the MCP directory API, please join our Discord server