Skip to main content
Glama
cobanov

teslamate-mcp

get_average_efficiency_by_temperature

Analyze how temperature impacts vehicle efficiency by calculating average efficiency per temperature range for each car in TeslaMate.

Instructions

Get the average efficiency by temperature for each car. Helps understand how temperature affects vehicle efficiency.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Tool schema definition specifying the name, description, and associated SQL query file used for execution.
    ToolDefinition( name="get_average_efficiency_by_temperature", description="Get the average efficiency by temperature for each car. Helps understand how temperature affects vehicle efficiency.", sql_file="average_efficiency_by_temperature.sql", ),
  • main.py:21-29 (handler)
    Factory function that creates the synchronous handler for each tool by executing the corresponding SQL query via the database manager.
    # Register all predefined query tools dynamically def create_tool_handler(sql_file: str): """Factory function to create tool handlers""" def handler() -> List[Dict[str, Any]]: return db_manager.execute_query_sync(sql_file) return handler
  • main.py:32-38 (registration)
    Dynamically creates and registers the tool handler with the FastMCP server using the mcp.tool() decorator.
    for tool_def in TOOL_DEFINITIONS: tool_func = create_tool_handler(tool_def.sql_file) tool_func.__doc__ = tool_def.description tool_func.__name__ = tool_def.name # Register the tool with the MCP server mcp.tool()(tool_func)
  • Asynchronous handler that retrieves the tool definition by name and executes its SQL query using the database pool.
    async def execute_predefined_tool(tool_name: str) -> List[Dict[str, Any]]: """Execute a predefined tool by name""" if not app_context: raise RuntimeError("Application context not initialized") tool = get_tool_by_name(tool_name) return await app_context.db_manager.execute_query_async( tool.sql_file, app_context.db_pool )
  • main_remote.py:179-186 (registration)
    Registers the tool in the list_tools() method by appending a Tool object with name, description, and empty input schema to the available tools list.
    for tool_def in TOOL_DEFINITIONS: tools.append( types.Tool( name=tool_def.name, description=tool_def.description, inputSchema={"type": "object", "properties": {}}, ) )

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/cobanov/teslamate-mcp'

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