AI Conversational Bot MCP
README.md
# AI Conversational Bot MCP
## 1. De que se trata el proyecto
Este proyecto es un servidor MCP para gestion de ordenes, desarrollado con Node.js, TypeScript, Express y el SDK de Model Context Protocol.
Su objetivo es exponer herramientas MCP que pueden ser consumidas por un agente conversacional para consultar y crear ordenes. El servidor publica un endpoint MCP en `/mcp` y un endpoint de salud en `/health`.
Herramientas disponibles:
- `get_order`: obtiene la informacion completa de una orden.
- `get_order_status`: obtiene solo el estado actual de una orden.
- `create_order`: crea una nueva orden para un cliente.
Actualmente el servicio de ordenes usa datos simulados en `src/services/order.service.ts`, por lo que no depende todavia de una base de datos o API externa real.
## 2. Como se ejecuta
Instala las dependencias:
```bash
npm install
```
Crea un archivo `.env` tomando como base `.env.example`:
```env
PORT=3002
```
Ejecuta el proyecto en modo desarrollo:
```bash
npm run dev
```
Tambien puedes ejecutarlo sin modo watch:
```bash
npm start
```
Para compilar TypeScript:
```bash
npm run build
```
Para ejecutar la version compilada:
```bash
npm run start:compiled
```
Para inspeccionar el servidor MCP con el inspector oficial:
```bash
npm run inspector
```
## 3. Que hay que tener en cuenta para ejecutarlo
- El proyecto requiere Node.js `>=20`.
- Se recomienda usar la version indicada en `.nvmrc`.
- El archivo `.env` debe existir antes de iniciar el proyecto.
- La variable `PORT` es opcional. Si no se define, el servidor usa el puerto `3002`.
- El endpoint MCP queda disponible en `http://localhost:3002/mcp` cuando se usa el puerto por defecto.
- El endpoint de salud queda disponible en `GET http://localhost:3002/health`.
- Por defecto, el servidor permite hosts locales mediante `MCP_ALLOWED_HOSTS` con `localhost` y `127.0.0.1`.
- Las respuestas de ordenes son simuladas; para usar datos reales hay que reemplazar la logica de `src/services/order.service.ts`.
Endpoints principales:
- `ALL /mcp`: punto de entrada para clientes MCP.
- `GET /health`: valida que el servidor esta activo.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues