@coffeerunhobby/mcp-ha-connect 2.4.5 → 2.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,7 +5,7 @@
5
5
  * applied, refused if the controller changed meanwhile or if online devices would be
6
6
  * cut off without allowLockout.
7
7
  *
8
- * 2.4.5: networks and Wi-Fi. Rules arrive in 2.4.6, switch ports and mDNS in 2.4.7.
8
+ * 2.4.5: networks and Wi-Fi. 2.4.7: rules (and listing groups). Switch ports and mDNS in 2.4.8.
9
9
  */
10
10
  import { z } from 'zod';
11
11
  import { Permission, toToolResult, wrapToolHandler } from '../common.js';
@@ -71,6 +71,44 @@ export const updateWifiSchema = z.object({
71
71
  allowLockout,
72
72
  });
73
73
  export const deleteWifiSchema = z.object({ wifi: ref('Wi-Fi network'), dryRun, allowLockout });
74
+ const selector = z.union([
75
+ z.object({ network: ref('Network') }).strict(),
76
+ z.object({ group: ref('IP group') }).strict(),
77
+ z.object({ addresses: z.array(z.string().min(1)).min(1).max(64).describe('IPv4 addresses or CIDRs, e.g. ["192.168.0.19"]') }).strict(),
78
+ z.object({ internet: z.literal(true) }).strict(),
79
+ z.object({ gateway: z.literal(true).describe('The router itself') }).strict(),
80
+ z.object({ device: z.string().min(1).describe('Device MAC') }).strict(),
81
+ z.object({ wifi: ref('Wi-Fi network') }).strict(),
82
+ ]);
83
+ const selectors = (side) => z.array(selector).min(1).describe(`${side}: one kind per rule, e.g. [{ network: "IoT" }] or [{ addresses: ["192.168.0.19"] }] or [{ internet: true }]`);
84
+ const protocol = z
85
+ .union([z.enum(['any', 'tcp', 'udp', 'icmp']), z.object({ tcpUdpPorts: z.string().min(1).describe('Single ports, e.g. "1883, 8123"; needs addresses as the destination') }).strict()])
86
+ .describe('Default any');
87
+ const position = z.number().int().min(1).describe('1 = checked first; rules are checked in order and the first match decides');
88
+ export const createRuleSchema = z.object({
89
+ name: z.string().min(1).max(496),
90
+ action: z.enum(['allow', 'block']),
91
+ from: selectors('Where traffic starts'),
92
+ to: selectors('Where it goes'),
93
+ protocol: protocol.optional(),
94
+ enabled: z.boolean().optional().describe('Default true'),
95
+ position: position.optional().describe('Default: last'),
96
+ dryRun,
97
+ });
98
+ export const updateRuleSchema = z.object({
99
+ rule: ref('Rule'),
100
+ name: z.string().min(1).max(496).optional(),
101
+ action: z.enum(['allow', 'block']).optional(),
102
+ from: selectors('Where traffic starts').optional(),
103
+ to: selectors('Where it goes').optional(),
104
+ protocol: protocol.optional(),
105
+ enabled: z.boolean().optional(),
106
+ position: position.optional(),
107
+ dryRun,
108
+ });
109
+ export const deleteRuleSchema = z.object({ rule: ref('Rule'), dryRun });
110
+ export const moveRuleSchema = z.object({ rule: ref('Rule'), position, dryRun });
111
+ export const listGroupsSchema = z.object({ kind: z.enum(['address', 'mac']).optional() });
74
112
  const NO_PASSWORD = ' Passwords are never taken or shown: a new or reset Wi-Fi network gets a random temporary password, and the owner sets the real one in the controller web UI.';
75
113
  const CONFIRM = ' Confirm with the user before applying (use dryRun first).';
76
114
  /** Plan, then apply unless dryRun. */
