Skip to main content
Glama
errors.py3.43 kB
""" Классы ошибок для MCP компонентов. """ from typing import Any, Dict, Optional class MCPError(Exception): """ Базовый класс для ошибок MCP. Attributes: code: Код ошибки message: Сообщение об ошибке details: Дополнительные детали ошибки """ def __init__( self, code: str, message: str, details: Optional[Dict[str, Any]] = None, ) -> None: """ Инициализирует ошибку MCP. Args: code: Код ошибки message: Сообщение об ошибке details: Дополнительные детали ошибки """ self.code = code self.message = message self.details = details or {} super().__init__(f"{code}: {message}") def to_dict(self) -> Dict[str, Any]: """ Преобразует ошибку в словарь для сериализации. Returns: Dict[str, Any]: Словарь с данными ошибки """ return { "code": self.code, "message": self.message, "details": self.details, } class ToolError(MCPError): """Ошибка, связанная с инструментами MCP.""" def __init__( self, message: str, details: Optional[Dict[str, Any]] = None, ) -> None: """ Инициализирует ошибку инструмента. Args: message: Сообщение об ошибке details: Дополнительные детали ошибки """ super().__init__("tool_error", message, details) class ResourceError(MCPError): """Ошибка, связанная с ресурсами MCP.""" def __init__( self, message: str, details: Optional[Dict[str, Any]] = None, ) -> None: """ Инициализирует ошибку ресурса. Args: message: Сообщение об ошибке details: Дополнительные детали ошибки """ super().__init__("resource_error", message, details) class PromptError(MCPError): """Ошибка, связанная с промптами MCP.""" def __init__( self, message: str, details: Optional[Dict[str, Any]] = None, ) -> None: """ Инициализирует ошибку промпта. Args: message: Сообщение об ошибке details: Дополнительные детали ошибки """ super().__init__("prompt_error", message, details) class SamplingError(MCPError): """Ошибка, связанная с сэмплированием MCP.""" def __init__( self, message: str, details: Optional[Dict[str, Any]] = None, ) -> None: """ Инициализирует ошибку сэмплирования. Args: message: Сообщение об ошибке details: Дополнительные детали ошибки """ super().__init__("sampling_error", message, details)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/eagurin/myaiserv'

If you have feedback or need assistance with the MCP directory API, please join our Discord server