@@ -54,14 +54,14 @@ async def create_mcp_server(
5454 # 校验传输类型
5555 if transport not in ("sse" , "streamable_http" ):
5656 raise HTTPException (status_code = 400 , detail = "传输类型必须是 sse 或 streamable_http" )
57-
57+
5858 try :
5959 # 检查名称是否已存在
6060 result = await db .execute (select (MCPServer ).filter (MCPServer .name == name ))
6161 existing = result .scalar_one_or_none ()
6262 if existing :
6363 raise HTTPException (status_code = 400 , detail = f"服务器名称 '{ name } ' 已存在" )
64-
64+
6565 server = MCPServer (
6666 name = name ,
6767 description = description ,
@@ -79,10 +79,10 @@ async def create_mcp_server(
7979 db .add (server )
8080 await db .commit ()
8181 await db .refresh (server )
82-
82+
8383 # 同步到缓存
8484 sync_mcp_server_to_cache (name , server .to_mcp_config ())
85-
85+
8686 return {"success" : True , "data" : server .to_dict ()}
8787 except HTTPException :
8888 raise
@@ -129,13 +129,13 @@ async def update_mcp_server(
129129 # 校验传输类型
130130 if transport is not None and transport not in ("sse" , "streamable_http" ):
131131 raise HTTPException (status_code = 400 , detail = "传输类型必须是 sse 或 streamable_http" )
132-
132+
133133 try :
134134 result = await db .execute (select (MCPServer ).filter (MCPServer .name == name ))
135135 server = result .scalar_one_or_none ()
136136 if not server :
137137 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
138-
138+
139139 # 更新字段
140140 if description is not None :
141141 server .description = description
@@ -153,15 +153,15 @@ async def update_mcp_server(
153153 server .tags = tags
154154 if icon is not None :
155155 server .icon = icon
156-
156+
157157 server .updated_by = current_user .username
158158 await db .commit ()
159159 await db .refresh (server )
160-
160+
161161 # 同步到缓存(如果启用)
162162 if server .enabled :
163163 sync_mcp_server_to_cache (name , server .to_mcp_config ())
164-
164+
165165 return {"success" : True , "data" : server .to_dict ()}
166166 except HTTPException :
167167 raise
@@ -182,13 +182,13 @@ async def delete_mcp_server(
182182 server = result .scalar_one_or_none ()
183183 if not server :
184184 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
185-
185+
186186 await db .delete (server )
187187 await db .commit ()
188-
188+
189189 # 从缓存中删除
190190 sync_mcp_server_to_cache (name , None )
191-
191+
192192 return {"success" : True , "message" : f"服务器 '{ name } ' 已删除" }
193193 except HTTPException :
194194 raise
@@ -214,10 +214,10 @@ async def test_mcp_server(
214214 server = result .scalar_one_or_none ()
215215 if not server :
216216 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
217-
217+
218218 # 获取配置用于测试
219219 config = server .to_mcp_config ()
220-
220+
221221 try :
222222 tools = await get_mcp_tools (name , {name : config })
223223 return {
@@ -249,19 +249,19 @@ async def toggle_mcp_server(
249249 server = result .scalar_one_or_none ()
250250 if not server :
251251 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
252-
252+
253253 # 切换状态
254254 server .enabled = 0 if server .enabled else 1
255255 server .updated_by = current_user .username
256256 await db .commit ()
257-
257+
258258 # 获取更新后的状态
259259 is_enabled = bool (server .enabled )
260260 server_config = server .to_mcp_config () if is_enabled else None
261-
261+
262262 # 同步到缓存
263263 sync_mcp_server_to_cache (name , server_config )
264-
264+
265265 return {
266266 "success" : True ,
267267 "enabled" : is_enabled ,
@@ -291,19 +291,19 @@ async def get_mcp_server_tools(
291291 server = result .scalar_one_or_none ()
292292 if not server :
293293 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
294-
294+
295295 # 获取配置
296296 config = server .to_mcp_config ()
297297 disabled_tools = server .disabled_tools or []
298-
298+
299299 try :
300300 tools = await get_mcp_tools (name , {name : config })
301301 tool_list = []
302-
302+
303303 for tool in tools :
304304 original_name = tool .name
305305 unique_id = tool .metadata .get ("id" ) if tool .metadata else original_name
306-
306+
307307 tool_info = {
308308 "name" : original_name ,
309309 "id" : unique_id ,
@@ -319,7 +319,7 @@ async def get_mcp_server_tools(
319319 tool_info ["parameters" ] = {}
320320 tool_info ["required" ] = []
321321 tool_list .append (tool_info )
322-
322+
323323 return {
324324 "success" : True ,
325325 "data" : tool_list ,
@@ -352,13 +352,13 @@ async def refresh_mcp_server_tools(
352352 server = result .scalar_one_or_none ()
353353 if not server :
354354 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
355-
355+
356356 # 清除该服务器的工具缓存
357357 clear_mcp_server_tools_cache (name )
358-
358+
359359 # 获取配置
360360 config = server .to_mcp_config ()
361-
361+
362362 try :
363363 tools = await get_mcp_tools (name , {name : config })
364364 return {
@@ -391,9 +391,9 @@ async def toggle_mcp_server_tool(
391391 server = result .scalar_one_or_none ()
392392 if not server :
393393 raise HTTPException (status_code = 404 , detail = f"服务器 '{ name } ' 不存在" )
394-
394+
395395 disabled_tools = list (server .disabled_tools or [])
396-
396+
397397 if tool_name in disabled_tools :
398398 # 当前禁用,改为启用
399399 disabled_tools .remove (tool_name )
@@ -402,11 +402,11 @@ async def toggle_mcp_server_tool(
402402 # 当前启用,改为禁用
403403 disabled_tools .append (tool_name )
404404 enabled = False
405-
405+
406406 server .disabled_tools = disabled_tools
407407 server .updated_by = current_user .username
408408 await db .commit ()
409-
409+
410410 return {
411411 "success" : True ,
412412 "tool_name" : tool_name ,
0 commit comments