openai-tool2mcp

from abc import ABC, abstractmethod from ..models.mcp import MCPRequest, MCPResponse class ToolAdapter(ABC): """Base class for tool adapters""" @property @abstractmethod def tool_id(self) -> str: """Get the MCP tool ID""" pass @property @abstractmethod def openai_tool_type(self) -> str: """Get the OpenAI tool type""" pass @property def description(self) -> str: """Get the tool description""" return "Tool adapter for OpenAI built-in tool" @abstractmethod async def translate_request(self, request: MCPRequest) -> dict: """ Translate MCP request to OpenAI parameters Args: request: The MCP request to translate Returns: Dictionary of OpenAI parameters """ pass @abstractmethod async def translate_response(self, response: dict) -> MCPResponse: """ Translate OpenAI response to MCP response Args: response: The OpenAI response to translate Returns: MCP response object """ pass