XMPro Meta Action Agent - Script Processing & Package For Reuse
Create custom XMPro agents with Python scripts, AI-generated code, and third-party libraries. Perfect for industrial data processing, sensor monitoring, and automated data stream workflows
Overview
The Meta Action Agent allows designers to innovate quickly, creating agents in languages they are familiar with and leveraging 3rd party libraries. You can:
Run scripts on input values and use the results in your Data Streams
Export a configured Agent as a new Agent package to reuse the source code and input/output configuration
We recommend leveraging generative AI to write the Agent source code. This approach can significantly streamline the development process and enhance the functionality of the agents.
In industrial IoT and manufacturing settings, the Meta Action Agent excels at real-time data processing for control loop monitoring, sensor data analysis, and predictive maintenance workflows.
For example, it can collect data from sensors and compute metrics like valve travel, overshoot ratio, PID hunting frequency, OP/PV saturation, and time spent at limits. Use it to detect anomalies (such as excessive valve travel or persistent PID hunting), the output of which could be used in your data stream to trigger alerts or adjustments to optimize the loop, reducing wear on equipment, minimizing energy usage, and preventing downtime.
For simple use cases, see the Meta Action Agent Examples.
For a detailed configuration guide, see the Meta Action Agent Configuration Guide.
Current Version
Download the Meta Action Agent v1.20 (Last Updated: 22 Oct 2025)
Compatibility: XMPro Stream Host v4.4.13+; XMPro Data Stream Designer v4.4.14+
Additional Prerequisites:
A Python script. It is the first language supported and support for additional languages are planned. Please contact us if you require a specific language not supported.
Your selected language is installed on the device where the Stream Host is installed. We recommend using one of our Available Variants that has Python readily installed when using Python as language.
When using Git Repository for your Source Code, Git should also be installed. See Installing System Dependencies to include Git when using Stream Host Docker.
When using Python as your language, install python module pipreqs to enable Package Validation. See Python Package Installation to include a python module when using Stream Host Docker.
Please contact XMPro if you're looking for an older agent version.
Meta Action Agent Release Notes
1.20
22 Oct 2025
Returned the Validate Package functionality removed from v1.16. Use pipreqs for consistent package validation results. Support appending the input payload to the output. Standardize property names. Fixed Process as Batch not taking effect on exported Agents.
1.16
15 Aug 2025
Introduced an opt out of logging to the Stream Host logs. Removed ability to install python packages on the Stream Host from the configuration blade. Install python packages during Stream Host installation. See Python Package Installation. Removed ability to validate required packages were installed.
1.15
18 Jul 2025
Added more detail to Python package installation logging for network related errors, permission errors, package not found errors, and dependency conflicts.
1.14
24 Feb 2025
Fixed backward compatibility issue introduced in v1.12 (see updated Pre-requisites). However, logging to the Data Stream Logs will take effect when used with Stream Host v4.4.19+.
1.13
14 Feb 2025
Fixed a bug when a Stream Host (without the software requirements installed e.g. Python) is started AND a Data Stream containing the Meta Agent is already published:
The Meta Agent has error handling to fail gracefully after the Execution Timeout period.
NOTE: Contains the v1.12 breaking change. Use v1.14+ instead.
1.12
12 Jan 2025
Removed logging via the Logger output endpoint.
Implemented logging to the Data Stream Logs:
Standard outputs from the source code are logged.
Create and Destroy results are logged.
NOTE: This is a breaking change if the logging output endpoint has been utilized - resolve by monitoring the Data Stream logs instead.
It is only compatible with Stream Host v4.4.17 and Data Stream v4.4.17. Use v1.14+ instead.
1.11
16 Dec 2024
Renamed a Results Returned As option from Append To Existing
to Append To Current, to align with naming convention. If you opt to process as batch, the only Results Returned As option is New.
1.10
18 Oct 2024
This is a breaking change - note the updated pre-requisites and that it requires the Agent to be reconfigured. Back up source code and input/output mappings before upgrading.
Support exporting of Agent as a new Package - allowing reuse of the Agent Source Code and Input/Output configuration as a new Agent in the toolbox.
Support Git Repository - allowing source control for your source code.
Removed Local File editing to avoid synchronization issues - rather use Git Repository to edit your code and push your changes to the Agent.
Support logging of Standard Outputs on the Logger endpoint. Printing inside the Source Code is no longer suppressed and is instead displayed on the Logger endpoint.
Support batch processing of events - you can accept a list of events in the source code.
Support outputting a batch per incoming event - you can output a list instead of a single dictionary.
Note: Export Agent Package requires DS v4.4.14+
1.00
20 Sep 2024
Initial Release. Requires XMPro Stream Host v4.4.13 and Data Stream Designer v4.4.13.
Known issue: when using "Sync File" to edit the source code file on a Stream Host (SH) and more than one SH is online, the file is synced from the first SH regardless of where the code was changed. Resolved in v1.10.
Last updated
Was this helpful?