aidputils.agents.tools.base_tool

class aidputils.agents.tools.base_tool.BaseTool[source]

Bases: ABC

tool_class_registry = {'HttpTool': <class 'aidputils.agents.tools.http_tool.HttpTool'>, 'MCPTool': <class 'aidputils.agents.tools.mcp_tool.MCPTool'>, 'PromptTool': <class 'aidputils.agents.tools.prompt.PromptTool'>, 'RAGTool': <class 'aidputils.agents.tools.rag.RAGTool'>, 'SQLTool': <class 'aidputils.agents.tools.sql.SQLTool'>, 'WebSearchTool': <class 'aidputils.agents.tools.experimental.web_search.WebSearchTool'>}
tool_function_registry = {}
final classmethod register(subclass)[source]

Decorator for automatic tool registration.

Usage:

@BaseTool.register class HttpTool(BaseTool):

This will automatically add HttpTool to the global tool registry, allowing it to be discovered and invoked without explicit manual registration.

Implementors should use this decorator on any new tool class they want to make available for agent usage.

classmethod logger(tool_name=None)[source]

Returns a logger for the given tool name (or class).

Parameters:

tool_name (str) – Optional. If provided, used as logger name and for caching. If not provided, uses the class name.

final classmethod invoke(conf, runtime_params, **context_vars) dict[source]
classmethod make_security_token_signer(oci_config)[source]
final classmethod register_tool_function(conf)[source]

Reference-only: For future MCP compliance, not for immediate agent or tool use.

final classmethod list_tools()[source]

Reference-only: Returns all MCP tool schemas in the local registry.