machine-maintenance-agent
Machine Maintenance Agent: MCP Interview Project
Dies ist ein kleines, interviewtaugliches Projekt, das zeigt, wie ein Agent MCP-Tools nutzen kann, um industrielle Maschinendaten zu prüfen, Wartungshinweise zu suchen und bei Bedarf ein Wartungsticket zu erstellen.
Das Beispiel-Szenario:
„Maschine P-204 vibriert ungewöhnlich. Was soll ich tun?“
Der Agent prüft den synthetischen Maschinenstatus, wertet aktuelle Sensoranomalien aus, durchsucht einen Datensatz aus dem Wartungshandbuch und erstellt optional ein Ticket.
Warum dies ein gutes MCP-Beispiel ist
MCP ist hier nützlich, weil der Agent keinen direkten Datenbank- oder Dateizugriff benötigt. Stattdessen erhält er eine kontrollierte Tool-Schnittstelle:
get_machine_status_tool(machine_id)get_recent_sensor_anomalies_tool(machine_id, hours)search_maintenance_manual_tool(query, limit)create_maintenance_ticket_tool(machine_id, severity, summary, recommended_action)list_open_tickets_tool(machine_id)
Damit lassen sich Lesezugriff auf Daten, sicherer Schreibzugriff, Tool-Grenzen und mehrstufiges Agentenverhalten in einem einzigen kleinen Projekt anschaulich erklären.
Related MCP server: Nibble
Projektstruktur
machine-maintenance-agent/
data/
machines.json # Machine metadata and normal operating ranges
machine_status.json # Current synthetic sensor readings
anomalies.json # Recent detected anomalies
maintenance_manual.json # Small troubleshooting knowledge base
tickets.json # Simple local ticket store
src/
maintenance_tools.py # Core tool logic
mcp_server.py # MCP server exposing tools
agent_demo.py # Transparent agent flow demo
tests/
test_maintenance_tools.py
AGENT_FLOW.md
TOOL_CONTRACTS.md
requirements.txt
README.mdEinrichtung
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtDie MCP-Abhängigkeit ist auf die aktuelle stabile Python-SDK-v1-Linie festgelegt: mcp[cli]>=1.27,<2.
Demo-Agent ausführen
Führen Sie Folgendes in diesem Ordner aus:
python src/agent_demo.pyUm während der Demo ein Ticket zu erstellen:
python src/agent_demo.py --create-ticketErwartetes Verhalten:
Liest den Status für
P-204.Stellt fest, dass Vibration und Temperatur außerhalb des normalen Bereichs liegen.
Erkennt eine Vibrationsanomalie mit hohem Schweregrad.
Durchsucht das Wartungshandbuch nach Hinweisen zu Pumpen-Vibrationen.
Empfiehlt, die Last zu reduzieren und den Lager-/Kupplungsbereich zu prüfen.
Erstellt nur dann ein Ticket, wenn
--create-ticketverwendet wird.
MCP-Server ausführen
python src/mcp_server.pyDies startet einen stdio-MCP-Server. MCP-Clients können sich damit verbinden und die bereitgestellten Tools aufrufen.
Beispiel für die Struktur einer MCP-Client-Konfiguration:
{
"mcpServers": {
"machine-maintenance-agent": {
"command": "python",
"args": ["src/mcp_server.py"],
"cwd": "/absolute/path/to/machine-maintenance-agent"
}
}
}Tests ausführen
python -m unittest discover -s testsErklärung für das Interview
Verwenden Sie diese kurze Erklärung:
„Ich habe einen MCP-Server um ein synthetisches Wartungssystem herum gebaut. Der Agent kann nicht frei auf Dateien oder Datenbanken zugreifen. Er bekommt nur wenige Werkzeuge: Maschinenstatus lesen, Anomalien lesen, das Handbuch durchsuchen und ein Wartungsticket anlegen. Bei einer Vibrationsbeschwerde an der Pumpe P-204 überprüft der Agent den Live-Status, erkennt, dass die Vibration über dem Schwellwert liegt, findet aktuelle Anomalien mit hohem Schweregrad, ruft relevante Wartungshinweise aus dem Handbuch ab und eskalert, indem er ein Ticket erstellt. Das zeigt kontrollierten Unternehmenszugriff, toolgestütztes Denken und eine sichere Grenze zwischen dem LLM und den operativen Systemen.“
Für eine strukturiertere Schritt-für-Schritt-Erläuterung siehe AGENT_FLOW.md und TOOL_CONTRACTS.md.
Welche Daten dieses Projekt verwendet
Maschinen-Metadaten: ID, Name, Bereich, Kritikalität, normale Betriebsbereiche.
Maschinenstatus: aktuelle Vibration, Temperatur, Druck, Zustand, letztes Servicedatum.
Sensoranomalien: Zeitstempel, Signal, Wert, Schwellwert, Schweregrad, Beschreibung.
Wartungshandbuch: Symptome, Schlüsselwörter, empfohlene Maßnahmen, Sicherheitshinweise.
Ticket-Speicher: Ticket-ID, Maschinen-ID, Schweregrad, Zusammenfassung, empfohlene Maßnahme, Status.
So lässt es sich erweitern
Kleine Folgeverbesserungen für eine Portfolio-Version:
Einen echten LLM-Client hinzufügen, der die Werkzeuge dynamisch auswählt.
SQLite anstelle von JSON-Dateien verwenden.
Rollenbasierte Berechtigungen hinzufügen, z. B. nur Lesezugriff für Bediener und Ticket-Schreibzugriff für Vorgesetzte.
Einfaches Dashboard hinzufügen, das den Maschinenstatus und offene Tickets anzeigt.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP gateway with runtime security policy, tool-call-level control, and audit of agent actions.
Set up and run your firm's Precision AI agents, skills and routines from any MCP client.
Compliance frameworks (SOC 2, ISO 27001, CMMC, NIST, more) delivered to AI agents as MCP tools.
One MCP for any agent: your connected apps, shared memory, web search, social data and media tools.
Related MCP Servers
- AlicenseCqualityAmaintenanceEnables AI agents to manage system updates, application installations, and remote host orchestration through MCP tools.263MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to investigate production incidents by exposing service health, logs, and deployment data through MCP tools.6 npmISC
- AlicenseAqualityAmaintenanceEnables AI agents to monitor server health and capacity, diagnose outages, inspect Docker and deployment status, and perform safe, bounded recovery actions via MCP without granting unrestricted shell or SSH access.101Apache 2.0
- FlicenseNot gradedqualityCmaintenanceEnables SafeOps operators to monitor worker health, inspect job queues, investigate incidents, search runbooks, and approve or reject targeted failed-job retries through MCP tools, resources, and a prompt.-