Production Plan Variance MCP Server
Production Plan Variance MCP Server
Un pequeño servidor MCP que expone el panel Production Plan Variance & Issue Tracking (erp.peopledesk.io/production-management/mes/ProductionPlanVariance) como cinco herramientas de solo lectura, respaldado directamente por la base de datos DWH:
Herramienta | Refleja |
| Los cuatro paneles: Líneas del plan / En objetivo / Variación marcada / Incidencias faltantes |
| La cuadrícula de filas (código de plan, artículo, planta, cantidad, diferencia, motivo, estado) |
| La configuración de motivo "Incidencia por diferencia" + correos de escalado, por planta |
| Desplegable de filtro de planta |
| Desplegable de filtro de taller |
Consulta estas tablas DWH (verificadas contra el esquema en vivo):
tblProductionPlanVarianceIssueArc, tblProductionPlanVarianceReasonArc,
tblPlantArc, tblShopFloorArc.
Por qué esta estructura
Pediste algo que cualquiera pueda usar mediante un archivo JSON, sin que nadie tenga que introducir credenciales de base de datos. Por eso el diseño es:
Un solo servidor, alojado por ti, que guarda las credenciales de la base de datos en sus propias variables de entorno (
.env, nunca confirmado en el repositorio, nunca enviado a los clientes).Todos los demás solo colocan
mcp-config.jsonen su cliente MCP (Claude Desktop, Claude Code, etc.) — solo contiene una URL, nada secreto. El servidor es el único que se comunica con SQL Server.Todas las consultas son SELECT fijos y parametrizados definidos en
src/queries.js— no se expone ninguna herramienta SQL de formato libre, por lo que nadie que use este servidor MCP puede consultar fuera de los datos propios del panel ni ejecutar escrituras.
Related MCP server: mcp-server
⚠️ Antes de desplegar: confirma los permisos de la base de datos
Mientras construía esto, verifiqué el esquema (tablas/columnas) usando tu conexión mssql-test-server, pero cada SELECT real a nivel de fila contra tblProductionPlanVarianceIssueArc / tblPlantArc etc. falló — la introspección del esquema funcionó, las consultas de datos no. Eso casi con seguridad es una brecha de permisos en ese inicio de sesión SQL específico (mcp_user), no un problema con estas consultas. Antes de pasar a producción:
Crea (o reutiliza) un inicio de sesión de SQL Server con permisos de solo
SELECTen las tablas DWH enumeradas arriba.Prueba manualmente, por ejemplo:
SELECT TOP 5 * FROM dbo.tblProductionPlanVarianceIssueArc;Solo entonces apunta
DB_USER/DB_PASSWORDen.enva ese inicio de sesión.
Despliegue
Opción A — tu propio servidor (nginx/Caddy delante)
npm install
cp .env.example .env # fill in DB_SERVER / DB_USER / DB_PASSWORD
npm start # listens on :3300, endpoint POST /mcpPonlo detrás de HTTPS en un dominio accesible para tu equipo, p. ej. https://mcp.yourcompany.com/mcp.
Opción B — Vercel (ya configurado en este repositorio)
Los archivos api/mcp.js + vercel.json convierten el mismo servidor en una función serverless de Vercel, expuesta en /mcp.
Sube esta carpeta a un repositorio de GitHub (o ejecútala directamente desde la carpeta).
Instala la CLI una vez:
npm i -g vercelDesde dentro de
production-variance-mcp/, inicia sesión en tu propia cuenta de Vercel y despliega:vercel login vercel --prodEn el panel de Vercel → tu proyecto → Configuración → Variables de entorno, añade
DB_SERVER,DB_PORT,DB_DATABASE,DB_USER,DB_PASSWORD,DB_ENCRYPT,DB_TRUST_CERT(los mismos valores que en.env.example), y luego vuelve a desplegar para que la función los recoja.Tu endpoint MCP ahora es
https://<your-project>.vercel.app/mcp. Pon esa URL enmcp-config.jsony compártelo.
Nota: SQL Server debe ser accesible desde la red de Vercel (es decir, no estar restringido por firewall solo a la IP de tu oficina) — consulta con quien administra 203.202.241.211 si la conexión agota el tiempo de espera después de desplegar. Añade también algún tipo de autenticación delante de /mcp (ver nota más abajo) antes de que esta URL sea pública — ahora mismo cualquiera con el enlace puede llamar a estas herramientas de solo lectura.
Distribución
Edita mcp-config.json, reemplazando YOUR-HOSTED-DOMAIN con tu dominio real, y comparte ese único archivo. Cualquiera lo añade a su cliente MCP y de inmediato tiene acceso de solo lectura por chat a los datos de este panel — sin instalación, sin credenciales, sin conocimientos de SQL.
Notas / cosas que debes verificar por tu cuenta
La columna "Máquina" del panel (p. ej. "Aromatic Unit Line - 01") no se encontró en
tblProductionPlanVarianceIssueArcen el esquema que obtuve — probablemente se resuelve mediante una tabla de línea de producción / centro de trabajo en tu entorno. La consulta delist_plan_varianceaún no la incluye; añade el JOIN apropiado ensrc/queries.jsuna vez que confirmes la tabla de origen (candidatas:tblProductionLineArc,tblWorkCenterArc).La lógica de "Incidencias faltantes" de
get_variance_summaryasume que significa "variación marcada sin motivo/estado registrado todavía" — confírmalo contra la lógica de negocio real de la aplicación y ajustaQUERY_SUMMARYsi es diferente.Añade autenticación (clave de API / OAuth) delante de
/mcpantes de exponerlo más allá de tu red interna — esta versión no tiene ninguna por defecto.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only supply-chain decision support: forecasting, reorder policies, ABC-XYZ, data quality.
Securely query and analyze business data, dashboards, projections, alerts, and knowledge.
Live KPIs and shop data for Tekmetric and Shop-Ware. 29 read-only tools.
Manufacturing BI from your AI client: dashboards, OEE, spreadsheets, scheduling, text-to-CAD.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides read-only SQL Server access via MCP tools and a chat interface for natural-language database queries.4ISC
- FlicenseNot gradedqualityCmaintenanceProvides read-only operational tools (sales summaries, orders, top customers) over a multi-tenant dataset, with tenant isolation enforced server-side so no tenant parameter appears in the tool schema.-
- FlicenseNot gradedqualityCmaintenanceProvides remote read-only access to a Data Warehouse SQL Server, enabling users to query manufacturing OEE data, SBU lists, and run ad-hoc SELECT queries.-
- AlicenseNot gradedqualityBmaintenanceRead-only MCP server exposing Flowsery analytics and AI-detected issues via 17 GET tools, enabling natural language queries in compatible clients.MIT