Kafka Connect is a configuration-driven tool for reliable, scalable, distributed streaming integration between Apache Kafka and other systems. It has connectors for many systems and supports custom connectors through its API. The Kafka Connect API provides Single Message Transforms (SMTs) that operate on every single message in the data pipeline as it passes through the connector. These transforms can be used to manipulate records before writing them to a Kafka topic or after reading from a sink system. They are classified into sources and sinks, which pull or push data respectively. The transforms can be chained together for more complex operations. However, they should only be used for simple, limited mutations of the data and not for heavy processing or external API calls. The transformations are compiled as JARs and configured in the connector properties. They support both record keys and values, allowing manipulation of all parts of the ConnectRecord.