diff --git a/client/src/components/Chat/Messages/Content/Parts/Attachment.tsx b/client/src/components/Chat/Messages/Content/Parts/Attachment.tsx
index 28f3be1846..1d14534e0d 100644
--- a/client/src/components/Chat/Messages/Content/Parts/Attachment.tsx
+++ b/client/src/components/Chat/Messages/Content/Parts/Attachment.tsx
@@ -70,7 +70,7 @@ const ImageAttachment = memo(({ attachment }: { attachment: TAttachment }) => {
}}
>
;
@@ -110,11 +111,12 @@ export function AttachmentGroup({ attachments }: { attachments?: TAttachment[] }
attachments.forEach((attachment) => {
const { width, height, filepath = null } = attachment as TFile & TAttachmentMetadata;
- const isImage =
- imageExtRegex.test(attachment.filename) &&
- width != null &&
- height != null &&
- filepath != null;
+ const isImage = attachment.filename
+ ? imageExtRegex.test(attachment.filename) &&
+ width != null &&
+ height != null &&
+ filepath != null
+ : false;
if (isImage) {
imageAttachments.push(attachment);
diff --git a/packages/api/src/mcp/parsers.ts b/packages/api/src/mcp/parsers.ts
index 97b1efc4c6..2f9ce8c06d 100644
--- a/packages/api/src/mcp/parsers.ts
+++ b/packages/api/src/mcp/parsers.ts
@@ -81,22 +81,14 @@ function parseAsString(result: t.MCPToolCallResponse): string {
return text;
}
-/**
- * Converts MCPToolCallResponse content into recognized content block types
- * Recognized types: "image", "image_url", "text", "json"
- *
- * @param {t.MCPToolCallResponse} result - The MCPToolCallResponse object
- * @param {string} provider - The provider name (google, anthropic, openai)
- * @returns {Array