From ec9fab070cc736f6a011530cc0261198440aaddb Mon Sep 17 00:00:00 2001 From: Jeremiah Lowin <153965+jlowin@users.noreply.github.com> Date: Tue, 10 Jun 2025 19:33:08 -0400 Subject: [PATCH] Remove ABC --- src/fastmcp/tools/tool.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/fastmcp/tools/tool.py b/src/fastmcp/tools/tool.py index 6e825dc6d..a66cac6d5 100644 --- a/src/fastmcp/tools/tool.py +++ b/src/fastmcp/tools/tool.py @@ -2,7 +2,6 @@ from __future__ import annotations import inspect import json -from abc import ABC, abstractmethod from collections.abc import Callable from dataclasses import dataclass from typing import TYPE_CHECKING, Any @@ -33,7 +32,7 @@ def default_serializer(data: Any) -> str: return pydantic_core.to_json(data, fallback=str, indent=2).decode() -class Tool(FastMCPComponent, ABC): +class Tool(FastMCPComponent): """Internal tool registration info.""" parameters: dict[str, Any] = Field(description="JSON schema for tool parameters") @@ -76,7 +75,6 @@ class Tool(FastMCPComponent, ABC): enabled=enabled, ) - @abstractmethod async def run( self, arguments: dict[str, Any] ) -> list[TextContent | ImageContent | EmbeddedResource]: