ames-unifi-mcp 1.0.4 → 1.0.6

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/README.md CHANGED
@@ -17,7 +17,7 @@
17
17
 
18
18
  <p align="center">
19
19
  <a href="https://www.npmjs.com/package/ames-unifi-mcp"><img src="https://img.shields.io/npm/v/ames-unifi-mcp?style=flat-square&color=f5a542" alt="npm"></a>
20
- <a href="https://github.com/oliverames/ames-unifi-mcp/releases/tag/v1.0.3"><img src="https://img.shields.io/github/v/release/oliverames/ames-unifi-mcp?style=flat-square&color=f5a542&label=MCPB" alt="MCPB release"></a>
20
+ <a href="https://github.com/oliverames/ames-unifi-mcp/releases/tag/v1.0.6"><img src="https://img.shields.io/github/v/release/oliverames/ames-unifi-mcp?style=flat-square&color=f5a542&label=MCPB" alt="MCPB release"></a>
21
21
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-f5a542?style=flat-square" alt="License"></a>
22
22
  <a href="https://www.buymeacoffee.com/oliverames"><img src="https://img.shields.io/badge/Buy_Me_a_Coffee-support-f5a542?style=flat-square&logo=buy-me-a-coffee&logoColor=white" alt="Buy Me a Coffee"></a>
23
23
  </p>
@@ -44,9 +44,9 @@ Every mutating operation passes through a **confirm gate** that returns a dry-ru
44
44
 
45
45
  ### Install with MCPB
46
46
 
