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

Function getMcpTools

frontend/services/mcpService.ts:283–334  ·  view source on GitHub ↗
(mcpId: number)

Source from the content-addressed store, hash-verified

281 * Get tool list from remote MCP server by ID
282 */
283export const getMcpTools = async (mcpId: number) => {
284 try {
285 const query = new URLSearchParams();
286 query.set('mcp_id', mcpId.toString());
287 const response = await fetch(
288 `${API_ENDPOINTS.mcp.tools}?${query.toString()}`,
289 {
290 method: 'GET',
291 headers: getAuthHeaders(),
292 }
293 );
294
295 const data = await response.json();
296
297 if (response.ok && data.status === 'success') {
298 return {
299 success: true,
300 data: data.tools || [],
301 message: ''
302 };
303 } else {
304 let errorMessage = data.detail || data.message || t('mcpService.message.getToolsFailed');
305
306 switch (response.status) {
307 case 500:
308 errorMessage = t('mcpService.message.getToolsFromServerFailed');
309 break;
310 case 503:
311 errorMessage = t('mcpService.message.cannotConnectToServer');
312 break;
313 case 404:
314 errorMessage = t('mcpService.message.mcpServerNotFound');
315 break;
316 default:
317 errorMessage = data.detail || data.message || t('mcpService.message.getToolsFailed');
318 }
319
320 return {
321 success: false,
322 data: [],
323 message: errorMessage
324 };
325 }
326 } catch (error) {
327 log.error(t('mcpService.debug.getToolsFailed'), error);
328 return {
329 success: false,
330 data: [],
331 message: t('mcpService.message.networkError')
332 };
333 }
334};
335
336/**
337 * Update tool list and status

Callers 1

useMcpConfigFunction · 0.90

Calls 6

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

Tested by

no test coverage detected