Co-authored-by: Dt8333 <25431943+Dt8333@users.noreply.github.com> Co-authored-by: Soulter <905617992@qq.com>
18 lines
438 B
Python
18 lines
438 B
Python
from collections.abc import AsyncGenerator
|
|
from typing import Any, Generic
|
|
|
|
import mcp
|
|
|
|
from .run_context import ContextWrapper, TContext
|
|
from .tool import FunctionTool
|
|
|
|
|
|
class BaseFunctionToolExecutor(Generic[TContext]):
|
|
@classmethod
|
|
async def execute(
|
|
cls,
|
|
tool: FunctionTool,
|
|
run_context: ContextWrapper[TContext],
|
|
**tool_args,
|
|
) -> AsyncGenerator[Any | mcp.types.CallToolResult, None]: ...
|