47
- For Claude Desktop and other MCPB-compatible clients, download the local bundle from the [v1.0.3 release](https://github.com/oliverames/ames-unifi-mcp/releases/tag/v1.0.3):
47
+ For Claude Desktop and other MCPB-compatible clients, download the local bundle from the [v1.0.6 release](https://github.com/oliverames/ames-unifi-mcp/releases/tag/v1.0.6):
48
48
 
49
- [Download `ames-unifi-mcp-1.0.3.mcpb`](https://github.com/oliverames/ames-unifi-mcp/releases/download/v1.0.3/ames-unifi-mcp-1.0.3.mcpb)
49
+ [Download `ames-unifi-mcp-1.0.6.mcpb`](https://github.com/oliverames/ames-unifi-mcp/releases/download/v1.0.6/ames-unifi-mcp-1.0.6.mcpb)
50
50
 
51
51
  The bundle includes the UniFi favicon, production runtime binaries for macOS and Linux, and setup prompts for host, authentication, site, SSL, tool mode, and permission profile.
52
52
 
@@ -136,7 +136,7 @@ If a tool isn't in the index, the controller firmware is too old to support it.
136
136
  <tr>
137
137
  <td width="50%" valign="top">
138
138
 
139
- **Devices** &mdash; 29 tools
139
+ **Devices** &mdash; 63 tools
140
140
  ```
141
141
  device_list device_restart
142
142
  device_get device_adopt
@@ -146,9 +146,12 @@ device_spectrum_scan device_rolling_upgrade_*
146
146
  device_migrate device_port_action
147
147
  device_list_v2 device_stats_latest
148
148
  device_unadopt device_pending_list
149
+ system_device_tags system_tag_*
150
+ switching_stack_* switching_lag_*
151
+ switching_mclag_* cloud_device_list
149
152
  ```
150
153
 
151
- **Clients** &mdash; 15 tools
154
+ **Clients** &mdash; 16 tools
152
155
  ```
153
156
  client_list_active client_block/unblock
154
157
  client_get client_reconnect
@@ -157,112 +160,107 @@ client_rename client_update
157
160
  client_list_v2 client_action
158
161
  ```
159
162
 
160
- **Networks** &mdash; 10 tools
163
+ **Networks** &mdash; 39 tools
161
164
  ```
162
- network_list network_create
163
- network_get network_update
164
- network_delete network_*_v2 (Integration API)
165
+ network_list network_create
166
+ network_get network_update
167
+ network_delete network_*_v2
168
+ system_network_references
169
+ system_radius_profiles_v2
170
+ dns_policy_* system_portprofile_*
165
171
  ```
166
172
 
167
- **Wireless (WLAN + WiFi)** &mdash; 12 tools
173
+ **Wireless (WLAN + WiFi)** &mdash; 14 tools
168
174
  ```
169
175
  wlan_list wlan_create/update/delete
170
176
  wlan_enable wlan_disable
171
177
  wifi_broadcast_list/get/create/update/delete
172
178
  ```
173
179
 
174
- **Firewall** &mdash; 23 tools
180
+ **Firewall** &mdash; 30 tools
175
181
  ```
176
182
  firewall_rule_* (legacy CRUD)
177
183
  firewall_group_* (address/port groups)
178
184
  firewall_zone_* (ZBF zones, 9.0+)
179
185
  firewall_policy_* (ZBF policies + ordering)
186
+ acl_rule_* acl_rule_ordering_*
180
187
  ```
181
188
 
182
- **ACL Rules** &mdash; 7 tools
189
+ **QoS** &mdash; 10 tools
183
190
  ```
184
- acl_rule_list/get/create/update/delete
185
- acl_rule_ordering_get/set
186
- ```
187
-
188
- **DNS Policies** &mdash; 5 tools
189
- ```
190
- dns_policy_list/get/create/update/delete
191
+ traffic_matching_list_* (10.0+)
191
192
  ```
192
193
 
193
- **Traffic & QoS** &mdash; 15 tools
194
+ **Routing** &mdash; 10 tools
194
195
  ```
195
196
  traffic_rule_* (v2 API rules)
196
197
  traffic_route_* (v2 API routes)
197
- traffic_matching_list_* (10.0+)
198
+ system_static_route_*
198
199
  ```
199
200
 
200
- </td>
201
- <td width="50%" valign="top">
202
-
203
201
  **VPN** &mdash; 10 tools
204
202
  ```
205
203
  vpn_server_list/get/create/update/delete
206
204
  vpn_tunnel_list/get/create/update/delete
207
205
  ```
208
206
 
209
- **Switching** &mdash; 15 tools
210
- ```
211
- switching_stack_* (switch stacks)
212
- switching_lag_* (link aggregation)
213
- switching_mclag_* (MC-LAG domains)
214
- ```
207
+ </td>
208
+ <td width="50%" valign="top">
215
209
 
216
- **Stats & DPI** &mdash; 24 tools
210
+ **Stats** &mdash; 20 tools
217
211
  ```
218
212
  stats_site_health stats_sysinfo
219
213
  stats_dashboard stats_report
220
214
  stats_speedtest_* stats_ips_events
221
215
  stats_rogueap stats_spectrumscan
216
+ ```
217
+
218
+ **DPI** &mdash; 11 tools
219
+ ```
222
220
  stats_dpi_site stats_dpi_client
223
221
  stats_dpi_apps stats_dpi_categories
222
+ misc_dpigroup_*
224
223
  ```
225
224
 
226
- **Events & Alarms** &mdash; 5 tools
225
+ **Events** &mdash; 8 tools
227
226
  ```
228
227
  event_list alarm_list
229
228
  alarm_count alarm_archive
230
229
  alarm_archive_all
231
230
  ```
232
231
 
233
- **Hotspot & Guests** &mdash; 13 tools
232
+ **Hotspot** &mdash; 27 tools
234
233
  ```
235
234
  hotspot_authorize/unauthorize_guest
236
235
  hotspot_create_voucher hotspot_extend
237
236
  hotspot_voucher_*_v2 (Integration API)
238
237
  hotspot_config hotspot_packages
238
+ misc_hotspotop_* hotspot_2_0_package_*
239
239
  ```
240
240
 
241
- **System & Settings** &mdash; 53 tools
241
+ **System** &mdash; 27 tools
242
242
  ```
243
243
  system_reboot/poweroff system_settings
244
- system_backup_* system_firmware_*
245
- system_port_forward_* system_static_route_*
246
- system_usergroup_* system_portprofile_*
247
- system_dhcpoption_* system_radiusprofile_*
248
- system_tag_* system_led_toggle
244
+ system_firmware_* admin_site_*
245
+ admin_invite/revoke cloud_host_list/get
246
+ cloud_site_list cloud_sdwan_*
247
+ ```
248
+
249
+ **Settings** &mdash; 19 tools
250
+ ```
251
+ system_setting_* system_led_toggle
252
+ system_ips_update misc_scheduletask_*
253
+ misc_cnt_resource
249
254
  ```
250
255
 
251
- **Cloud API** &mdash; 9 tools
256
+ **Backup** &mdash; 5 tools
252
257
  ```
253
- cloud_host_list/get cloud_site_list
254
- cloud_device_list cloud_isp_metrics
255
- cloud_sdwan_*
258
+ system_backup_* backup_restore
256
259
  ```
257
260
 
258
- **Admin & Misc** &mdash; 56 tools
261
+ **PoE** &mdash; 1 tool
259
262
  ```
260
- admin_site_create/delete/rename
261
- admin_invite/revoke/grant/update
262
- poe_power_cycle syslog_query
263
- apgroup_* misc_rogueknown_*
264
- misc_scheduletask_* misc_hotspotop_*
265
- misc_dpigroup_* misc_cnt_resource
263
+ poe_power_cycle
266
264
  ```
267
265
 
268
266
  </td>
@@ -0,0 +1,43 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { spawn } = require("child_process");
4
+ const path = require("path");
5
+ const os = require("os");
6
+
7
+ const binaryName = "ames-unifi-mcp";
8
+
9
+ const platformMap = {
10
+ "darwin-arm64": `${binaryName}-darwin-arm64`,
11
+ "darwin-x64": `${binaryName}-darwin-amd64`,
12
+ "linux-arm64": `${binaryName}-linux-arm64`,
13
+ "linux-x64": `${binaryName}-linux-amd64`,
14
+ };
15
+
16
+ const key = `${os.platform()}-${os.arch()}`;
17
+ const platformBinary = platformMap[key];
18
+
19
+ if (!platformBinary) {
20
+ console.error(
21
+ `Unsupported platform: ${key}. Supported: ${Object.keys(platformMap).join(", ")}`
22
+ );
23
+ process.exit(1);
24
+ }
25
+
26
+ const binaryPath = path.join(__dirname, "..", "dist", platformBinary);
27
+ const child = spawn(binaryPath, process.argv.slice(2), {
28
+ stdio: "inherit",
29
+ });
30
+
31
+ child.on("error", (error) => {
32
+ console.error(`Failed to start ${binaryName}: ${error.message}`);
33
+ process.exit(1);
34
+ });
35
+
36
+ child.on("exit", (code, signal) => {
37
+ if (signal) {
38
+ process.kill(process.pid, signal);
39
+ return;
40
+ }
41
+
42
+ process.exit(code ?? 0);
43
+ });
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ames-unifi-mcp",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "UniFi Network MCP server — 310 tools for complete controller management via the Model Context Protocol",
5
5
  "keywords": [
6
6
  "mcp",
@@ -20,7 +20,7 @@
20
20
  "license": "MIT",
21
21
  "repository": {
22
22
  "type": "git",
23
- "url": "https://github.com/oliverames/ames-unifi-mcp.git"
23
+ "url": "git+https://github.com/oliverames/ames-unifi-mcp.git"
24
24
  },
25
25
  "homepage": "https://github.com/oliverames/ames-unifi-mcp#readme",
26
26
  "bugs": {
@@ -30,14 +30,14 @@
30
30
  "ames-unifi-mcp": "bin/ames-unifi-mcp"
31
31
  },
32
32
  "files": [
33
- "dist/",
34
- "install.js",
33
+ "bin/ames-unifi-mcp",
34
+ "dist/ames-unifi-mcp-darwin-arm64",
35
+ "dist/ames-unifi-mcp-darwin-amd64",
36
+ "dist/ames-unifi-mcp-linux-arm64",
37
+ "dist/ames-unifi-mcp-linux-amd64",
35
38
  "README.md",
36
39
  "LICENSE"
37
40
  ],
38
- "scripts": {
39
- "postinstall": "node install.js"
40
- },
41
41
  "os": [
42
42
  "darwin",
43
43
  "linux"
package/install.js DELETED
@@ -1,57 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // Postinstall script: copies the correct platform binary to bin/ames-unifi-mcp
4
-
5
- const fs = require("fs");
6
- const path = require("path");
7
- const os = require("os");
8
-
9
- const BINARY_NAME = "ames-unifi-mcp";
10
-
11
- const PLATFORM_MAP = {
12
- "darwin-arm64": `${BINARY_NAME}-darwin-arm64`,
13
- "darwin-x64": `${BINARY_NAME}-darwin-amd64`,
14
- "linux-arm64": `${BINARY_NAME}-linux-arm64`,
15
- "linux-x64": `${BINARY_NAME}-linux-amd64`,
16
- };
17
-
18
- function install() {
19
- const platform = os.platform();
20
- const arch = os.arch();
21
- const key = `${platform}-${arch}`;
22
-
23
- const binaryFile = PLATFORM_MAP[key];
24
- if (!binaryFile) {
25
- console.error(
26
- `Unsupported platform: ${platform}-${arch}. ` +
27
- `Supported: ${Object.keys(PLATFORM_MAP).join(", ")}`
28
- );
29
- process.exit(1);
30
- }
31
-
32
- const distDir = path.join(__dirname, "dist");
33
- const binDir = path.join(__dirname, "bin");
34
- const src = path.join(distDir, binaryFile);
35
- const dest = path.join(binDir, BINARY_NAME);
36
-
37
- if (!fs.existsSync(src)) {
38
- console.error(`Binary not found: ${src}`);
39
- console.error("Try rebuilding: make build-all");
40
- process.exit(1);
41
- }
42
-
43
- // Ensure bin/ exists
44
- if (!fs.existsSync(binDir)) {
45
- fs.mkdirSync(binDir, { recursive: true });
46
- }
47
-
48
- // Copy binary
49
- fs.copyFileSync(src, dest);
50
-
51
- // Make executable
52
- fs.chmodSync(dest, 0o755);
53
-
54
- console.log(`Installed ${BINARY_NAME} for ${platform}/${arch}`);
55
- }
56
-
57
- install();