@coffeerunhobby/mcp-ha-connect 1.7.6 → 2.0.0
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.
- package/AGENTS.md +9 -9
- package/dist/config.js +10 -14
- package/dist/config.js.map +1 -1
- package/dist/resources/index.d.ts +1 -1
- package/dist/resources/index.js +6 -6
- package/dist/resources/index.js.map +1 -1
- package/dist/server/auth.d.ts +1 -1
- package/dist/server/chatFace.d.ts +1 -1
- package/dist/server/chatFace.js +21 -16
- package/dist/server/chatFace.js.map +1 -1
- package/dist/server/common.d.ts +17 -1
- package/dist/server/common.js +48 -1
- package/dist/server/common.js.map +1 -1
- package/dist/server/stdio.js +1 -1
- package/dist/server/stdio.js.map +1 -1
- package/dist/server/stream.d.ts +2 -2
- package/dist/server/stream.js +2 -2
- package/dist/server/stream.js.map +1 -1
- package/dist/tools/ai/analyzeSensors.d.ts +1 -1
- package/dist/tools/ai/analyzeSensors.js +1 -1
- package/dist/tools/ai/analyzeSensors.js.map +1 -1
- package/dist/tools/ai/index.d.ts +1 -1
- package/dist/tools/common.d.ts +113 -328
- package/dist/tools/common.js +6 -6
- package/dist/tools/common.js.map +1 -1
- package/dist/tools/homeassistant/automationControls.d.ts +1 -1
- package/dist/tools/homeassistant/automationControls.js +4 -4
- package/dist/tools/homeassistant/automationControls.js.map +1 -1
- package/dist/tools/homeassistant/calendar.d.ts +1 -1
- package/dist/tools/homeassistant/calendar.js +2 -2
- package/dist/tools/homeassistant/calendar.js.map +1 -1
- package/dist/tools/homeassistant/callService.d.ts +1 -1
- package/dist/tools/homeassistant/callService.js +1 -1
- package/dist/tools/homeassistant/callService.js.map +1 -1
- package/dist/tools/homeassistant/controlClimate.d.ts +1 -1
- package/dist/tools/homeassistant/controlClimate.js +1 -1
- package/dist/tools/homeassistant/controlClimate.js.map +1 -1
- package/dist/tools/homeassistant/controlCover.d.ts +1 -1
- package/dist/tools/homeassistant/controlCover.js +1 -1
- package/dist/tools/homeassistant/controlCover.js.map +1 -1
- package/dist/tools/homeassistant/controlFan.d.ts +1 -1
- package/dist/tools/homeassistant/controlFan.js +1 -1
- package/dist/tools/homeassistant/controlFan.js.map +1 -1
- package/dist/tools/homeassistant/controlLight.d.ts +1 -1
- package/dist/tools/homeassistant/controlLight.js +1 -1
- package/dist/tools/homeassistant/controlLight.js.map +1 -1
- package/dist/tools/homeassistant/controlMediaPlayer.d.ts +1 -1
- package/dist/tools/homeassistant/controlMediaPlayer.js +1 -1
- package/dist/tools/homeassistant/controlMediaPlayer.js.map +1 -1
- package/dist/tools/homeassistant/createAutomation.d.ts +1 -1
- package/dist/tools/homeassistant/createAutomation.js +1 -1
- package/dist/tools/homeassistant/createAutomation.js.map +1 -1
- package/dist/tools/homeassistant/deleteAutomation.d.ts +1 -1
- package/dist/tools/homeassistant/deleteAutomation.js +1 -1
- package/dist/tools/homeassistant/deleteAutomation.js.map +1 -1
- package/dist/tools/homeassistant/entityAction.d.ts +1 -1
- package/dist/tools/homeassistant/entityAction.js +1 -1
- package/dist/tools/homeassistant/entityAction.js.map +1 -1
- package/dist/tools/homeassistant/entityGuard.d.ts +1 -1
- package/dist/tools/homeassistant/getAllSensors.d.ts +1 -1
- package/dist/tools/homeassistant/getAllSensors.js +1 -1
- package/dist/tools/homeassistant/getAllSensors.js.map +1 -1
- package/dist/tools/homeassistant/getAutomationTrace.d.ts +1 -1
- package/dist/tools/homeassistant/getAutomationTrace.js +1 -1
- package/dist/tools/homeassistant/getAutomationTrace.js.map +1 -1
- package/dist/tools/homeassistant/getDomainSummary.d.ts +2 -2
- package/dist/tools/homeassistant/getDomainSummary.js +1 -1
- package/dist/tools/homeassistant/getDomainSummary.js.map +1 -1
- package/dist/tools/homeassistant/getEntitiesByDomain.d.ts +1 -1
- package/dist/tools/homeassistant/getEntitiesByDomain.js +1 -1
- package/dist/tools/homeassistant/getEntitiesByDomain.js.map +1 -1
- package/dist/tools/homeassistant/getHistory.d.ts +1 -1
- package/dist/tools/homeassistant/getHistory.js +1 -1
- package/dist/tools/homeassistant/getHistory.js.map +1 -1
- package/dist/tools/homeassistant/getState.d.ts +1 -1
- package/dist/tools/homeassistant/getState.js +1 -1
- package/dist/tools/homeassistant/getState.js.map +1 -1
- package/dist/tools/homeassistant/getStates.d.ts +1 -1
- package/dist/tools/homeassistant/getStates.js +1 -1
- package/dist/tools/homeassistant/getStates.js.map +1 -1
- package/dist/tools/homeassistant/getVersion.d.ts +1 -1
- package/dist/tools/homeassistant/getVersion.js +1 -1
- package/dist/tools/homeassistant/getVersion.js.map +1 -1
- package/dist/tools/homeassistant/index.d.ts +1 -1
- package/dist/tools/homeassistant/listAutomations.d.ts +2 -2
- package/dist/tools/homeassistant/listAutomations.js +1 -1
- package/dist/tools/homeassistant/listAutomations.js.map +1 -1
- package/dist/tools/homeassistant/listEntities.d.ts +1 -1
- package/dist/tools/homeassistant/listEntities.js +1 -1
- package/dist/tools/homeassistant/listEntities.js.map +1 -1
- package/dist/tools/homeassistant/listPersons.d.ts +1 -1
- package/dist/tools/homeassistant/listPersons.js +1 -1
- package/dist/tools/homeassistant/listPersons.js.map +1 -1
- package/dist/tools/homeassistant/sceneAndScript.d.ts +1 -1
- package/dist/tools/homeassistant/sceneAndScript.js +2 -2
- package/dist/tools/homeassistant/sceneAndScript.js.map +1 -1
- package/dist/tools/homeassistant/searchEntities.d.ts +1 -1
- package/dist/tools/homeassistant/searchEntities.js +1 -1
- package/dist/tools/homeassistant/searchEntities.js.map +1 -1
- package/dist/tools/homeassistant/sendNotification.d.ts +1 -1
- package/dist/tools/homeassistant/sendNotification.js +2 -2
- package/dist/tools/homeassistant/sendNotification.js.map +1 -1
- package/dist/tools/homeassistant/systemTools.d.ts +1 -1
- package/dist/tools/homeassistant/systemTools.js +3 -3
- package/dist/tools/homeassistant/systemTools.js.map +1 -1
- package/dist/tools/homeassistant/triggerAutomation.d.ts +1 -1
- package/dist/tools/homeassistant/triggerAutomation.js +1 -1
- package/dist/tools/homeassistant/triggerAutomation.js.map +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/infra/index.d.ts +1 -1
- package/dist/tools/infra/index.js +1 -1
- package/dist/tools/infra/index.js.map +1 -1
- package/dist/tools/omada/blockClient.d.ts +1 -1
- package/dist/tools/omada/blockClient.js +1 -1
- package/dist/tools/omada/blockClient.js.map +1 -1
- package/dist/tools/omada/cyclePoePort.d.ts +1 -1
- package/dist/tools/omada/cyclePoePort.js +1 -1
- package/dist/tools/omada/cyclePoePort.js.map +1 -1
- package/dist/tools/omada/disableClientRateLimit.d.ts +1 -1
- package/dist/tools/omada/disableClientRateLimit.js +1 -1
- package/dist/tools/omada/disableClientRateLimit.js.map +1 -1
- package/dist/tools/omada/getClient.d.ts +1 -1
- package/dist/tools/omada/getClient.js +1 -1
- package/dist/tools/omada/getClient.js.map +1 -1
- package/dist/tools/omada/getDevice.d.ts +1 -1
- package/dist/tools/omada/getDevice.js +1 -1
- package/dist/tools/omada/getDevice.js.map +1 -1
- package/dist/tools/omada/getFirewallSetting.d.ts +1 -1
- package/dist/tools/omada/getFirewallSetting.js +1 -1
- package/dist/tools/omada/getFirewallSetting.js.map +1 -1
- package/dist/tools/omada/getInternetInfo.d.ts +1 -1
- package/dist/tools/omada/getInternetInfo.js +1 -1
- package/dist/tools/omada/getInternetInfo.js.map +1 -1
- package/dist/tools/omada/getLanNetworkList.d.ts +1 -1
- package/dist/tools/omada/getLanNetworkList.js +1 -1
- package/dist/tools/omada/getLanNetworkList.js.map +1 -1
- package/dist/tools/omada/getLanProfileList.d.ts +1 -1
- package/dist/tools/omada/getLanProfileList.js +1 -1
- package/dist/tools/omada/getLanProfileList.js.map +1 -1
- package/dist/tools/omada/getPortForwardingStatus.d.ts +1 -1
- package/dist/tools/omada/getPortForwardingStatus.js +1 -1
- package/dist/tools/omada/getPortForwardingStatus.js.map +1 -1
- package/dist/tools/omada/getRateLimitProfiles.d.ts +1 -1
- package/dist/tools/omada/getRateLimitProfiles.js +1 -1
- package/dist/tools/omada/getRateLimitProfiles.js.map +1 -1
- package/dist/tools/omada/getSsidDetail.d.ts +1 -1
- package/dist/tools/omada/getSsidDetail.js +1 -1
- package/dist/tools/omada/getSsidDetail.js.map +1 -1
- package/dist/tools/omada/getSsidList.d.ts +1 -1
- package/dist/tools/omada/getSsidList.js +1 -1
- package/dist/tools/omada/getSsidList.js.map +1 -1
- package/dist/tools/omada/getSwitchStackDetail.d.ts +1 -1
- package/dist/tools/omada/getSwitchStackDetail.js +1 -1
- package/dist/tools/omada/getSwitchStackDetail.js.map +1 -1
- package/dist/tools/omada/getThreatList.d.ts +1 -1
- package/dist/tools/omada/getThreatList.js +1 -1
- package/dist/tools/omada/getThreatList.js.map +1 -1
- package/dist/tools/omada/getWlanGroupList.d.ts +1 -1
- package/dist/tools/omada/getWlanGroupList.js +1 -1
- package/dist/tools/omada/getWlanGroupList.js.map +1 -1
- package/dist/tools/omada/graph.d.ts +7 -25
- package/dist/tools/omada/graph.js +3 -3
- package/dist/tools/omada/graph.js.map +1 -1
- package/dist/tools/omada/index.d.ts +1 -1
- package/dist/tools/omada/listClients.d.ts +1 -1
- package/dist/tools/omada/listClients.js +1 -1
- package/dist/tools/omada/listClients.js.map +1 -1
- package/dist/tools/omada/listClientsActivity.d.ts +1 -1
- package/dist/tools/omada/listClientsActivity.js +1 -1
- package/dist/tools/omada/listClientsActivity.js.map +1 -1
- package/dist/tools/omada/listClientsPastConnections.d.ts +1 -1
- package/dist/tools/omada/listClientsPastConnections.js +1 -1
- package/dist/tools/omada/listClientsPastConnections.js.map +1 -1
- package/dist/tools/omada/listDevices.d.ts +1 -1
- package/dist/tools/omada/listDevices.js +1 -1
- package/dist/tools/omada/listDevices.js.map +1 -1
- package/dist/tools/omada/listDevicesStats.d.ts +1 -1
- package/dist/tools/omada/listDevicesStats.js +1 -1
- package/dist/tools/omada/listDevicesStats.js.map +1 -1
- package/dist/tools/omada/listMostActiveClients.d.ts +1 -1
- package/dist/tools/omada/listMostActiveClients.js +1 -1
- package/dist/tools/omada/listMostActiveClients.js.map +1 -1
- package/dist/tools/omada/listSites.d.ts +1 -1
- package/dist/tools/omada/listSites.js +1 -1
- package/dist/tools/omada/listSites.js.map +1 -1
- package/dist/tools/omada/searchDevices.d.ts +1 -1
- package/dist/tools/omada/searchDevices.js +1 -1
- package/dist/tools/omada/searchDevices.js.map +1 -1
- package/dist/tools/omada/setClientRateLimit.d.ts +1 -1
- package/dist/tools/omada/setClientRateLimit.js +1 -1
- package/dist/tools/omada/setClientRateLimit.js.map +1 -1
- package/dist/tools/omada/setClientRateLimitProfile.d.ts +1 -1
- package/dist/tools/omada/setClientRateLimitProfile.js +1 -1
- package/dist/tools/omada/setClientRateLimitProfile.js.map +1 -1
- package/dist/tools/omada/setSsidEnabled.d.ts +3 -11
- package/dist/tools/omada/setSsidEnabled.js +1 -1
- package/dist/tools/omada/setSsidEnabled.js.map +1 -1
- package/dist/tools/omada/unblockClient.d.ts +1 -1
- package/dist/tools/omada/unblockClient.js +1 -1
- package/dist/tools/omada/unblockClient.js.map +1 -1
- package/dist/tools/types.d.ts +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/docs/CHANGELOG.md +8 -0
- package/openapi.json +1 -1
- package/package.json +8 -5
- package/src/config.ts +10 -19
- package/src/resources/index.ts +7 -8
- package/src/server/auth.ts +1 -1
- package/src/server/chatFace.ts +27 -25
- package/src/server/common.ts +56 -1
- package/src/server/stdio.ts +1 -1
- package/src/server/stream.ts +3 -3
- package/src/tools/ai/analyzeSensors.ts +2 -2
- package/src/tools/ai/index.ts +1 -1
- package/src/tools/common.ts +8 -9
- package/src/tools/homeassistant/automationControls.ts +5 -5
- package/src/tools/homeassistant/calendar.ts +3 -3
- package/src/tools/homeassistant/callService.ts +2 -2
- package/src/tools/homeassistant/controlClimate.ts +2 -2
- package/src/tools/homeassistant/controlCover.ts +2 -2
- package/src/tools/homeassistant/controlFan.ts +2 -2
- package/src/tools/homeassistant/controlLight.ts +2 -2
- package/src/tools/homeassistant/controlMediaPlayer.ts +2 -2
- package/src/tools/homeassistant/createAutomation.ts +2 -2
- package/src/tools/homeassistant/deleteAutomation.ts +2 -2
- package/src/tools/homeassistant/entityAction.ts +2 -2
- package/src/tools/homeassistant/entityGuard.ts +1 -1
- package/src/tools/homeassistant/getAllSensors.ts +2 -2
- package/src/tools/homeassistant/getAutomationTrace.ts +2 -2
- package/src/tools/homeassistant/getDomainSummary.ts +2 -2
- package/src/tools/homeassistant/getEntitiesByDomain.ts +2 -2
- package/src/tools/homeassistant/getHistory.ts +2 -2
- package/src/tools/homeassistant/getState.ts +2 -2
- package/src/tools/homeassistant/getStates.ts +2 -2
- package/src/tools/homeassistant/getVersion.ts +2 -2
- package/src/tools/homeassistant/index.ts +1 -1
- package/src/tools/homeassistant/listAutomations.ts +2 -2
- package/src/tools/homeassistant/listEntities.ts +2 -2
- package/src/tools/homeassistant/listPersons.ts +2 -2
- package/src/tools/homeassistant/sceneAndScript.ts +3 -3
- package/src/tools/homeassistant/searchEntities.ts +2 -2
- package/src/tools/homeassistant/sendNotification.ts +3 -3
- package/src/tools/homeassistant/systemTools.ts +4 -4
- package/src/tools/homeassistant/triggerAutomation.ts +2 -2
- package/src/tools/index.ts +1 -1
- package/src/tools/infra/index.ts +2 -2
- package/src/tools/omada/blockClient.ts +2 -2
- package/src/tools/omada/cyclePoePort.ts +2 -2
- package/src/tools/omada/disableClientRateLimit.ts +2 -2
- package/src/tools/omada/getClient.ts +2 -3
- package/src/tools/omada/getDevice.ts +2 -3
- package/src/tools/omada/getFirewallSetting.ts +2 -3
- package/src/tools/omada/getInternetInfo.ts +2 -3
- package/src/tools/omada/getLanNetworkList.ts +2 -3
- package/src/tools/omada/getLanProfileList.ts +2 -3
- package/src/tools/omada/getPortForwardingStatus.ts +2 -2
- package/src/tools/omada/getRateLimitProfiles.ts +2 -3
- package/src/tools/omada/getSsidDetail.ts +2 -2
- package/src/tools/omada/getSsidList.ts +2 -2
- package/src/tools/omada/getSwitchStackDetail.ts +2 -3
- package/src/tools/omada/getThreatList.ts +2 -2
- package/src/tools/omada/getWlanGroupList.ts +2 -3
- package/src/tools/omada/graph.ts +4 -4
- package/src/tools/omada/index.ts +1 -1
- package/src/tools/omada/listClients.ts +2 -3
- package/src/tools/omada/listClientsActivity.ts +2 -2
- package/src/tools/omada/listClientsPastConnections.ts +2 -2
- package/src/tools/omada/listDevices.ts +2 -3
- package/src/tools/omada/listDevicesStats.ts +2 -2
- package/src/tools/omada/listMostActiveClients.ts +2 -3
- package/src/tools/omada/listSites.ts +2 -2
- package/src/tools/omada/searchDevices.ts +2 -2
- package/src/tools/omada/setClientRateLimit.ts +2 -2
- package/src/tools/omada/setClientRateLimitProfile.ts +2 -2
- package/src/tools/omada/setSsidEnabled.ts +2 -2
- package/src/tools/omada/unblockClient.ts +2 -2
- package/src/tools/types.ts +1 -1
- package/src/version.ts +1 -1
- package/tests/bench/hotpaths.bench.ts +68 -0
- package/tests/resources/index.test.ts +3 -3
- package/tests/security/dependencies.test.ts +6 -6
- package/tests/security/insecureDesign.test.ts +5 -6
- package/tests/server/memoizeJsonSchema.test.ts +71 -0
- package/tests/server/stdio.test.ts +2 -2
- package/tests/server/stream.test.ts +0 -1
- package/tests/server/toolVisibility.test.ts +1 -2
- package/tests/tools/ai/analyzeSensors.test.ts +3 -11
- package/tests/tools/common.test.ts +10 -12
- package/tests/tools/homeassistant/handlers.test.ts +1 -5
- package/tests/tools/infra/invokeAction.test.ts +3 -6
- package/tests/tools/omada/graph.test.ts +4 -4
- package/tests/tools/omada/handlers.test.ts +3 -12
- package/tests/tools/registry.test.ts +1 -1
|
@@ -5,7 +5,7 @@ import { historySchema, toToolResult, wrapToolHandler, Permission } from '../com
|
|
|
5
5
|
export function registerGetHistoryTool(server, client) {
|
|
6
6
|
server.registerTool('getHistory', {
|
|
7
7
|
description: 'Get historical data for an entity.',
|
|
8
|
-
inputSchema: historySchema
|
|
8
|
+
inputSchema: historySchema,
|
|
9
9
|
}, wrapToolHandler('getHistory', async ({ entity_id, hours = 24 }) => {
|
|
10
10
|
const history = await client.getHistory(entity_id, hours);
|
|
11
11
|
return toToolResult(history);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getHistory.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getHistory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKxF,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAgB;IACxE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,oCAAoC;QACjD,WAAW,EAAE,aAAa
|
|
1
|
+
{"version":3,"file":"getHistory.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getHistory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKxF,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAgB;IACxE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,oCAAoC;QACjD,WAAW,EAAE,aAAa;KAC3B,EACD,eAAe,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE;QAC7E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* getState tool - Get state of a specific entity
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerGetStateTool(server: McpServer, client: HaClient): void;
|
|
@@ -5,7 +5,7 @@ import { entityIdSchema, toToolResult, wrapToolHandler, Permission } from '../co
|
|
|
5
5
|
export function registerGetStateTool(server, client) {
|
|
6
6
|
server.registerTool('getState', {
|
|
7
7
|
description: 'Get the state of a specific entity by entity_id.',
|
|
8
|
-
inputSchema: entityIdSchema
|
|
8
|
+
inputSchema: entityIdSchema,
|
|
9
9
|
}, wrapToolHandler('getState', async ({ entity_id }) => {
|
|
10
10
|
const state = await client.getState(entity_id);
|
|
11
11
|
if (!state) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getState.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getState.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzF,MAAM,UAAU,oBAAoB,CAAC,MAAiB,EAAE,MAAgB;IACtE,MAAM,CAAC,YAAY,CACjB,UAAU,EACV;QACE,WAAW,EAAE,kDAAkD;QAC/D,WAAW,EAAE,cAAc
|
|
1
|
+
{"version":3,"file":"getState.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getState.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzF,MAAM,UAAU,oBAAoB,CAAC,MAAiB,EAAE,MAAgB;IACtE,MAAM,CAAC,YAAY,CACjB,UAAU,EACV;QACE,WAAW,EAAE,kDAAkD;QAC/D,WAAW,EAAE,cAAc;KAC5B,EACD,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,SAAS,EAAyB,EAAE,EAAE;QACzE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,0EAA0E,EAAE,EAAE,IAAI,CAAC,CAAC;QACxJ,CAAC;QACD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* getStates tool - Get all entity states from Home Assistant
|
|
3
3
|
* Returns paginated, lightweight entities by default to reduce response size.
|
|
4
4
|
*/
|
|
5
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
5
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
6
6
|
import type { HaClient } from '../../haClient/index.js';
|
|
7
7
|
export declare function registerGetStatesTool(server: McpServer, client: HaClient): void;
|
|
@@ -7,7 +7,7 @@ import { haPaginationSchema, toToolResult, wrapToolHandler, Permission, paginate
|
|
|
7
7
|
export function registerGetStatesTool(server, client) {
|
|
8
8
|
server.registerTool('getStates', {
|
|
9
9
|
description: 'Get all entity states from Home Assistant. Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data.',
|
|
10
|
-
inputSchema: haPaginationSchema
|
|
10
|
+
inputSchema: haPaginationSchema,
|
|
11
11
|
}, wrapToolHandler('getStates', async (args) => {
|
|
12
12
|
const { page, pageSize, includeAttributes } = args;
|
|
13
13
|
const states = await client.getStates();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getStates.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getStates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE5G,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAgB;IACvE,MAAM,CAAC,YAAY,CACjB,WAAW,EACX;QACE,WAAW,EAAE,8JAA8J;QAC3K,WAAW,EAAE,kBAAkB
|
|
1
|
+
{"version":3,"file":"getStates.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getStates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE5G,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAgB;IACvE,MAAM,CAAC,YAAY,CACjB,WAAW,EACX;QACE,WAAW,EAAE,8JAA8J;QAC3K,WAAW,EAAE,kBAAkB;KAChC,EACD,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAExC,IAAI,iBAAiB,EAAE,CAAC;YACtB,2CAA2C;YAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YACrD,OAAO,YAAY,CAAC;gBAClB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ,EAAE,MAAM,CAAC,KAAK;aACvB,CAAC,CAAC;QACL,CAAC;QAED,uCAAuC;QACvC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1D,OAAO,YAAY,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,KAAK;SACvB,CAAC,CAAC;IACL,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* getVersion tool - Get Home Assistant version info
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerGetVersionTool(server: McpServer, client: HaClient): void;
|
|
@@ -5,7 +5,7 @@ import { emptySchema, toToolResult, wrapToolHandler, Permission } from '../commo
|
|
|
5
5
|
export function registerGetVersionTool(server, client) {
|
|
6
6
|
server.registerTool('getVersion', {
|
|
7
7
|
description: 'Get Home Assistant version and configuration information.',
|
|
8
|
-
inputSchema: emptySchema
|
|
8
|
+
inputSchema: emptySchema,
|
|
9
9
|
}, wrapToolHandler('getVersion', async () => {
|
|
10
10
|
const version = await client.getVersion();
|
|
11
11
|
return toToolResult(version);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getVersion.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getVersion.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAgB;IACxE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,2DAA2D;QACxE,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"getVersion.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/getVersion.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAgB;IACxE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,2DAA2D;QACxE,WAAW,EAAE,WAAW;KACzB,EACD,eAAe,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Home Assistant tools index - registers all HA MCP tools
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerHomeAssistantTools(server: McpServer, client: HaClient): number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* listAutomations tool - List all automations
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
/**
|
|
7
7
|
* Shared handler — used by the MCP registration below AND the chat face
|
|
@@ -9,5 +9,5 @@ import type { HaClient } from '../../haClient/index.js';
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function createListAutomationsHandler(client: HaClient): (args: {
|
|
11
11
|
state?: "on" | "off" | undefined;
|
|
12
|
-
}, extra: import("../common.js").ToolExtra) => Promise<import("@modelcontextprotocol/
|
|
12
|
+
}, extra: import("../common.js").ToolExtra) => Promise<import("@modelcontextprotocol/server").CallToolResult>;
|
|
13
13
|
export declare function registerListAutomationsTool(server: McpServer, client: HaClient): void;
|
|
@@ -18,7 +18,7 @@ export function createListAutomationsHandler(client) {
|
|
|
18
18
|
export function registerListAutomationsTool(server, client) {
|
|
19
19
|
server.registerTool('listAutomations', {
|
|
20
20
|
description: 'List all Home Assistant automations with their status and last triggered time.',
|
|
21
|
-
inputSchema: automationFilterSchema
|
|
21
|
+
inputSchema: automationFilterSchema,
|
|
22
22
|
}, createListAutomationsHandler(client));
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=listAutomations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listAutomations.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listAutomations.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKjG;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAgB;IAC3D,OAAO,eAAe,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAuB,EAAE,EAAE;QACjF,IAAI,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC;YACV,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IACpG,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAiB,EAAE,MAAgB;IAC7E,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EAAE,gFAAgF;QAC7F,WAAW,EAAE,sBAAsB
|
|
1
|
+
{"version":3,"file":"listAutomations.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listAutomations.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKjG;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAgB;IAC3D,OAAO,eAAe,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAuB,EAAE,EAAE;QACjF,IAAI,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC;YACV,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IACpG,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAiB,EAAE,MAAgB;IAC7E,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EAAE,gFAAgF;QAC7F,WAAW,EAAE,sBAAsB;KACpC,EACD,4BAA4B,CAAC,MAAM,CAAC,CACrC,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* listEntities tool - List entities with optional filtering
|
|
3
3
|
* Returns lightweight entities by default to reduce response size.
|
|
4
4
|
*/
|
|
5
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
5
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
6
6
|
import type { HaClient } from '../../haClient/index.js';
|
|
7
7
|
export declare function registerListEntitiesTool(server: McpServer, client: HaClient): void;
|
|
@@ -15,7 +15,7 @@ const listEntitiesSchema = z.object({
|
|
|
15
15
|
export function registerListEntitiesTool(server, client) {
|
|
16
16
|
server.registerTool('listEntities', {
|
|
17
17
|
description: 'List entities with optional filtering by domain, state, or search query. Returns lightweight entities by default (limit 50). Use includeAttributes=true for full entity data.',
|
|
18
|
-
inputSchema: listEntitiesSchema
|
|
18
|
+
inputSchema: listEntitiesSchema,
|
|
19
19
|
}, wrapToolHandler('listEntities', async (args) => {
|
|
20
20
|
const { includeAttributes, ...filterArgs } = args;
|
|
21
21
|
const allEntities = await client.listEntities(filterArgs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listEntities.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listEntities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC9F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC9F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC3F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IACxH,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAC1H,CAAC,CAAC;AAIH,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAgB;IAC1E,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,+KAA+K;QAC5L,WAAW,EAAE,kBAAkB
|
|
1
|
+
{"version":3,"file":"listEntities.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listEntities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC9F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC9F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC3F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IACxH,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAC1H,CAAC,CAAC;AAIH,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAgB;IAC1E,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,+KAA+K;QAC5L,WAAW,EAAE,kBAAkB;KAChC,EACD,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,IAAsB,EAAE,EAAE;QAC/D,MAAM,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;QAClD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAE1D,mEAAmE;QACnE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAElF,OAAO,YAAY,CAAC;YAClB,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACxE,QAAQ;SACT,CAAC,CAAC;IACL,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* listPersons tool - List all person entities (household members)
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerListPersonsTool(server: McpServer, client: HaClient): void;
|
|
@@ -14,7 +14,7 @@ Use this tool when the user asks:
|
|
|
14
14
|
- "List family members"
|
|
15
15
|
- "Is anyone home?"
|
|
16
16
|
- "Where is Dad/Mom/etc?"`,
|
|
17
|
-
inputSchema: emptySchema
|
|
17
|
+
inputSchema: emptySchema,
|
|
18
18
|
}, wrapToolHandler('listPersons', async () => {
|
|
19
19
|
const entities = await client.getEntitiesByDomain('person');
|
|
20
20
|
const persons = entities.map(entity => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listPersons.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listPersons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAgB;IACzE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,WAAW,EAAE;;;;;;;;;0BASO;QACpB,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"listPersons.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/listPersons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAgB;IACzE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,WAAW,EAAE;;;;;;;;;0BASO;QACpB,WAAW,EAAE,WAAW;KACzB,EACD,eAAe,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAE5D,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;YAChF,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,0BAA0B;YAC/C,eAAe,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;SAC5E,CAAC,CAAC,CAAC;QAEJ,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QACnE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QAErE,OAAO,YAAY,CAAC;YAClB,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,SAAS;YACf,OAAO;SACR,CAAC,CAAC;IACL,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Scene and Script tools - Activate scenes and run scripts
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerActivateSceneTool(server: McpServer, client: HaClient): void;
|
|
7
7
|
export declare function registerRunScriptTool(server: McpServer, client: HaClient): void;
|
|
@@ -6,7 +6,7 @@ import { entityNotFoundResult } from './entityGuard.js';
|
|
|
6
6
|
export function registerActivateSceneTool(server, client) {
|
|
7
7
|
server.registerTool('activateScene', {
|
|
8
8
|
description: 'Activate a Home Assistant scene.',
|
|
9
|
-
inputSchema: entityIdSchema
|
|
9
|
+
inputSchema: entityIdSchema,
|
|
10
10
|
}, wrapToolHandler('activateScene', async ({ entity_id }) => {
|
|
11
11
|
const missing = await entityNotFoundResult(client, entity_id);
|
|
12
12
|
if (missing)
|
|
@@ -22,7 +22,7 @@ export function registerActivateSceneTool(server, client) {
|
|
|
22
22
|
export function registerRunScriptTool(server, client) {
|
|
23
23
|
server.registerTool('runScript', {
|
|
24
24
|
description: 'Run a Home Assistant script with optional variables.',
|
|
25
|
-
inputSchema: runScriptSchema
|
|
25
|
+
inputSchema: runScriptSchema,
|
|
26
26
|
}, wrapToolHandler('runScript', async ({ entity_id, variables }) => {
|
|
27
27
|
const missing = await entityNotFoundResult(client, entity_id);
|
|
28
28
|
if (missing)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneAndScript.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/sceneAndScript.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1G,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAMxD,MAAM,UAAU,yBAAyB,CAAC,MAAiB,EAAE,MAAgB;IAC3E,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,cAAc
|
|
1
|
+
{"version":3,"file":"sceneAndScript.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/sceneAndScript.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1G,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAMxD,MAAM,UAAU,yBAAyB,CAAC,MAAiB,EAAE,MAAgB;IAC3E,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,cAAc;KAC5B,EACD,eAAe,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE,SAAS,EAAgB,EAAE,EAAE;QACrE,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;YACtC,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE;SACtB,CAAC,CAAC;QACH,OAAO,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClG,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAgB;IACvE,MAAM,CAAC,YAAY,CACjB,WAAW,EACX;QACE,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE,eAAe;KAC7B,EACD,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAiB,EAAE,EAAE;QAC7E,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;YACtC,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE;YACrB,YAAY,EAAE,SAAgD;SAC/D,CAAC,CAAC;QACH,OAAO,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CACvB,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* searchEntities tool - Search for entities by name or entity_id
|
|
3
3
|
* Returns paginated, lightweight entities by default to reduce response size.
|
|
4
4
|
*/
|
|
5
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
5
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
6
6
|
import type { HaClient } from '../../haClient/index.js';
|
|
7
7
|
export declare function registerSearchEntitiesTool(server: McpServer, client: HaClient): void;
|
|
@@ -16,7 +16,7 @@ export function registerSearchEntitiesTool(server, client) {
|
|
|
16
16
|
description: `Search for entities by name or entity_id. Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data.
|
|
17
17
|
|
|
18
18
|
Note: For queries about people, family members, or "who's home?", use the listPersons tool instead.`,
|
|
19
|
-
inputSchema: searchEntitiesSchema
|
|
19
|
+
inputSchema: searchEntitiesSchema,
|
|
20
20
|
}, wrapToolHandler('searchEntities', async (args) => {
|
|
21
21
|
const { query, page, pageSize, includeAttributes } = args;
|
|
22
22
|
const allEntities = await client.searchEntities(query);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchEntities.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/searchEntities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAExF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACpF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACxG,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAC1H,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B,CAAC,MAAiB,EAAE,MAAgB;IAC5E,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EAAE;;oGAEiF;QAC9F,WAAW,EAAE,oBAAoB
|
|
1
|
+
{"version":3,"file":"searchEntities.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/searchEntities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAExF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACpF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACxG,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CAC1H,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B,CAAC,MAAiB,EAAE,MAAgB;IAC5E,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EAAE;;oGAEiF;QAC9F,WAAW,EAAE,oBAAoB;KAClC,EACD,eAAe,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC/C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAEvD,IAAI,iBAAiB,EAAE,CAAC;YACtB,2CAA2C;YAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC1D,OAAO,YAAY,CAAC;gBAClB,KAAK;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ,EAAE,MAAM,CAAC,KAAK;aACvB,CAAC,CAAC;QACL,CAAC;QAED,uCAAuC;QACvC,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1D,OAAO,YAAY,CAAC;YAClB,KAAK;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,KAAK;SACvB,CAAC,CAAC;IACL,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* sendNotification tool - Send notifications through Home Assistant
|
|
3
3
|
* Supports HA Mobile App notifications with actions, images, sounds, and more
|
|
4
4
|
*/
|
|
5
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
5
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
6
6
|
import type { HaClient } from '../../haClient/index.js';
|
|
7
7
|
export declare function registerSendNotificationTool(server: McpServer, client: HaClient): void;
|
|
8
8
|
export declare function registerListNotificationTargetsTool(server: McpServer, client: HaClient): void;
|
|
@@ -81,7 +81,7 @@ Examples:
|
|
|
81
81
|
- Simple: { message: "Hello!", target: "mobile_app_phone" }
|
|
82
82
|
- With actions: { message: "Doorbell", target: "mobile_app_phone", actions: [{ action: "OPEN", title: "Open Door" }] }
|
|
83
83
|
- With image: { message: "Camera alert", target: "mobile_app_phone", image: "/api/camera_proxy/camera.front" }`,
|
|
84
|
-
inputSchema: sendNotificationSchema
|
|
84
|
+
inputSchema: sendNotificationSchema,
|
|
85
85
|
}, wrapToolHandler('sendNotification', async (args) => {
|
|
86
86
|
const serviceData = { message: args.message };
|
|
87
87
|
if (args.title)
|
|
@@ -111,7 +111,7 @@ Examples:
|
|
|
111
111
|
export function registerListNotificationTargetsTool(server, client) {
|
|
112
112
|
server.registerTool('listNotificationTargets', {
|
|
113
113
|
description: 'List available notification targets (mobile apps and other notify services). Use this to discover which devices can receive notifications.',
|
|
114
|
-
inputSchema: listNotificationTargetsSchema
|
|
114
|
+
inputSchema: listNotificationTargetsSchema,
|
|
115
115
|
}, wrapToolHandler('listNotificationTargets', async () => {
|
|
116
116
|
// Get all entities and find mobile_app device trackers to infer notify services
|
|
117
117
|
const states = await client.getStates();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendNotification.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/sendNotification.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sendNotification.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/sendNotification.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* System tools - Restart, logs, updates
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerRestartHomeAssistantTool(server: McpServer, client: HaClient): void;
|
|
7
7
|
export declare function registerGetSystemLogTool(server: McpServer, client: HaClient): void;
|
|
@@ -5,7 +5,7 @@ import { emptySchema, systemLogSchema, toToolResult, wrapToolHandler, Permission
|
|
|
5
5
|
export function registerRestartHomeAssistantTool(server, client) {
|
|
6
6
|
server.registerTool('restartHomeAssistant', {
|
|
7
7
|
description: 'Restart the Home Assistant server. Use with caution.',
|
|
8
|
-
inputSchema: emptySchema
|
|
8
|
+
inputSchema: emptySchema,
|
|
9
9
|
}, wrapToolHandler('restartHomeAssistant', async () => {
|
|
10
10
|
await client.restartServer();
|
|
11
11
|
return toToolResult({ success: true, message: 'Home Assistant restart initiated' });
|
|
@@ -14,7 +14,7 @@ export function registerRestartHomeAssistantTool(server, client) {
|
|
|
14
14
|
export function registerGetSystemLogTool(server, client) {
|
|
15
15
|
server.registerTool('getSystemLog', {
|
|
16
16
|
description: 'Get system log entries from the Home Assistant logbook. Shows recent events and state changes. Default: last 24h, 100 entries.',
|
|
17
|
-
inputSchema: systemLogSchema
|
|
17
|
+
inputSchema: systemLogSchema,
|
|
18
18
|
}, wrapToolHandler('getSystemLog', async ({ hours = 24, entity_id, limit = 100 }) => {
|
|
19
19
|
const log = await client.getSystemLog({ hours, entity_id, limit });
|
|
20
20
|
return toToolResult({ hours, limit, entity_id: entity_id || null, entries: log });
|
|
@@ -23,7 +23,7 @@ export function registerGetSystemLogTool(server, client) {
|
|
|
23
23
|
export function registerCheckUpdatesTool(server, client) {
|
|
24
24
|
server.registerTool('checkUpdates', {
|
|
25
25
|
description: 'Check for available updates for Home Assistant Core, Supervisor, and OS. Requires Home Assistant OS or Supervised installation.',
|
|
26
|
-
inputSchema: emptySchema
|
|
26
|
+
inputSchema: emptySchema,
|
|
27
27
|
}, wrapToolHandler('checkUpdates', async () => {
|
|
28
28
|
const updates = await client.getAvailableUpdates();
|
|
29
29
|
return toToolResult(updates);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemTools.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/systemTools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKvG,MAAM,UAAU,gCAAgC,CAAC,MAAiB,EAAE,MAAgB;IAClF,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"systemTools.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/systemTools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKvG,MAAM,UAAU,gCAAgC,CAAC,MAAiB,EAAE,MAAgB;IAClF,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE,WAAW;KACzB,EACD,eAAe,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;IACtF,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAgB;IAC1E,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,gIAAgI;QAC7I,WAAW,EAAE,eAAe;KAC7B,EACD,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,GAAG,GAAG,EAAiB,EAAE,EAAE;QAC9F,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACnE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IACpF,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAgB;IAC1E,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,iIAAiI;QAC9I,WAAW,EAAE,WAAW;KACzB,EACD,eAAe,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;QACnD,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* triggerAutomation tool - Manually trigger an automation
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../../haClient/index.js';
|
|
6
6
|
export declare function registerTriggerAutomationTool(server: McpServer, client: HaClient): void;
|
|
@@ -5,7 +5,7 @@ import { triggerAutomationSchema, toToolResult, wrapToolHandler, Permission } fr
|
|
|
5
5
|
export function registerTriggerAutomationTool(server, client) {
|
|
6
6
|
server.registerTool('triggerAutomation', {
|
|
7
7
|
description: 'Manually trigger a Home Assistant automation. Can optionally pass variables to the automation.',
|
|
8
|
-
inputSchema: triggerAutomationSchema
|
|
8
|
+
inputSchema: triggerAutomationSchema,
|
|
9
9
|
}, wrapToolHandler('triggerAutomation', async ({ entity_id, variables }) => {
|
|
10
10
|
const result = await client.triggerAutomation(entity_id, variables);
|
|
11
11
|
return toToolResult({ success: true, entity_id, message: 'Automation triggered successfully', context: result.context });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triggerAutomation.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/triggerAutomation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKlG,MAAM,UAAU,6BAA6B,CAAC,MAAiB,EAAE,MAAgB;IAC/E,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,WAAW,EAAE,gGAAgG;QAC7G,WAAW,EAAE,uBAAuB
|
|
1
|
+
{"version":3,"file":"triggerAutomation.js","sourceRoot":"","sources":["../../../src/tools/homeassistant/triggerAutomation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAKlG,MAAM,UAAU,6BAA6B,CAAC,MAAiB,EAAE,MAAgB;IAC/E,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,WAAW,EAAE,gGAAgG;QAC7G,WAAW,EAAE,uBAAuB;KACrC,EACD,eAAe,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAyB,EAAE,EAAE;QAC7F,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAgD,CAAC,CAAC;QAC3G,OAAO,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,mCAAmC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3H,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CACzB,CAAC;AACJ,CAAC"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Tools index - registers all MCP tools organized by domain
|
|
3
3
|
*/
|
|
4
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
5
5
|
import type { HaClient } from '../haClient/index.js';
|
|
6
6
|
import type { LocalAIClient } from '../localAI/index.js';
|
|
7
7
|
import type { OmadaClient } from '../omadaClient/index.js';
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* URL, method, headers, or body. Redirects are refused; responses are
|
|
12
12
|
* truncated before they re-enter the context window.
|
|
13
13
|
*/
|
|
14
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
14
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
15
15
|
import type { RestAction } from './actions.js';
|
|
16
16
|
export type { RestAction } from './actions.js';
|
|
17
17
|
export { parseRestActions } from './actions.js';
|
|
@@ -60,7 +60,7 @@ export function registerInfraTools(server, actions) {
|
|
|
60
60
|
'(method, URL, and credentials come from server config — only the name is chosen here). ' +
|
|
61
61
|
`Available actions: ${catalogue}. ` +
|
|
62
62
|
'Actions have real-world effects (deploys, restarts, webhooks) - confirm with the user before applying.',
|
|
63
|
-
inputSchema: inputSchema
|
|
63
|
+
inputSchema: inputSchema,
|
|
64
64
|
}, wrapToolHandler('invokeAction', async ({ action }) => {
|
|
65
65
|
// Own-property, exact-match lookup. The registry has a null prototype,
|
|
66
66
|
// so names like 'constructor' or '__proto__' can never resolve to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/infra/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAK/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,wEAAwE;AACxE,MAAM,kBAAkB,GAAG,OAAO,CAAC;AACnC,4EAA4E;AAC5E,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,sFAAsF;AACtF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE5C,2EAA2E;AAC3E,MAAM,UAAU,oBAAoB;IAChC,SAAS,CAAC,KAAK,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,OAAmC;IACrF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,KAAK;SAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACP,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhB,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,MAAM,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,EAAE,EAAE,mCAAmC,CAAC;aAC5C,QAAQ,CAAC,yDAAyD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;KAC7F,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,cAAc,EACd;QACI,WAAW,EACP,iGAAiG;YACjG,yFAAyF;YACzF,sBAAsB,SAAS,IAAI;YACnC,wGAAwG;QAC5G,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/infra/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerBlockClientTool(server: McpServer, client: OmadaClient): void;
|
|
@@ -8,7 +8,7 @@ export function registerBlockClientTool(server, client) {
|
|
|
8
8
|
server.registerTool('omada_blockClient', {
|
|
9
9
|
description: 'Block a client from the network by MAC address. The client is denied all network access until unblocked. ' +
|
|
10
10
|
'Use omada_listClients first to find the exact MAC. This affects real network connectivity - confirm with the user before applying.',
|
|
11
|
-
inputSchema: inputSchema
|
|
11
|
+
inputSchema: inputSchema,
|
|
12
12
|
}, wrapToolHandler('omada_blockClient', async ({ clientMac, siteId }) => toToolResult(await client.blockClient(clientMac, siteId)), Permission.CONTROL));
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=blockClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockClient.js","sourceRoot":"","sources":["../../../src/tools/omada/blockClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAmB;IAC1E,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,mBAAmB,EACnB;QACI,WAAW,EACP,2GAA2G;YAC3G,oIAAoI;QACxI,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"blockClient.js","sourceRoot":"","sources":["../../../src/tools/omada/blockClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAmB;IAC1E,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,mBAAmB,EACnB;QACI,WAAW,EACP,2GAA2G;YAC3G,oIAAoI;QACxI,WAAW,EAAE,WAAW;KAC3B,EACD,eAAe,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CACjE,YAAY,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EACzD,UAAU,CAAC,OAAO,CACrB,CACJ,CAAC;AACN,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerCyclePoePortTool(server: McpServer, client: OmadaClient): void;
|
|
@@ -12,7 +12,7 @@ export function registerCyclePoePortTool(server, client) {
|
|
|
12
12
|
'ports; the switch itself and other ports are unaffected. Use omada_listDevices to find the switch MAC ' +
|
|
13
13
|
'and identify which port powers which device first. The powered device goes down for the cycle - ' +
|
|
14
14
|
'confirm with the user before applying.',
|
|
15
|
-
inputSchema: inputSchema
|
|
15
|
+
inputSchema: inputSchema,
|
|
16
16
|
}, wrapToolHandler('omada_cyclePoePort', async ({ switchMac, ports, siteId }) => {
|
|
17
17
|
await client.cyclePoePorts(switchMac, ports, siteId);
|
|
18
18
|
return toToolResult({ switchMac, ports, status: 'poe-recovery triggered' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cyclePoePort.js","sourceRoot":"","sources":["../../../src/tools/omada/cyclePoePort.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAmB;IAC3E,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yDAAyD,CAAC;QACvF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;QAC1F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,oBAAoB,EACpB;QACI,WAAW,EACP,kGAAkG;YAClG,sGAAsG;YACtG,wGAAwG;YACxG,kGAAkG;YAClG,wCAAwC;QAC5C,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"cyclePoePort.js","sourceRoot":"","sources":["../../../src/tools/omada/cyclePoePort.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAmB;IAC3E,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yDAAyD,CAAC;QACvF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;QAC1F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,oBAAoB,EACpB;QACI,WAAW,EACP,kGAAkG;YAClG,sGAAsG;YACtG,wGAAwG;YACxG,kGAAkG;YAClG,wCAAwC;QAC5C,WAAW,EAAE,WAAW;KAC3B,EACD,eAAe,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACzE,MAAM,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,YAAY,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAChF,CAAC,EACG,UAAU,CAAC,OAAO,CACrB,CACJ,CAAC;AACN,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerDisableClientRateLimitTool(server: McpServer, client: OmadaClient): void;
|
|
@@ -7,7 +7,7 @@ export function registerDisableClientRateLimitTool(server, client) {
|
|
|
7
7
|
});
|
|
8
8
|
server.registerTool('omada_disableClientRateLimit', {
|
|
9
9
|
description: 'Remove bandwidth limits from a client',
|
|
10
|
-
inputSchema: inputSchema
|
|
10
|
+
inputSchema: inputSchema,
|
|
11
11
|
}, wrapToolHandler('omada_disableClientRateLimit', async ({ clientMac, siteId }) => toToolResult(await client.disableClientRateLimit(clientMac, siteId)), Permission.CONTROL));
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=disableClientRateLimit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disableClientRateLimit.js","sourceRoot":"","sources":["../../../src/tools/omada/disableClientRateLimit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,kCAAkC,CAAC,MAAiB,EAAE,MAAmB;IACrF,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,8BAA8B,EAC9B;QACI,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"disableClientRateLimit.js","sourceRoot":"","sources":["../../../src/tools/omada/disableClientRateLimit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,UAAU,kCAAkC,CAAC,MAAiB,EAAE,MAAmB;IACrF,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CACf,8BAA8B,EAC9B;QACI,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE,WAAW;KAC3B,EACD,eAAe,CAAC,8BAA8B,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAC5E,YAAY,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EACpE,UAAU,CAAC,OAAO,CACrB,CACJ,CAAC;AACN,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerGetClientTool(server: McpServer, client: OmadaClient): void;
|
|
@@ -2,7 +2,7 @@ import { clientIdSchema, toToolResult, wrapToolHandler, Permission } from '../co
|
|
|
2
2
|
export function registerGetClientTool(server, client) {
|
|
3
3
|
server.registerTool('omada_getClient', {
|
|
4
4
|
description: 'Get detailed information about a specific connected client',
|
|
5
|
-
inputSchema: clientIdSchema
|
|
5
|
+
inputSchema: clientIdSchema,
|
|
6
6
|
}, wrapToolHandler('omada_getClient', async ({ clientId, siteId }) => toToolResult(await client.getClient(clientId, siteId)), Permission.QUERY));
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=getClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getClient.js","sourceRoot":"","sources":["../../../src/tools/omada/getClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getClient.js","sourceRoot":"","sources":["../../../src/tools/omada/getClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzF,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAmB;IACxE,MAAM,CAAC,YAAY,CACf,iBAAiB,EACjB;QACI,WAAW,EAAE,4DAA4D;QACzE,WAAW,EAAE,cAAc;KAC9B,EACD,eAAe,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAC/I,CAAC;AACN,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerGetDeviceTool(server: McpServer, client: OmadaClient): void;
|
|
@@ -2,7 +2,7 @@ import { deviceIdSchema, toToolResult, wrapToolHandler, Permission } from '../co
|
|
|
2
2
|
export function registerGetDeviceTool(server, client) {
|
|
3
3
|
server.registerTool('omada_getDevice', {
|
|
4
4
|
description: 'Get detailed information about a specific network device',
|
|
5
|
-
inputSchema: deviceIdSchema
|
|
5
|
+
inputSchema: deviceIdSchema,
|
|
6
6
|
}, wrapToolHandler('omada_getDevice', async ({ deviceId, siteId }) => toToolResult(await client.getDevice(deviceId, siteId)), Permission.QUERY));
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=getDevice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDevice.js","sourceRoot":"","sources":["../../../src/tools/omada/getDevice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getDevice.js","sourceRoot":"","sources":["../../../src/tools/omada/getDevice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzF,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAmB;IACxE,MAAM,CAAC,YAAY,CACf,iBAAiB,EACjB;QACI,WAAW,EAAE,0DAA0D;QACvE,WAAW,EAAE,cAAc;KAC9B,EACD,eAAe,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAC/I,CAAC;AACN,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { McpServer } from '@modelcontextprotocol/
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
2
|
import type { OmadaClient } from '../../omadaClient/index.js';
|
|
3
3
|
export declare function registerGetFirewallSettingTool(server: McpServer, client: OmadaClient): void;
|