MCPcopy
hub / github.com/ModelEngine-Group/nexent / uploadMcpImage

Function uploadMcpImage

frontend/services/mcpService.ts:688–746  ·  view source on GitHub ↗
(file: File, port: number, serviceName?: string, envVars?: string, tenantId?: string | null)

Source from the content-addressed store, hash-verified

686 * Upload MCP image and start container
687 */
688export const uploadMcpImage = async (file: File, port: number, serviceName?: string, envVars?: string, tenantId?: string | null) => {
689 try {
690 const formData = new FormData();
691 formData.append('file', file);
692 formData.append('port', port.toString());
693 if (serviceName) {
694 formData.append('service_name', serviceName);
695 }
696 if (envVars) {
697 formData.append('env_vars', envVars);
698 }
699 if (tenantId) {
700 formData.append('tenant_id', tenantId);
701 }
702
703 const { 'Content-Type': _, ...headers } = getAuthHeaders();
704
705 const response = await fetch(API_ENDPOINTS.mcp.uploadImage, {
706 method: 'POST',
707 headers: headers,
708 body: formData,
709 });
710
711 const data = await response.json();
712
713 if (response.ok && data.status === 'success') {
714 return {
715 success: true,
716 data: data,
717 message: data.message || t('mcpService.message.uploadImageSuccess')
718 };
719 } else {
720 let errorMessage = data.detail || data.message || t('mcpService.message.uploadImageFailed');
721
722 if (response.status === 400) {
723 errorMessage = data.detail || t('mcpService.message.invalidUploadParameters');
724 } else if (response.status === 409) {
725 errorMessage = t('mcpService.message.serviceNameAlreadyExists');
726 } else if (response.status === 413) {
727 errorMessage = t('mcpService.message.fileTooLarge');
728 } else if (response.status === 503) {
729 errorMessage = t('mcpService.message.dockerServiceUnavailable');
730 }
731
732 return {
733 success: false,
734 data: null,
735 message: errorMessage
736 };
737 }
738 } catch (error) {
739 log.error(t('mcpService.debug.uploadImageFailed'), error);
740 return {
741 success: false,
742 data: null,
743 message: t('mcpService.message.networkError')
744 };
745 }

Callers 1

useMcpConfigFunction · 0.90

Calls 6

appendMethod · 0.80
toStringMethod · 0.80
errorMethod · 0.80
getAuthHeadersFunction · 0.70
tFunction · 0.70
jsonMethod · 0.45

Tested by

no test coverage detected