fix(tool): The MCP tool checks for duplicate additions from the main screen and performs a test before adding.

This commit is contained in:
Timebomb2018
2026-03-11 17:19:07 +08:00
parent 7240dfe793
commit a3e6f67ff7
2 changed files with 81 additions and 5 deletions

View File

@@ -14,6 +14,7 @@ from app.models import User
from app.models.tool_model import ToolType, ToolStatus, AuthType
from app.services.tool_service import ToolService
from app.schemas.response_schema import ApiResponse
from app.core.exceptions import BusinessException
router = APIRouter(prefix="/tools", tags=["Tool System"])
@@ -103,7 +104,7 @@ async def create_tool(
val = getattr(request, key, None)
if val is not None:
request.config[key] = val
tool_id = service.create_tool(
tool_id = await service.create_tool(
name=request.name,
tool_type=request.tool_type,
tenant_id=current_user.tenant_id,
@@ -113,6 +114,8 @@ async def create_tool(
tags=request.tags
)
return success(data={"tool_id": tool_id}, msg="工具创建成功")
except BusinessException as e:
raise HTTPException(status_code=400, detail=e.message)
except ValueError as e:
raise HTTPException(status_code=400, detail=str(e))
except Exception as e: