Skip to content

Commit 69cb47b

Browse files
authored
fix: showing all mcp server in the list (#4478)
* fix: showing all mcp server in the list * refactor: add built-in server check in MCPConfigView * refactor: update server initialization logic in MCPConfigView
1 parent 031625b commit 69cb47b

File tree

2 files changed

+23
-2
lines changed

2 files changed

+23
-2
lines changed

packages/ai-native/src/browser/mcp/config/components/mcp-config.view.tsx

+15-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,21 @@ export const MCPConfigView: React.FC = () => {
2626
const [editingServer, setEditingServer] = React.useState<MCPServerFormData | undefined>();
2727
const [loadingServer, setLoadingServer] = React.useState<string | undefined>();
2828
const loadServers = useCallback(async () => {
29-
const allServers = await mcpServerProxyService.$getServers();
29+
const userServers = preferenceService.get<MCPServerDescription[]>(AINativeSettingSectionsId.MCPServers, []);
30+
const runningServers = await mcpServerProxyService.$getServers();
31+
const builtinServer = runningServers.find((server) => server.name === BUILTIN_MCP_SERVER_NAME);
32+
const allServers = userServers.map((server) => {
33+
const runningServer = runningServers.find((s) => s.name === server.name);
34+
return {
35+
...server,
36+
name: server.name,
37+
isStarted: !!runningServer,
38+
tools: runningServer?.tools,
39+
};
40+
}) as MCPServer[];
41+
if (builtinServer) {
42+
allServers.unshift(builtinServer);
43+
}
3044
setServers(allServers);
3145
}, [mcpServerProxyService]);
3246

packages/ai-native/src/common/index.ts

+8-1
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,14 @@ export interface ISumiMCPServerBackend {
134134
initBuiltinMCPServer(enabled: boolean): void;
135135
initExternalMCPServers(servers: MCPServerDescription[]): void;
136136
getAllMCPTools(): Promise<MCPTool[]>;
137-
getServers(): Promise<Array<{ name: string; isStarted: boolean; tools: MCPTool[] }>>;
137+
getServers(): Promise<
138+
Array<{
139+
name: string;
140+
isStarted: boolean;
141+
type: string;
142+
tools: MCPTool[];
143+
}>
144+
>;
138145
startServer(serverName: string): Promise<void>;
139146
stopServer(serverName: string): Promise<void>;
140147
addOrUpdateServer(description: MCPServerDescription): void;

0 commit comments

Comments
 (0)