diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/callcontext/OzgCloudCallContextAttachingInterceptor.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/callcontext/OzgCloudCallContextAttachingInterceptor.java
index 50a5ddc64c3cb9917b6064df34fca514976af369..b46e9263f14285ff3abd6f41b55b16172cb1f571 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/callcontext/OzgCloudCallContextAttachingInterceptor.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/callcontext/OzgCloudCallContextAttachingInterceptor.java
@@ -16,9 +16,7 @@ import io.grpc.ForwardingClientCall.SimpleForwardingClientCall;
 import io.grpc.Metadata;
 import io.grpc.MethodDescriptor;
 import lombok.RequiredArgsConstructor;
-import net.devh.boot.grpc.client.interceptor.GrpcGlobalClientInterceptor;
 
-@GrpcGlobalClientInterceptor
 @RequiredArgsConstructor
 public class OzgCloudCallContextAttachingInterceptor implements ClientInterceptor {
 
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java
index f411ba77ed41fe1f84fc46e4ca96936bf1f5d4aa..2506c223cc17f257ada388b6772728011b1ce830 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java
@@ -2,6 +2,8 @@ package de.ozgcloud.apilib.common.command.grpc;
 
 import de.itvsh.ozg.pluto.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub;
 import de.itvsh.ozg.pluto.grpc.command.GrpcGetCommandRequest;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextAttachingInterceptor;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
 import de.ozgcloud.apilib.common.command.OzgCloudCommand;
 import de.ozgcloud.apilib.common.command.OzgCloudCommandId;
 import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
@@ -18,13 +20,15 @@ public class GrpcOzgCloudCommandService implements OzgCloudCommandService {
 
 	private final CommandMapper mapper;
 
+	private final OzgCloudCallContextProvider contextProvider;
+
 	@Override
 	public OzgCloudCommand createAndWaitUntilDone(OzgCloudCommand commandToCreate) {
 		return waitUntilDone(create(commandToCreate));
 	}
 
 	OzgCloudCommand create(OzgCloudCommand commandToCreate) {
-		var created = commandServiceStub.createCommand(mapper.buildCreateCommandRequest(commandToCreate));
+		var created = getCommandServiceStub().createCommand(mapper.buildCreateCommandRequest(commandToCreate));
 		return mapper.fromGrpc(created.getCommand());
 	}
 
@@ -46,6 +50,10 @@ public class GrpcOzgCloudCommandService implements OzgCloudCommandService {
 
 	private OzgCloudCommand reloadCommand(OzgCloudCommandId commandId) {
 		GrpcGetCommandRequest request = GrpcGetCommandRequest.newBuilder().setId(commandId.toString()).build();
-		return mapper.fromGrpc(commandServiceStub.getCommand(request));
+		return mapper.fromGrpc(getCommandServiceStub().getCommand(request));
+	}
+
+	CommandServiceBlockingStub getCommandServiceStub() {
+		return commandServiceStub.withInterceptors(new OzgCloudCallContextAttachingInterceptor(contextProvider));
 	}
 }
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileService.java
index e9830c36e3822f814cdbb98ba361ad4404590869..008293df6e258e65b4c27b4b1be99f671bb6bcb9 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileService.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileService.java
@@ -18,6 +18,8 @@ import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcBinaryFilesRequest;
 import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcFindFilesResponse;
 import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcGetBinaryFileDataRequest;
 import de.itvsh.ozg.pluto.grpc.file.GrpcOzgFile;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextAttachingInterceptor;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
 import de.ozgcloud.apilib.common.errorhandling.NotFoundException;
 import de.ozgcloud.apilib.file.OzgCloudFile;
 import de.ozgcloud.apilib.file.OzgCloudFileId;
@@ -37,13 +39,15 @@ public class GrpcOzgCloudFileService implements OzgCloudFileService {
 	@GrpcClient("file-manager")
 	private final BinaryFileServiceStub asyncServiceStub;
 
+	private final OzgCloudCallContextProvider contextProvider;
+
 	private final OzgCloudFileMapper mapper;
 
 	static final int CHUNK_SIZE = 255 * 1024;
 
 	@Override
 	public OzgCloudFile getFile(OzgCloudFileId id) {
-		var response = blockingStub.findBinaryFilesMetaData(buildFindFileRequest(id));
+		var response = getBlockingStub().findBinaryFilesMetaData(buildFindFileRequest(id));
 
 		return mapper.fromGrpc(getSingleResponse(response, id));
 	}
@@ -71,7 +75,7 @@ public class GrpcOzgCloudFileService implements OzgCloudFileService {
 		var streamFuture = new CompletableFuture<Boolean>();
 		var responseObserver = new OzgCloudFileDownloadStreamObserver(streamFuture, streamToWriteData);
 
-		asyncServiceStub.getBinaryFileContent(buildGrpcGetBinaryFileDataRequest(fileId), responseObserver);
+		getAsyncServiceStub().getBinaryFileContent(buildGrpcGetBinaryFileDataRequest(fileId), responseObserver);
 
 		waitUntilFutureToComplete(streamFuture);
 	}
@@ -90,4 +94,12 @@ public class GrpcOzgCloudFileService implements OzgCloudFileService {
 			throw new TechnicalException(e.getMessage(), e);
 		}
 	}
+
+	BinaryFileServiceBlockingStub getBlockingStub() {
+		return blockingStub.withInterceptors(new OzgCloudCallContextAttachingInterceptor(contextProvider));
+	}
+
+	BinaryFileServiceStub getAsyncServiceStub() {
+		return asyncServiceStub.withInterceptors(new OzgCloudCallContextAttachingInterceptor(contextProvider));
+	}
 }
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangService.java
index 3cdba10574771336d6097d708ee4ac1c2062e116..31df378d1c8a0248032a9881ee08b5af2ab50fc4 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangService.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangService.java
@@ -7,6 +7,8 @@ import de.itvsh.ozg.pluto.vorgang.GrpcFindVorgangRequest;
 import de.itvsh.ozg.pluto.vorgang.GrpcFindVorgangRequest.GrpcOrderBy;
 import de.itvsh.ozg.pluto.vorgang.GrpcFindVorgangWithEingangRequest;
 import de.itvsh.ozg.pluto.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextAttachingInterceptor;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgang;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangId;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangService;
@@ -25,9 +27,11 @@ public class GrpcOzgCloudVorgangService implements OzgCloudVorgangService {
 	private final OzgCloudVorgangMapper mapper;
 	private final OzgCloudVorgangStubMapper stubMapper;
 
+	private final OzgCloudCallContextProvider contextProvider;
+
 	@Override
 	public OzgCloudVorgang getById(@NonNull OzgCloudVorgangId vorgangId) {
-		var response = vorgangServiceStub.findVorgangWithEingang(buildRequest(vorgangId));
+		var response = getVorgangServiceStub().findVorgangWithEingang(buildRequest(vorgangId));
 
 		return mapper.fromGrpc(response.getVorgangWithEingang());
 	}
@@ -45,7 +49,7 @@ public class GrpcOzgCloudVorgangService implements OzgCloudVorgangService {
 
 	@Override
 	public List<OzgCloudVorgangStub> search(@NonNull String searchString, Page page) {
-		var response = vorgangServiceStub.findVorgang(buildSearchRequest(searchString, page));
+		var response = getVorgangServiceStub().findVorgang(buildSearchRequest(searchString, page));
 
 		return response.getVorgangList().stream().map(stubMapper::fromGrpc).toList();
 	}
@@ -60,4 +64,7 @@ public class GrpcOzgCloudVorgangService implements OzgCloudVorgangService {
 				.build();
 	}
 
+	VorgangServiceBlockingStub getVorgangServiceStub() {
+		return vorgangServiceStub.withInterceptors(new OzgCloudCallContextAttachingInterceptor(contextProvider));
+	}
 }
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java
index de5ab15066349dfd74110048ad1ac0dbd0de4223..8cdc3f055d216c2859f07ed4b5d29b3169dcf094 100644
--- a/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java
@@ -54,6 +54,7 @@ class GrpcOzgCloudCommandServiceTest {
 
 			@BeforeEach
 			void init() {
+				when(serviceStub.withInterceptors(any())).thenReturn(serviceStub);
 				when(serviceStub.createCommand(any())).thenReturn(GrpcCommandResponseTestFactory.create());
 			}
 
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileServiceTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileServiceTest.java
index ff27abc79bfa4fd74f3990e008d6c0a51ecc5b94..84d7d608d5eb8f112b402f16ab8f093645aa7b5e 100644
--- a/api-lib-core/src/test/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileServiceTest.java
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/file/grpc/GrpcOzgCloudFileServiceTest.java
@@ -34,6 +34,7 @@ class GrpcOzgCloudFileServiceTest {
 		class CallGetFile {
 			@BeforeEach
 			void init() {
+				when(blockingStub.withInterceptors(any())).thenReturn(blockingStub);
 				when(blockingStub.findBinaryFilesMetaData(any())).thenReturn(GrpcFindFilesResponse.newBuilder().addFile(GrpcOzgFileTestFactory.create()).build());
 			}
 
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangServiceTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangServiceTest.java
index ad87c0e7ee60639e3d99ff2e33a331a7303e51f4..905f2734908fb0e9f8650fb9be7ec21e3812d7d8 100644
--- a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangServiceTest.java
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/GrpcOzgCloudVorgangServiceTest.java
@@ -40,6 +40,7 @@ class GrpcOzgCloudVorgangServiceTest {
 
 		@BeforeEach
 		void init() {
+			when(stub.withInterceptors(any())).thenReturn(stub);
 			when(stub.findVorgangWithEingang(any())).thenReturn(GrpcFindVorgangWithEingangResponseTestFactory.create());
 		}
 
@@ -119,6 +120,7 @@ class GrpcOzgCloudVorgangServiceTest {
 
 			@BeforeEach
 			void init() {
+				when(stub.withInterceptors(any())).thenReturn(stub);
 				when(stub.findVorgang(any())).thenReturn(RESPONSE);
 			}
 
diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
index 4346546a300c8bd07f741e93526c5c94fc373191..61cc836003338e2e5dec2076f4c115abab6c8f8f 100644
--- a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
+++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
@@ -104,8 +104,8 @@ public class OzgCloudClientAutoConfiguration {
 	@Bean
 	@ConditionalOnProperty("ozgcloud.command-manager.address")
 	OzgCloudCommandService grpcCommandService(@GrpcClient("command-manager") CommandServiceBlockingStub commandServiceStub,
-		CommandMapper commandMapper) {
-		return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper);
+		CommandMapper commandMapper,  OzgCloudCallContextProvider contextProvider) {
+		return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider);
 	}
 
 	@Bean
@@ -129,8 +129,8 @@ public class OzgCloudClientAutoConfiguration {
 	@Bean("ozgCloudVorgangService")
 	@ConditionalOnProperty("ozgcloud.vorgang-manager.address")
 	public OzgCloudVorgangService grpcOzgCloudVorgangService(VorgangServiceBlockingStub vorgangServiceStub, OzgCloudVorgangMapper mapper,
-		OzgCloudVorgangStubMapper stubMapper) {
-		return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper);
+		OzgCloudVorgangStubMapper stubMapper, OzgCloudCallContextProvider contextProvider) {
+		return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper, contextProvider);
 	}
 
 	@Bean("ozgCloudVorgangService")