UNPKG

@sanlim/home-assistant-switch-mcp-server

Version:
34 lines (33 loc) 1.02 kB
export class HomeAssistantApiClientService { baseUrl; token; constructor(config) { this.baseUrl = config.baseUrl; this.token = config.token; } async makeRequest(endpoint, method = 'GET', data) { const url = `${this.baseUrl}/api/${endpoint}`; const headers = { 'Authorization': `Bearer ${this.token}`, 'Content-Type': 'application/json', }; const requestOptions = { method, headers, }; if (data && method === 'POST') { requestOptions.body = JSON.stringify(data); } try { const response = await fetch(url, requestOptions); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } return (await response.json()); } catch (error) { process.stderr.write(`Error making Home Assistant request: ${error}\n`); return null; } } }