Production Plan Variance MCP Server
Production Plan Variance MCP Server
Ein kleiner MCP-Server, der das Production Plan Variance & Issue Tracking-Dashboard
(erp.peopledesk.io/production-management/mes/ProductionPlanVariance)
als fünf schreibgeschützte Tools bereitstellt, die direkt auf der DWH-Datenbank basieren:
Tool | Spiegelt |
| Die vier Kacheln: Plan Lines / On Target / Variance Flagged / Issues Missing |
| Das Zeilenraster (Plancode, Artikel, Werk, Menge, Differenz, Grund, Status) |
| Die Konfiguration der Gründe „Issue for Difference“ + Eskalations-E-Mails, pro Werk |
| Dropdown für den Werkfilter |
| Dropdown für den Shop-Floor-Filter |
Es fragt diese DWH-Tabellen ab (gegen das Live-Schema verifiziert):
tblProductionPlanVarianceIssueArc, tblProductionPlanVarianceReasonArc,
tblPlantArc, tblShopFloorArc.
Warum diese Form
Sie haben darum gebeten, dass jeder es über eine JSON-Datei nutzen kann, ohne dass jemand Datenbank-Anmeldedaten eingeben muss. Daher ist das Design:
Ein Server, von Ihnen gehostet, der die DB-Anmeldedaten in seinen eigenen Umgebungsvariablen hält (
.env, niemals eingecheckt, niemals an Clients gesendet).Alle anderen legen einfach
mcp-config.jsonin ihren MCP-Client (Claude Desktop, Claude Code usw.) — sie enthält nur eine URL, nichts Geheimes. Nur der Server kommuniziert mit SQL Server.Alle Abfragen sind feste, parametrisierte SELECTs, die in
src/queries.jsdefiniert sind — es gibt kein freiformuliertes SQL-Tool, sodass niemand, der diesen MCP-Server nutzt, außerhalb der Daten des Dashboards abfragen oder Schreibvorgänge ausführen kann.
⚠️ Vor der Bereitstellung: DB-Berechtigungen bestätigen
Beim Erstellen habe ich das Schema (Tabellen/Spalten) über Ihre
mssql-test-server-Verbindung verifiziert, aber jede tatsächliche SELECT-Abfrage auf Zeilenebene gegen
tblProductionPlanVarianceIssueArc / tblPlantArc usw. schlug fehl — die
Schema-Introspektion funktionierte, Datenabfragen nicht. Das ist mit ziemlicher Sicherheit eine
Berechtigungslücke bei diesem spezifischen SQL-Login (mcp_user), kein Problem
mit diesen Abfragen. Vor dem Livegang:
Erstellen (oder wiederverwenden) Sie einen SQL-Server-Login mit ausschließlich
SELECT-Rechten auf den oben aufgeführten DWH-Tabellen.Testen Sie manuell, z. B.:
SELECT TOP 5 * FROM dbo.tblProductionPlanVarianceIssueArc;Erst dann setzen Sie
DB_USER/DB_PASSWORDin.envauf diesen Login.
Bereitstellung
Option A — Ihr eigener Server (nginx/Caddy davor)
npm install
cp .env.example .env # fill in DB_SERVER / DB_USER / DB_PASSWORD
npm start # listens on :3300, endpoint POST /mcpStellen Sie ihn hinter HTTPS auf einer für Ihr Team erreichbaren Domain bereit, z. B.
https://mcp.yourcompany.com/mcp.
Option B — Vercel (in diesem Repo bereits eingerichtet)
Die Dateien api/mcp.js + vercel.json wandeln denselben Server in eine
Vercel-Serverless-Funktion um, die unter /mcp bereitgestellt wird.
Pushen Sie diesen Ordner in ein GitHub-Repo (oder führen Sie ihn direkt aus dem Ordner aus).
Installieren Sie die CLI einmalig:
npm i -g vercelMelden Sie sich von innerhalb von
production-variance-mcp/bei Ihrem eigenen Vercel-Konto an und stellen Sie bereit:vercel login vercel --prodFügen Sie im Vercel-Dashboard → Ihr Projekt → Settings → Environment Variables die Variablen
DB_SERVER,DB_PORT,DB_DATABASE,DB_USER,DB_PASSWORD,DB_ENCRYPT,DB_TRUST_CERThinzu (gleiche Werte wie in.env.example) und stellen Sie dann erneut bereit, damit die Funktion sie übernimmt.Ihr MCP-Endpunkt ist jetzt
https://<your-project>.vercel.app/mcp. Fügen Sie diese URL inmcp-config.jsonein und geben Sie sie weiter.
Hinweis: SQL Server muss aus dem Vercel-Netzwerk erreichbar sein (d. h. nicht
nur auf Ihre Büro-IP gefirewallt) — klären Sie mit dem Verantwortlichen für
203.202.241.211, ob die Verbindung nach der Bereitstellung ein Timeout hat. Fügen Sie außerdem
eine Form der Authentifizierung vor /mcp hinzu (siehe Hinweis unten), bevor diese URL
öffentlich wird — derzeit kann jeder mit dem Link diese schreibgeschützten Tools aufrufen.
Verteilung
Bearbeiten Sie mcp-config.json, ersetzen Sie YOUR-HOSTED-DOMAIN durch Ihre echte
Domain, und teilen Sie dann diese eine Datei. Jeder fügt sie seinem MCP-Client hinzu und
hat sofort schreibgeschützten Chat-Zugriff auf die Daten dieses Dashboards — keine
Installation, keine Anmeldedaten, keine SQL-Kenntnisse erforderlich.
Hinweise / Dinge, die Sie bei sich prüfen sollten
Die Spalte „Machine“ des Dashboards (z. B. „Aromatic Unit Line - 01“) wurde im Schema, das ich abgerufen habe, nicht auf
tblProductionPlanVarianceIssueArcgefunden — sie wird in Ihrer Umgebung wahrscheinlich über eine Produktionslinien-/Arbeitsplatz-Tabelle aufgelöst. Die Abfrage vonlist_plan_varianceenthält sie noch nicht; fügen Sie den entsprechenden JOIN insrc/queries.jshinzu, sobald Sie die Quelltabelle bestätigt haben (Kandidaten:tblProductionLineArc,tblWorkCenterArc).Die Logik „Issues Missing“ von
get_variance_summarygeht davon aus, dass damit „gekennzeichnete Varianz ohne bisher erfassten Grund/Status“ gemeint ist — bestätigen Sie dies gegen die tatsächliche Geschäftslogik der App und passen SieQUERY_SUMMARYan, falls es abweicht.Fügen Sie Authentifizierung (API-Key / OAuth) vor
/mcphinzu, bevor Sie es über Ihr internes Netzwerk hinaus freigeben — dieser Build hat standardmäßig keine.
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 Connectors
Read-only access to your VortexIQ store data: audits, KPIs, alerts, Brand DNA, reports, Ask VIQ.
Read-only NuMetric.work accounting & ERP data: statements, KPIs, reports, invoices, documents.
Read-only MCP server for wafergraph.com's semiconductor & AI supply-chain data: 30 tools, no auth.
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/sauravakij/AR-PP-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server