FIWARE MCP Server
Dies ist die erste Implementierung eines FIWARE Model Context Protocol (MCP)-Servers, der eine Brücke zwischen dem Context Broker und anderen Diensten bildet. Der Server implementiert grundlegende Operationen für die Interaktion mit einem FIWARE Context Broker.
Ziele
Erstellen Sie eine grundlegende MCP-Serverimplementierung für FIWARE
Bereitstellung einfacher Tools für die Context Broker-Interaktion
Demonstrieren Sie grundlegende CRUD-Operationen mit dem Context Broker
Dient als Grundlage für komplexere MCP-Implementierungen
Related MCP server: Confluence MCP
Merkmale
Context Broker-Versionsprüfung
Abfragefunktionen für den Context Broker
Entitätsveröffentlichung und -aktualisierung
Voraussetzungen
Python 3.7 oder höher
pip (Python-Paketinstallationsprogramm)
Zugriff auf eine FIWARE Context Broker-Instanz
Installation
Klonen Sie dieses Repository:
git clone <repository-url>
cd FIWARE_MCP_01Installieren Sie die erforderlichen Abhängigkeiten:
pip install -r requirements.txtClaude Desktop-Integration
mcp install server.py
# Custom name
mcp install server.py --name "FIWARE MCP Server"
# Environment variables, if any
mcp install server.py -v API_KEY=abc123 -v DB_URL=postgres://...
mcp install server.py -f .envVerwendung
Starten Sie den MCP-Server:
python server.py
# or
mcp run server.pyDer Server wird standardmäßig auf 127.0.0.1:5001 gestartet.
Verfügbare Tools
CB_version
Überprüft die Version des Context Brokers
Standardparameter: Adresse="localhost", Port=1026
Gibt zurück: JSON-String mit Versionsinformationen
query_CB
Fragt den Context Broker ab
Parameter:
Adresse (Standard: "localhost")
Port (Standard: 1026)
Abfrage (Standard: "")
Gibt zurück: JSON-Zeichenfolge mit Abfrageergebnissen
veröffentlichen_in_CB
Veröffentlicht oder aktualisiert Entitäten im Context Broker
Parameter:
Adresse (Standard: "localhost")
Port (Standard: 1026)
entity_data (erforderlich: Wörterbuch mit Entitätsinformationen)
Gibt zurück: JSON-Zeichenfolge mit Operationsstatus
Beispielverwendung
# Example entity data
entity_data = {
"id": "urn:ngsi-ld:TemperatureSensor:001",
"type": "TemperatureSensor",
"temperature": {
"type": "Property",
"value": 25.5
},
"@context": "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context.jsonld"
}
# Publish to Context Broker
result = publish_to_CB(entity_data=entity_data)Konfiguration
Der Server kann durch Ändern der folgenden Parameter in server.py konfiguriert werden:
Hostadresse
Portnummer
Timeout-Einstellungen
Fehlerbehandlung
Der Server beinhaltet eine umfassende Fehlerbehandlung für:
Probleme mit der Netzwerkkonnektivität
Ungültige Antworten vom Context Broker
Fehlerhafte Entitätsdaten
Server-Herunterfahren
Beitragen
Senden Sie uns gerne Probleme und Verbesserungsvorschläge!
Lizenz
Dieses Projekt ist unter der Apache-Lizenz 2.0 lizenziert.