@gsb-core/mcp-tools
Version:
Shared tools for GSB MCP implementations
226 lines (209 loc) • 6.99 kB
text/typescript
import { GsbEntityService, GsbSaveRequest } from '@gsb-core/core';
const gsbEntityService = new GsbEntityService();
export const gsbEntityTools = {
getById: async ({ definitionType, id, token, tenantCode }: { definitionType: string; id: string; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.getById(definitionType, id, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
getCopy: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.getCopy(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
query: async ({ queryParams, token, tenantCode }: { queryParams: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.query(queryParams, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
queryMapped: async ({ queryParams, token, tenantCode }: { queryParams: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.queryMapped(queryParams, token, tenantCode);
return { success: true, data: result.entities };
} catch (error: any) {
console.log(error);
return {
...error,
success: false
}
}
},
save: async ({ request, token, tenantCode }: { request: GsbSaveRequest; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.save(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
saveMulti: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.saveMulti(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
delete: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.delete(request, token, tenantCode);
return { success: true, data: result };
} catch (error: any) {
return {
...error,
success: false
}
}
},
deleteQuery: async ({ queryParams, token, tenantCode }: { queryParams: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.deleteQuery(queryParams, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
saveMappedItems: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.saveMappedItems(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
removeMappedItems: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.removeMappedItems(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
runWorkflow: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.runWorkflow(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
startWorkflow: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.startWorkflow(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
runWfFunction: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.runWfFunction(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
testWfFunction: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.testWfFunction(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
},
iterateTask: async ({ request, token, tenantCode }: { request: any; token?: string; tenantCode?: string }) => {
try {
const result = await gsbEntityService.iterateTask(request, token, tenantCode);
return {
...result,
success: true
}
} catch (error: any) {
return {
...error,
success: false
}
}
}
};