sap-b1-mcp-server
Version:
SAP Business One Service Layer MCP Server
39 lines • 1.54 kB
JavaScript
import { createErrorResponse } from './response.js';
import { z } from 'zod';
export function handleToolError(error, operationName, additionalDetails) {
let errorMessage;
let details;
if (error instanceof z.ZodError) {
errorMessage = 'Validation failed';
details = error.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', ');
}
else {
errorMessage = error.message || `${operationName} failed`;
const baseDetails = 'Check your parameters and ensure the SAP session is valid';
details = additionalDetails ? `${additionalDetails}. ${baseDetails}` : baseDetails;
}
return createErrorResponse(errorMessage, details);
}
export async function executeWithErrorHandling(operation, operationName, additionalDetails) {
try {
return await operation();
}
catch (error) {
return handleToolError(error, operationName, additionalDetails);
}
}
export function getOperationDetails(operationType) {
switch (operationType) {
case 'retrieve':
return 'Check your filter syntax and ensure the session is valid';
case 'create':
return 'Check required fields and data types';
case 'update':
return 'Check the entity exists and required fields are provided';
case 'delete':
return 'Check the entity exists and can be deleted';
default:
return 'Check your parameters and ensure the SAP session is valid';
}
}
//# sourceMappingURL=error-handler.js.map