From 5f82916fbb23d0a125d6d4e5eae8e3e88100b396 Mon Sep 17 00:00:00 2001 From: Ishaan Jaffer Date: Sat, 21 Mar 2026 18:55:52 -0700 Subject: [PATCH] feat(mcp): add MCPToolset Python types --- litellm/types/mcp_server/mcp_toolset.py | 34 +++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 litellm/types/mcp_server/mcp_toolset.py diff --git a/litellm/types/mcp_server/mcp_toolset.py b/litellm/types/mcp_server/mcp_toolset.py new file mode 100644 index 00000000000..7f78a22bfe2 --- /dev/null +++ b/litellm/types/mcp_server/mcp_toolset.py @@ -0,0 +1,34 @@ +from datetime import datetime +from typing import List, Optional + +from pydantic import BaseModel +from typing_extensions import TypedDict + + +class MCPToolsetTool(TypedDict): + server_id: str + tool_name: str + + +class MCPToolset(BaseModel): + toolset_id: str + toolset_name: str + description: Optional[str] = None + tools: List[MCPToolsetTool] = [] + created_at: Optional[datetime] = None + created_by: Optional[str] = None + updated_at: Optional[datetime] = None + updated_by: Optional[str] = None + + +class NewMCPToolsetRequest(BaseModel): + toolset_name: str + description: Optional[str] = None + tools: List[MCPToolsetTool] = [] + + +class UpdateMCPToolsetRequest(BaseModel): + toolset_id: str + toolset_name: Optional[str] = None + description: Optional[str] = None + tools: Optional[List[MCPToolsetTool]] = None