@@ -79,7 +117,14 @@ async function run(controller, change, options) {
79
117
  if (options.dryRun)
80
118
  return { dryRun: true, ...summary(plan) };
81
119
  const result = await controller.apply(plan, { allowLockout: options.allowLockout });
82
- return { applied: true, controller: controller.id, steps: plan.steps, effects: plan.effects, ...(result.object ? { result: result.object } : {}) };
120
+ return {
121
+ applied: true,
122
+ controller: controller.id,
123
+ steps: plan.steps,
124
+ effects: plan.effects,
125
+ ...(result.object ? { result: result.object } : {}),
126
+ ...(result.warnings?.length ? { warnings: result.warnings } : {}),
127
+ };
83
128
  }
84
129
  function summary(plan) {
85
130
  return {
@@ -180,7 +225,69 @@ export function registerNetTools(server, controller) {
180
225
  passphrase: a.newTemporaryPassword ? { kind: 'temporary' } : { kind: 'unchanged' },
181
226
  }, a)), Permission.CONFIGURE));
182
227
  server.registerTool('net_deleteWifi', { description: 'Delete a Wi-Fi network; its connected devices are disconnected (needs allowLockout then).' + CONFIRM, inputSchema: deleteWifiSchema }, wrapToolHandler('net_deleteWifi', async (a) => toToolResult(await run(controller, { op: 'delete', kind: 'wifi', ref: { name: a.wifi } }, a)), Permission.CONFIGURE));
183
- return 9;
228
+ registerRuleTools(server, controller);
229
+ return 15;
230
+ }
231
+ const RULES = ' Rules are stateful: a block rule stops new connections, while replies to connections started from the other side still pass (so "block IoT → Home" lets Home still reach IoT).';
232
+ function registerRuleTools(server, controller) {
233
+ server.registerTool('net_listRules', { description: 'List the traffic rules in evaluation order (first match decides). Rules marked foreign are shown read-only.', inputSchema: z.object({}) }, wrapToolHandler('net_listRules', async () => toToolResult(await controller.listRules()), Permission.QUERY));
234
+ server.registerTool('net_listGroups', { description: 'List address groups (usable in rules) and MAC groups (Wi-Fi allow/deny lists).', inputSchema: listGroupsSchema }, wrapToolHandler('net_listGroups', async (a) => toToolResult(await controller.listGroups(a.kind)), Permission.QUERY));
235
+ server.registerTool('net_createRule', {
236
+ description: 'Create a traffic rule: allow or block traffic from networks, a group or addresses to networks, a group, addresses (optionally on ports) or the internet.' +
237
+ RULES +
238
+ ' Addresses given here become a group the rule owns (removed with it). Refused with the reason: the router itself as a destination, one device by MAC, Wi-Fi as source, schedules, and any change that would cut the controller off the internet.' +
239
+ CONFIRM,
240
+ inputSchema: createRuleSchema,
241
+ }, wrapToolHandler('net_createRule', async (a) => toToolResult(await run(controller, {
242
+ op: 'create',
243
+ kind: 'rule',
244
+ value: {
245
+ name: a.name,
246
+ action: a.action,
247
+ from: toSelectors(a.from),
248
+ to: toSelectors(a.to),
249
+ protocol: (a.protocol ?? 'any'),
250
+ replies: 'allow',
251
+ schedule: { kind: 'always' },
252
+ enabled: a.enabled ?? true,
253
+ ...(a.position !== undefined ? { position: a.position } : {}),
254
+ },
255
+ }, a)), Permission.CONFIGURE));
256
+ server.registerTool('net_updateRule', { description: 'Change a rule: name, action, source, destination, protocol/ports, on/off or position.' + RULES + CONFIRM, inputSchema: updateRuleSchema }, wrapToolHandler('net_updateRule', async (a) => toToolResult(await run(controller, {
257
+ op: 'update',
258
+ kind: 'rule',
259
+ value: {
260
+ ref: { name: a.rule },
261
+ set: {
262
+ ...(a.name !== undefined ? { name: a.name } : {}),
263
+ ...(a.action !== undefined ? { action: a.action } : {}),
264
+ ...(a.from !== undefined ? { from: toSelectors(a.from) } : {}),
265
+ ...(a.to !== undefined ? { to: toSelectors(a.to) } : {}),
266
+ ...(a.protocol !== undefined ? { protocol: a.protocol } : {}),
267
+ ...(a.enabled !== undefined ? { enabled: a.enabled } : {}),
268
+ ...(a.position !== undefined ? { position: a.position } : {}),
269
+ },
270
+ },
271
+ }, a)), Permission.CONFIGURE));
272
+ server.registerTool('net_deleteRule', { description: 'Delete a rule (and the address group it owns).' + CONFIRM, inputSchema: deleteRuleSchema }, wrapToolHandler('net_deleteRule', async (a) => toToolResult(await run(controller, { op: 'delete', kind: 'rule', ref: { name: a.rule } }, a)), Permission.CONFIGURE));
273
+ server.registerTool('net_moveRule', { description: 'Move a rule to another position (1 = checked first; the first matching rule decides).' + CONFIRM, inputSchema: moveRuleSchema }, wrapToolHandler('net_moveRule', async (a) => toToolResult(await run(controller, { op: 'move', kind: 'rule', ref: { name: a.rule }, position: a.position }, a)), Permission.CONFIGURE));
274
+ }
275
+ function toSelectors(list) {
276
+ return list.map((s) => {
277
+ if ('network' in s)
278
+ return { network: { name: s.network } };
279
+ if ('group' in s)
280
+ return { group: { name: s.group } };
281
+ if ('addresses' in s)
282
+ return { addresses: s.addresses };
283
+ if ('internet' in s)
284
+ return { internet: true };
285
+ if ('gateway' in s)
286
+ return { gateway: true };
287
+ if ('device' in s)
288
+ return { device: s.device };
289
+ return { wifi: { name: s.wifi } };
290
+ });
184
291
  }
