list_available_services
Discover which homelab services are ready for installation. Quickly view available options for automated deployment.
Instructions
List all available homelab services that can be installed
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- The core handler function for list_available_services. Instantiates ServiceInstaller, calls get_available_services(), and returns the list of services as JSON content.
async def handle_list_available_services(arguments: dict[str, Any]) -> dict[str, Any]: """Handle list_available_services tool.""" installer = ServiceInstaller() services = installer.get_available_services() result_dict = {"available_services": services, "count": len(services)} return {"content": [{"type": "text", "text": json.dumps(result_dict, indent=2)}]} - Schema definition for list_available_services. Describes it as 'List all available homelab services that can be installed' with no required input parameters (empty object).
SERVICE_TOOLS: dict[str, dict[str, Any]] = { "list_available_services": { "description": "List all available homelab services that can be installed", "inputSchema": {"type": "object", "properties": {}, "required": []}, }, - src/homelab_mcp/tool_handlers/__init__.py:121-121 (registration)Registration mapping the tool name 'list_available_services' to the handler function handle_list_available_services in the TOOL_HANDLERS dictionary.
"list_available_services": handle_list_available_services, - Import of handle_list_available_services from service_handlers module into the tool handlers registry.
from .service_handlers import ( handle_check_ansible_service, handle_check_service_requirements, handle_destroy_terraform_service, handle_destroy_terraform_service_preview, handle_get_service_info, handle_get_service_status, handle_install_service, handle_list_available_services, - src/homelab_mcp/openapi_app.py:35-37 (registration)Listed as a STANDALONE_TOOL (works without external infrastructure) in the OpenAPI REST wrapper, and grouped under 'Services' category in the tools listing at line 174.
STANDALONE_TOOLS: set[str] = { # Service template browsing (reads local YAML files) "list_available_services",