midjourney-mcp
Version:
A Model Context Protocol server for Midjourney integration via MJ API
50 lines • 1.5 kB
JavaScript
/**
* Image utility functions for downloading and converting images
*/
/**
* Download an image from URL and convert to base64
*/
export async function downloadImageAsBase64(imageUrl) {
try {
const response = await fetch(imageUrl);
if (!response.ok) {
console.error(`Failed to download image: ${response.status} ${response.statusText}`);
return null;
}
const contentType = response.headers.get('content-type');
if (!contentType || !contentType.startsWith('image/')) {
console.error(`Invalid content type: ${contentType}`);
return null;
}
const arrayBuffer = await response.arrayBuffer();
const base64 = Buffer.from(arrayBuffer).toString('base64');
return {
data: base64,
mimeType: contentType
};
}
catch (error) {
console.error('Error downloading image:', error);
return null;
}
}
/**
* Get MIME type from image URL extension (fallback)
*/
export function getMimeTypeFromUrl(url) {
const extension = url.split('.').pop()?.toLowerCase();
switch (extension) {
case 'jpg':
case 'jpeg':
return 'image/jpeg';
case 'png':
return 'image/png';
case 'gif':
return 'image/gif';
case 'webp':
return 'image/webp';
default:
return 'image/png'; // Default fallback
}
}
//# sourceMappingURL=image-utils.js.map