diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte
index eda2cf86a..102453dc0 100644
--- a/src/lib/components/chat/Chat.svelte
+++ b/src/lib/components/chat/Chat.svelte
@@ -2316,6 +2316,8 @@
 										await uploadWeb(data);
 									} else if (type === 'youtube') {
 										await uploadYoutubeTranscription(data);
+									} else if (type === 'google-drive') {
+										await uploadGoogleDriveFile(data);
 									}
 								}}
 								on:submit={async (e) => {
diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte
index 6dd6ff258..1303cf373 100644
--- a/src/lib/components/chat/MessageInput.svelte
+++ b/src/lib/components/chat/MessageInput.svelte
@@ -496,6 +496,16 @@
 										uploadFilesHandler={() => {
 											filesInputElement.click();
 										}}
+										uploadGoogleDriveHandler={async () => {
+											try {
+												const fileData = await createPicker();
+												if (fileData) {
+													dispatch('upload', { type: 'google-drive', data: fileData });
+												}
+											} catch (error) {
+												toast.error('Error accessing Google Drive: ' + error.message);
+											}
+										}}
 										onClose={async () => {
 											await tick();