from dataclasses import dataclass, field from typing import Annotated from src.agents.common.context import BaseContext from src.agents.common.mcp import MCP_SERVERS from src.agents.common.tools import gen_tool_info from .tools import get_tools @dataclass(kw_only=True) class Context(BaseContext): tools: Annotated[list[dict], {"__template_metadata__": {"kind": "tools"}}] = field( default_factory=list, metadata={ "name": "工具", "options": gen_tool_info(get_tools()), # 这里的选择是所有的工具 "description": "工具列表", }, ) mcps: list[str] = field( default_factory=list, metadata={"name": "MCP服务器", "options": list(MCP_SERVERS.keys()), "description": "MCP服务器列表"}, )