Skip to main content
Glama
xplainable

Xplainable MCP Server

Official
by xplainable
gpt.py4.26 kB
""" Gpt service MCP tools. Auto-generated and maintained by the xplainable-client sync workflow. """ import logging from typing import Optional, List, Dict, Any from ..mcp_instance import mcp logger = logging.getLogger(__name__) # Import shared utilities from ..server import get_client # Gpt Tools # ============================================ @mcp.tool() def gpt_explain_model(model_id: str, version_id: str, language: str = 'en', detail_level: str = 'medium'): """ Get a natural language explanation of the model. Args: model_id: ID of the model version_id: ID of the model version language: Language for the explanation (e.g., "en", "es", "fr") detail_level: Level of detail ("low", "medium", "high") Returns: Natural language explanation of the model Raises: XplainableAPIError: If explanation generation fails Category: analysis """ try: client = get_client() result = client.gpt.explain_model(model_id, version_id, language, detail_level) logger.info(f"Executed gpt.explain_model") # Handle different return types if hasattr(result, 'model_dump'): return result.model_dump() elif isinstance(result, list) and result and hasattr(result[0], 'model_dump'): return [item.model_dump() for item in result] else: return result except Exception as e: logger.error(f"Error in gpt_explain_model: {e}") raise @mcp.tool() def gpt_generate_documentation(model_id: str, version_id: str, include_technical: bool = True, include_business: bool = True, format: str = 'markdown'): """ Generate comprehensive documentation for a model. Args: model_id: ID of the model version_id: ID of the model version include_technical: Include technical details include_business: Include business context format: Output format ("markdown", "html", "pdf") Returns: Generated documentation Raises: XplainableAPIError: If documentation generation fails Category: analysis """ try: client = get_client() result = client.gpt.generate_documentation(model_id, version_id, include_technical, include_business, format) logger.info(f"Executed gpt.generate_documentation") # Handle different return types if hasattr(result, 'model_dump'): return result.model_dump() elif isinstance(result, list) and result and hasattr(result[0], 'model_dump'): return [item.model_dump() for item in result] else: return result except Exception as e: logger.error(f"Error in gpt_generate_documentation: {e}") raise @mcp.tool() def gpt_generate_report(model_id: str, version_id: str, target_description: str = 'text', project_objective: str = 'text', max_features: int = 15, temperature: float = 0.7): """ Generate a GPT-powered report for a model. Args: model_id: ID of the model version_id: ID of the model version target_description: Description of the target variable project_objective: Objective of the project/model max_features: Maximum number of features to include in report temperature: GPT temperature parameter (0-2, higher = more creative) Returns: Generated report with insights Raises: XplainableAPIError: If report generation fails Category: analysis """ try: client = get_client() result = client.gpt.generate_report(model_id, version_id, target_description, project_objective, max_features, temperature) logger.info(f"Executed gpt.generate_report") # Handle different return types if hasattr(result, 'model_dump'): return result.model_dump() elif isinstance(result, list) and result and hasattr(result[0], 'model_dump'): return [item.model_dump() for item in result] else: return result except Exception as e: logger.error(f"Error in gpt_generate_report: {e}") raise

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/xplainable/xplainable-mcp-server'

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