naftiko: 1.0.0-alpha2 info: label: Siemens MindSphere Industrial IoT Monitoring description: Unified workflow capability combining MindSphere Asset Management and IoT Time Series APIs for industrial equipment monitoring. Enables operations teams and industrial engineers to manage digital twins, ingest sensor telemetry, and query historical machine data for predictive maintenance, OEE analysis, and condition monitoring use cases. tags: - IoT - Industrial - Asset Management - Time Series - Digital Twin - Monitoring - Predictive Maintenance created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: MINDSPHERE_BEARER_TOKEN: MINDSPHERE_BEARER_TOKEN capability: consumes: - type: http namespace: mindsphere-assets baseUri: https://gateway.eu1.mindsphere.io/api/assetmanagement/v3 description: MindSphere Asset Management REST API authentication: type: bearer token: '{{MINDSPHERE_BEARER_TOKEN}}' resources: - name: assets path: /assets description: Asset instance management operations: - name: list-assets method: GET description: List all assets in the tenant inputParameters: - name: size in: query type: integer required: false description: Page size - name: page in: query type: integer required: false description: Page number outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-asset method: POST description: Create a new asset outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' typeId: '{{tools.typeId}}' parentId: '{{tools.parentId}}' - name: asset path: /assets/{assetId} description: Single asset operations operations: - name: get-asset method: GET description: Get an asset by ID inputParameters: - name: assetId in: path type: string required: true description: Asset unique identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: delete-asset method: DELETE description: Delete an asset inputParameters: - name: assetId in: path type: string required: true description: Asset unique identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: aspect-types path: /aspecttypes description: Aspect type management operations: - name: list-aspect-types method: GET description: List all aspect types outputRawFormat: json outputParameters: - name: result type: object value: $. - name: asset-types path: /assettypes description: Asset type management operations: - name: list-asset-types method: GET description: List all asset types outputRawFormat: json outputParameters: - name: result type: object value: $. - type: http namespace: mindsphere-timeseries baseUri: https://gateway.eu1.mindsphere.io/api/iottimeseries/v3 description: MindSphere IoT Time Series REST API authentication: type: bearer token: '{{MINDSPHERE_BEARER_TOKEN}}' resources: - name: timeseries-bulk path: /timeseries description: Multi-asset time series ingestion operations: - name: ingest-multi-timeseries method: PUT description: Ingest time-series data for multiple asset aspects outputRawFormat: json outputParameters: - name: result type: object value: $. - name: timeseries path: /timeseries/{assetId}/{aspectName} description: Single asset aspect time series operations operations: - name: ingest-timeseries method: PUT description: Ingest time-series data for a specific asset and aspect inputParameters: - name: assetId in: path type: string required: true description: Asset unique identifier - name: aspectName in: path type: string required: true description: Aspect name containing the time series variables outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-timeseries method: GET description: Query time-series data for a specific asset aspect inputParameters: - name: assetId in: path type: string required: true description: Asset unique identifier - name: aspectName in: path type: string required: true description: Aspect name to query - name: from in: query type: string required: false description: Start of time range (ISO 8601) - name: to in: query type: string required: false description: End of time range (ISO 8601) - name: limit in: query type: integer required: false description: Maximum number of data points to return outputRawFormat: json outputParameters: - name: result type: object value: $. - name: delete-timeseries method: DELETE description: Delete time-series data for an asset aspect in a time range inputParameters: - name: assetId in: path type: string required: true description: Asset unique identifier - name: aspectName in: path type: string required: true description: Aspect name - name: from in: query type: string required: true description: Start of deletion range (ISO 8601) - name: to in: query type: string required: true description: End of deletion range (ISO 8601) outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: mindsphere-iot-api description: Unified REST API for industrial IoT asset monitoring and telemetry on MindSphere. resources: - path: /v1/assets name: assets description: Industrial asset management operations: - method: GET name: list-assets description: List all industrial IoT assets call: mindsphere-assets.list-assets outputParameters: - type: object mapping: $. - method: POST name: create-asset description: Create a new digital twin asset call: mindsphere-assets.create-asset with: name: rest.name typeId: rest.typeId parentId: rest.parentId outputParameters: - type: object mapping: $. - path: /v1/assets/{assetId} name: asset description: Single asset operations operations: - method: GET name: get-asset description: Get asset details by ID call: mindsphere-assets.get-asset with: assetId: rest.assetId outputParameters: - type: object mapping: $. - method: DELETE name: delete-asset description: Delete an asset and its digital twin call: mindsphere-assets.delete-asset with: assetId: rest.assetId outputParameters: - type: object mapping: $. - path: /v1/aspect-types name: aspect-types description: Data schema definitions for asset aspects operations: - method: GET name: list-aspect-types description: List all aspect type schemas call: mindsphere-assets.list-aspect-types outputParameters: - type: object mapping: $. - path: /v1/asset-types name: asset-types description: Asset type template definitions operations: - method: GET name: list-asset-types description: List all asset type templates call: mindsphere-assets.list-asset-types outputParameters: - type: object mapping: $. - path: /v1/timeseries/{assetId}/{aspectName} name: timeseries description: Sensor and machine telemetry time series operations: - method: GET name: get-timeseries description: Query time-series sensor data for an asset aspect call: mindsphere-timeseries.get-timeseries with: assetId: rest.assetId aspectName: rest.aspectName from: rest.from to: rest.to limit: rest.limit outputParameters: - type: object mapping: $. - method: PUT name: ingest-timeseries description: Ingest sensor readings into time series call: mindsphere-timeseries.ingest-timeseries with: assetId: rest.assetId aspectName: rest.aspectName outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: mindsphere-iot-mcp transport: http description: MCP server for AI-assisted industrial IoT monitoring and asset management on MindSphere. tools: - name: list-assets description: List all industrial IoT assets and digital twins in MindSphere hints: readOnly: true openWorld: false call: mindsphere-assets.list-assets outputParameters: - type: object mapping: $. - name: get-asset description: Get details of a specific industrial asset or digital twin hints: readOnly: true openWorld: false call: mindsphere-assets.get-asset with: assetId: tools.assetId outputParameters: - type: object mapping: $. - name: create-asset description: Create a new digital twin for an industrial device or system hints: readOnly: false destructive: false idempotent: false call: mindsphere-assets.create-asset with: name: tools.name typeId: tools.typeId parentId: tools.parentId outputParameters: - type: object mapping: $. - name: delete-asset description: Delete an industrial asset and its digital twin representation hints: readOnly: false destructive: true idempotent: true call: mindsphere-assets.delete-asset with: assetId: tools.assetId outputParameters: - type: object mapping: $. - name: list-aspect-types description: List all data schema definitions (aspect types) for industrial asset data hints: readOnly: true openWorld: false call: mindsphere-assets.list-aspect-types outputParameters: - type: object mapping: $. - name: list-asset-types description: List all asset type templates defining industrial equipment classes hints: readOnly: true openWorld: false call: mindsphere-assets.list-asset-types outputParameters: - type: object mapping: $. - name: get-timeseries description: Query historical sensor and machine telemetry from an asset aspect for a time range hints: readOnly: true openWorld: false call: mindsphere-timeseries.get-timeseries with: assetId: tools.assetId aspectName: tools.aspectName from: tools.from to: tools.to limit: tools.limit outputParameters: - type: object mapping: $. - name: ingest-timeseries description: Ingest sensor readings and telemetry data into MindSphere time series hints: readOnly: false destructive: false idempotent: true call: mindsphere-timeseries.ingest-timeseries with: assetId: tools.assetId aspectName: tools.aspectName outputParameters: - type: object mapping: $. - name: ingest-multi-timeseries description: Batch ingest time-series data for multiple industrial assets in one request hints: readOnly: false destructive: false idempotent: true call: mindsphere-timeseries.ingest-multi-timeseries outputParameters: - type: object mapping: $.