get_assets
Get a filtered list of assets including devices from Cumulocity.
Look up devices, their measurements and the alarms that are firing in a Cumulocity IoT tenant.
LABSCO SUMMARY
Devices, measurements and alarms are the three things anyone opens the Cumulocity UI for. Having the JSONata evaluator beside them matters if you write Dynamic Mapper transformations, because an expression can be tested against a real payload without leaving the conversation.
A Python MCP server for the Cumulocity IoT platform, covering device management, measurements and alarms, run locally or deployed into the tenant as a microservice.
uvx, or pip install mcp-server-c8y and run it as python -m mcp_server_c8y. To run it inside the tenant instead, build mcp-server-c8y.zip with the provided script — that needs Docker and zip — and upload it as a microservice.
One command plus credentials — pip install mcp-server-c8y, then supply credentials
USE CASES
Filter the device list by name or type instead of paging through the inventory.
Pull measurements for that device between two timestamps.
List active alarms filtered to the severity you actually respond to.
Fetch the parent, then its child devices and fragments, rather than clicking through the hierarchy.
Evaluate it against a real payload before wiring it into a Dynamic Mapper mapping.
Listed in project code.
get_assetsGet a filtered list of assets including devices from Cumulocity.
get_child_devicesGet child devices of a specific device.
get_device_contextGet comprehensive context for a specific device.
get_device_measurementsGet the latest measurements for a specific device.
get_alarmsGet alarms across the platform or for a specific device (optionally including children).
get_eventsGet events for a specific device (optionally including children). Platform-wide queries are not allowed.
get_asset_hierarchyGet the complete asset hierarchy for a specific asset or device by retrieving all parent managed objects.
evaluate_jsonata_expressionTest a JSONata expression against a JSON string.
BEFORE YOU INSTALL
8 tools registered in the project's code.
INSTALLATION
pip install mcp-server-c8y{
"mcpServers": {
"mcp-c8y": {
"command": "uvx",
"args": [
"mcp-server-c8y",
"--transport",
"stdio"
],
"env": {
"C8Y_BASEURL": "<YOUR_C8Y_BASEURL>",
"C8Y_TENANT": "<YOUR_C8Y_TENANT>",
"C8Y_USER": "<YOUR_C8Y_USER>",
"C8Y_PASSWORD": "<YOUR_C8Y_PASSWORD>"
}
}
}
}{
"mcpServers": {
"Cumulocity": {
"url": "<YOUR_C8Y_BASEURL>/service/mcp-server-c8y/mcp/",
"headers": {
"Authorization": "Basic <YOUR_BASE64_AUTH_TOKEN>"
}
}
}
}