185
292
  function toDhcp(d) {
186
293
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/net/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/net/index.ts"],"names":[],"mappings":"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"}
@@ -134,6 +134,7 @@ export function registerOmadaAccessControlTools(server, client, mode = 'eager')
134
134
  server.registerTool('omada_createGatewayAcl', {
135
135
  description: 'Create a gateway (router) ACL rule for LAN to internet traffic: allow or deny a source (IP group, LAN network or SSID) ' +
136
136
  'to a destination (default everything), optionally only during a time range. Covers wired and wireless. ' +
137
+ 'It cannot block traffic between your own networks (a LAN network, or LAN addresses, as the destination is refused). ' +
137
138
  'Rules are evaluated in order (see omada_moveGatewayAcl).' +
138
139
  CONFIRM,
139
140
  inputSchema: createGatewayAclSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"accessControl.js","sourceRoot":"","sources":["../../../src/tools/omada/accessControl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accessControl.js","sourceRoot":"","sources":["../../../src/tools/omada/accessControl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Connects to the upstreams (Home Assistant, Omada, the local AI) at startup.
3
+ *
4
+ * An upstream that doesn't answer at startup is not fatal: its client is kept, its
5
+ * tools stay registered (calls fail cleanly until it answers) and a background probe
6
+ * retries with a growing pause, logging when it answers. Before 2.4.6 an unreachable
7
+ * Home Assistant made the server exit, and the container crash-looped (100 restarts
8
+ * during the 2026-10-17 NAS network outage) instead of serving /health and Omada.
9
+ *
10
+ * What stays fatal or disabling is configuration that can never work: a missing
11
+ * HA_URL/HA_TOKEN or Omada setting, or an OMADA_SITE_ID the controller doesn't have.
12
+ */
13
+ import type { EnvironmentConfig } from './config.js';
14
+ import { HaClient } from './haClient/index.js';
15
+ import { LocalAIClient } from './localAI/index.js';
16
+ import { OmadaClient } from './omadaClient/index.js';
17
+ export interface BackoffOptions {
18
+ /** Pause before the first retry. */
19
+ initialMs: number;
20
+ /** The pause doubles after each failed try, up to this. */
21
+ maxMs: number;
22
+ }
23
+ export declare const DEFAULT_BACKOFF: BackoffOptions;
24
+ /**
25
+ * Runs `attempt` until it resolves, pausing initialMs, then twice that, and so on up
26
+ * to maxMs between tries. Failures are logged at debug level only (the caller logs
27
+ * the first one); the timer doesn't keep the process alive.
28
+ */
29
+ export declare function retryInBackground(name: string, attempt: () => Promise<void>, backoff?: BackoffOptions): {
30
+ stop(): void;
31
+ };
32
+ export interface Upstreams {
33
+ haClient?: HaClient;
34
+ omadaClient?: OmadaClient;
35
+ aiClient?: LocalAIClient;
36
+ /** Stops the background probes (tests; the process otherwise just exits). */
37
+ stop(): void;
38
+ }
39
+ /** Client constructors, replaceable in tests. */
40
+ export interface UpstreamFactories {
41
+ ha(config: EnvironmentConfig): HaClient;
42
+ omada(config: EnvironmentConfig): OmadaClient;
43
+ ai(config: EnvironmentConfig): LocalAIClient;
44
+ }
45
+ /** What an Omada call says once a background check found OMADA_SITE_ID missing (details in the log). */
46
+ export declare const OMADA_SITE_DISABLED_MESSAGE = "Omada tools are disabled: OMADA_SITE_ID is not a site on the controller. The server log lists the valid sites.";
47
+ export declare function connectUpstreams(config: EnvironmentConfig, factories?: UpstreamFactories, backoff?: BackoffOptions): Promise<Upstreams>;
@@ -0,0 +1,194 @@
1
+ /**
2
+ * Connects to the upstreams (Home Assistant, Omada, the local AI) at startup.
3
+ *
4
+ * An upstream that doesn't answer at startup is not fatal: its client is kept, its
5
+ * tools stay registered (calls fail cleanly until it answers) and a background probe
6
+ * retries with a growing pause, logging when it answers. Before 2.4.6 an unreachable
7
+ * Home Assistant made the server exit, and the container crash-looped (100 restarts
8
+ * during the 2026-10-17 NAS network outage) instead of serving /health and Omada.
9
+ *
10
+ * What stays fatal or disabling is configuration that can never work: a missing
11
+ * HA_URL/HA_TOKEN or Omada setting, or an OMADA_SITE_ID the controller doesn't have.
12
+ */
13
+ import { HaClient } from './haClient/index.js';
14
+ import { LocalAIClient } from './localAI/index.js';
15
+ import { OmadaClient } from './omadaClient/index.js';
16
+ import { checkConfiguredSite } from './omadaClient/site.js';
17
+ import { logger } from './utils/logger.js';
18
+ export const DEFAULT_BACKOFF = { initialMs: 5_000, maxMs: 60_000 };
19
+ /**
20
+ * Runs `attempt` until it resolves, pausing initialMs, then twice that, and so on up
21
+ * to maxMs between tries. Failures are logged at debug level only (the caller logs
22
+ * the first one); the timer doesn't keep the process alive.
23
+ */
24
+ export function retryInBackground(name, attempt, backoff = DEFAULT_BACKOFF) {
25
+ let delay = backoff.initialMs;
26
+ let timer;
27
+ let stopped = false;
28
+ const schedule = () => {
29
+ timer = setTimeout(() => void run(), delay);
30
+ timer.unref?.();
31
+ };
32
+ const run = async () => {
33
+ if (stopped)
34
+ return;
35
+ try {
36
+ await attempt();
37
+ }
38
+ catch (error) {
39
+ if (stopped)
40
+ return;
41
+ logger.debug(`${name} still not reachable; next try in ${Math.round(Math.min(delay * 2, backoff.maxMs) / 1000)}s`, {
42
+ error: errorMessage(error),
43
+ });
44
+ delay = Math.min(delay * 2, backoff.maxMs);
45
+ schedule();
46
+ }
47
+ };
48
+ schedule();
49
+ return {
50
+ stop() {
51
+ stopped = true;
52
+ if (timer)
53
+ clearTimeout(timer);
54
+ },
55
+ };
56
+ }
57
+ const defaultFactories = {
58
+ ha: (config) => new HaClient({
59
+ baseUrl: config.baseUrl,
60
+ token: config.token,
61
+ timeout: config.timeout,
62
+ strictSsl: config.strictSsl,
63
+ }),
64
+ omada: (config) => new OmadaClient({
65
+ baseUrl: config.omadaBaseUrl,
66
+ clientId: config.omadaClientId,
67
+ clientSecret: config.omadaClientSecret,
68
+ omadacId: config.omadacId,
69
+ siteId: config.siteId,
70
+ strictSsl: config.omadaStrictSsl,
71
+ requestTimeout: config.requestTimeout,
72
+ }),
73
+ ai: (config) => new LocalAIClient(config),
74
+ };
75
+ /** What an Omada call says once a background check found OMADA_SITE_ID missing (details in the log). */
76
+ export const OMADA_SITE_DISABLED_MESSAGE = 'Omada tools are disabled: OMADA_SITE_ID is not a site on the controller. The server log lists the valid sites.';
77
+ export async function connectUpstreams(config, factories = defaultFactories, backoff = DEFAULT_BACKOFF) {
78
+ const probes = [];
79
+ const upstreams = {
80
+ stop: () => probes.forEach((p) => p.stop()),
81
+ };
82
+ // Home Assistant
83
+ if (config.haPluginEnabled) {
84
+ if (config.baseUrl && config.token) {
85
+ const haClient = factories.ha(config);
86
+ upstreams.haClient = haClient;
87
+ const check = async () => {
88
+ const apiCheck = await haClient.checkApi();
89
+ logger.info('Connected to Home Assistant', { message: apiCheck.message });
90
+ };
91
+ try {
92
+ await check();
93
+ }
94
+ catch (error) {
95
+ logger.warn('Home Assistant not reachable; starting without it and retrying in the background', {
96
+ error: errorMessage(error),
97
+ });
98
+ probes.push(retryInBackground('Home Assistant', check, backoff));
99
+ }
100
+ }
101
+ else {
102
+ logger.warn('HA plugin enabled but HA_URL or HA_TOKEN not set');
103
+ }
104
+ }
105
+ else {
106
+ logger.info('Home Assistant plugin disabled');
107
+ }
108
+ // Omada
109
+ if (config.omadaPluginEnabled) {
110
+ if (config.omadaBaseUrl && config.omadaClientId && config.omadaClientSecret && config.omadacId) {
111
+ let omadaClient;
112
+ try {
113
+ omadaClient = factories.omada(config);
114
+ const client = omadaClient;
115
+ // Omada is the source of truth: a configured OMADA_SITE_ID that isn't on the
116
+ // controller is a deployment bug (drifted site id), not a transient outage.
117
+ const checkSite = async () => {
118
+ const sites = await client.listSites();
119
+ const siteError = checkConfiguredSite(config.siteId, sites);
120
+ if (!siteError)
121
+ logger.info('Connected to Omada controller', { siteCount: sites.length });
122
+ return siteError;
123
+ };
124
+ try {
125
+ const siteError = await checkSite();
126
+ if (siteError) {
127
+ // Known at startup: fail the plugin loudly (no Omada tools); HA and AI keep working.
128
+ logger.error(`Omada plugin disabled - invalid OMADA_SITE_ID. ${siteError}`);
129
+ omadaClient = undefined;
130
+ }
131
+ }
132
+ catch (error) {
133
+ logger.warn('Omada controller not reachable; Omada tools stay registered and work once it answers. Retrying in the background', {
134
+ error: errorMessage(error),
135
+ });
136
+ probes.push(retryInBackground('Omada controller', async () => {
137
+ const siteError = await checkSite();
138
+ if (siteError) {
139
+ // Found later: the tools are already registered, so every call now refuses.
140
+ logger.error(`Omada plugin disabled - invalid OMADA_SITE_ID. ${siteError}`);
141
+ client.disable(OMADA_SITE_DISABLED_MESSAGE);
142
+ }
143
+ }, backoff));
144
+ }
145
+ }
146
+ catch (error) {
147
+ // The client itself could not be built (bad URL and the like): configuration, not an outage.
148
+ logger.warn('Omada client could not be created - Omada tools will be disabled', { error: errorMessage(error) });
149
+ omadaClient = undefined;
150
+ }
151
+ upstreams.omadaClient = omadaClient;
152
+ }
153
+ else {
154
+ logger.warn('Omada plugin enabled but required config not set (OMADA_BASE_URL, OMADA_CLIENT_ID, OMADA_CLIENT_SECRET, OMADA_OMADAC_ID)');
155
+ }
156
+ }
157
+ else {
158
+ logger.info('Omada plugin disabled');
159
+ }
160
+ // Local AI
161
+ if (config.aiPluginEnabled) {
162
+ if (config.aiProvider === 'none') {
163
+ logger.info('AI plugin enabled but AI_PROVIDER=none');
164
+ }
165
+ else {
166
+ const aiClient = factories.ai(config);
167
+ upstreams.aiClient = aiClient;
168
+ const check = async () => {
169
+ if (!(await aiClient.checkHealth()))
170
+ throw new Error('health check failed');
171
+ logger.info('Connected to AI provider', { provider: aiClient.getProviderName(), url: config.aiUrl, model: config.aiModel });
172
+ };
173
+ try {
174
+ await check();
175
+ }
176
+ catch (error) {
177
+ logger.warn('AI provider not reachable; the AI tool stays registered and works once it answers. Retrying in the background', {
178
+ provider: config.aiProvider,
179
+ url: config.aiUrl,
180
+ error: errorMessage(error),
181
+ });
182
+ probes.push(retryInBackground('AI provider', check, backoff));
183
+ }
184
+ }
185
+ }
186
+ else {
187
+ logger.info('AI plugin disabled');
188
+ }
189
+ return upstreams;
190
+ }
191
+ function errorMessage(error) {
192
+ return error instanceof Error ? error.message : String(error);
193
+ }
194
+ //# sourceMappingURL=upstreams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstreams.js","sourceRoot":"","sources":["../src/upstreams.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAS3C,MAAM,CAAC,MAAM,eAAe,GAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAEnF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,OAA4B,EAC5B,UAA0B,eAAe;IAEzC,IAAI,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC;IAC9B,IAAI,KAAgD,CAAC;IACrD,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5C,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;QACrB,IAAI,OAAO;YAAE,OAAO;QACpB,IAAI,CAAC;YACH,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO;gBAAE,OAAO;YACpB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,qCAAqC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE;gBACjH,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;aAC3B,CAAC,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3C,QAAQ,EAAE,CAAC;QACb,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,EAAE,CAAC;IACX,OAAO;QACL,IAAI;YACF,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,KAAK;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC;AAiBD,MAAM,gBAAgB,GAAsB;IAC1C,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CACb,IAAI,QAAQ,CAAC;QACX,OAAO,EAAE,MAAM,CAAC,OAAQ;QACxB,KAAK,EAAE,MAAM,CAAC,KAAM;QACpB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;IACJ,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAChB,IAAI,WAAW,CAAC;QACd,OAAO,EAAE,MAAM,CAAC,YAAa;QAC7B,QAAQ,EAAE,MAAM,CAAC,aAAc;QAC/B,YAAY,EAAE,MAAM,CAAC,iBAAkB;QACvC,QAAQ,EAAE,MAAM,CAAC,QAAS;QAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,cAAc;QAChC,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC;IACJ,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC;CAC1C,CAAC;AAEF,wGAAwG;AACxG,MAAM,CAAC,MAAM,2BAA2B,GACtC,gHAAgH,CAAC;AAEnH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAyB,EACzB,YAA+B,gBAAgB,EAC/C,UAA0B,eAAe;IAEzC,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;KAC5C,CAAC;IAEF,iBAAiB;IACjB,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACtC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC9B,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;gBACvB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5E,CAAC,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,KAAK,EAAE,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,kFAAkF,EAAE;oBAC9F,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;iBAC3B,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED,QAAQ;IACR,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC/F,IAAI,WAAoC,CAAC;YACzC,IAAI,CAAC;gBACH,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,MAAM,GAAG,WAAW,CAAC;gBAC3B,6EAA6E;gBAC7E,4EAA4E;gBAC5E,MAAM,SAAS,GAAG,KAAK,IAA4B,EAAE;oBACnD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;oBACvC,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBAC5D,IAAI,CAAC,SAAS;wBAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC1F,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC;gBACF,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,SAAS,EAAE,CAAC;oBACpC,IAAI,SAAS,EAAE,CAAC;wBACd,qFAAqF;wBACrF,MAAM,CAAC,KAAK,CAAC,kDAAkD,SAAS,EAAE,CAAC,CAAC;wBAC5E,WAAW,GAAG,SAAS,CAAC;oBAC1B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,kHAAkH,EAAE;wBAC9H,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;qBAC3B,CAAC,CAAC;oBACH,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,kBAAkB,EAClB,KAAK,IAAI,EAAE;wBACT,MAAM,SAAS,GAAG,MAAM,SAAS,EAAE,CAAC;wBACpC,IAAI,SAAS,EAAE,CAAC;4BACd,4EAA4E;4BAC5E,MAAM,CAAC,KAAK,CAAC,kDAAkD,SAAS,EAAE,CAAC,CAAC;4BAC5E,MAAM,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;wBAC9C,CAAC;oBACH,CAAC,EACD,OAAO,CACR,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,6FAA6F;gBAC7F,MAAM,CAAC,IAAI,CAAC,kEAAkE,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChH,WAAW,GAAG,SAAS,CAAC;YAC1B,CAAC;YACD,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,0HAA0H,CAAC,CAAC;QAC1I,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC;IAED,WAAW;IACX,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACtC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC9B,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;gBACvB,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBAC5E,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9H,CAAC,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,KAAK,EAAE,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,+GAA+G,EAAE;oBAC3H,QAAQ,EAAE,MAAM,CAAC,UAAU;oBAC3B,GAAG,EAAE,MAAM,CAAC,KAAK;oBACjB,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;iBAC3B,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
package/dist/version.d.ts CHANGED
@@ -2,4 +2,4 @@
2
2
  * Package version - hardcoded at build time for reliability
3
3
  * Keep in sync with package.json version
4
4
  */
5
- export declare const VERSION = "2.4.5";
5
+ export declare const VERSION = "2.4.7";
package/dist/version.js CHANGED
@@ -2,5 +2,5 @@
2
2
  * Package version - hardcoded at build time for reliability
3
3
  * Keep in sync with package.json version
4
4
  */
5
- export const VERSION = '2.4.5';
5
+ export const VERSION = '2.4.7';
6
6
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coffeerunhobby/mcp-ha-connect",
3
- "version": "2.4.5",
3
+ "version": "2.4.7",
4
4
  "description": "Smart home MCP server for Home Assistant plus Local AI integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",