unifi-network-mcp 0.3.2__py3-none-any.whl → 0.3.3__py3-none-any.whl
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.
- src/_version.py +34 -0
- src/tools/network.py +12 -1
- src/tools_manifest.json +1 -1
- {unifi_network_mcp-0.3.2.dist-info → unifi_network_mcp-0.3.3.dist-info}/METADATA +2 -2
- {unifi_network_mcp-0.3.2.dist-info → unifi_network_mcp-0.3.3.dist-info}/RECORD +9 -8
- {unifi_network_mcp-0.3.2.data → unifi_network_mcp-0.3.3.data}/data/share/unifi-network-mcp/.well-known/mcp-server.json +0 -0
- {unifi_network_mcp-0.3.2.dist-info → unifi_network_mcp-0.3.3.dist-info}/WHEEL +0 -0
- {unifi_network_mcp-0.3.2.dist-info → unifi_network_mcp-0.3.3.dist-info}/entry_points.txt +0 -0
- {unifi_network_mcp-0.3.2.dist-info → unifi_network_mcp-0.3.3.dist-info}/licenses/LICENSE +0 -0
src/_version.py
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# file generated by setuptools-scm
|
|
2
|
+
# don't change, don't track in version control
|
|
3
|
+
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
TYPE_CHECKING = False
|
|
14
|
+
if TYPE_CHECKING:
|
|
15
|
+
from typing import Tuple
|
|
16
|
+
from typing import Union
|
|
17
|
+
|
|
18
|
+
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
20
|
+
else:
|
|
21
|
+
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
23
|
+
|
|
24
|
+
version: str
|
|
25
|
+
__version__: str
|
|
26
|
+
__version_tuple__: VERSION_TUPLE
|
|
27
|
+
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
30
|
+
|
|
31
|
+
__version__ = version = '0.3.3'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 3, 3)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|
src/tools/network.py
CHANGED
|
@@ -170,7 +170,7 @@ async def get_network_details(network_id: str) -> Dict[str, Any]:
|
|
|
170
170
|
|
|
171
171
|
@server.tool(
|
|
172
172
|
name="unifi_update_network",
|
|
173
|
-
description="Update specific fields of an existing network (LAN/VLAN). Requires confirmation.",
|
|
173
|
+
description="Update specific fields of an existing network (LAN/VLAN). Requires confirmation. Note: Network isolation is only supported on 'corporate' networks, not 'guest' networks.",
|
|
174
174
|
permission_category="networks",
|
|
175
175
|
permission_action="update",
|
|
176
176
|
)
|
|
@@ -193,9 +193,15 @@ async def update_network(network_id: str, update_data: Dict[str, Any], confirm:
|
|
|
193
193
|
- dhcp_start (string): New DHCP start IP.
|
|
194
194
|
- dhcp_stop (string): New DHCP stop IP.
|
|
195
195
|
- enabled (boolean): Enable/disable the entire network.
|
|
196
|
+
- network_isolation_enabled (boolean): Enable network isolation (IMPORTANT: Only works on networks with purpose="corporate").
|
|
196
197
|
# Add other relevant fields from NetworkSchema here if needed
|
|
197
198
|
confirm (bool): Must be set to `True` to execute. Defaults to `False`.
|
|
198
199
|
|
|
200
|
+
Important Constraints:
|
|
201
|
+
- Network isolation (network_isolation_enabled) is ONLY supported on networks with purpose="corporate".
|
|
202
|
+
- Attempting to enable isolation on "guest" or other network types will fail with an API error.
|
|
203
|
+
- To isolate a guest network: (1) Change its purpose from "guest" to "corporate", then (2) enable network_isolation_enabled.
|
|
204
|
+
|
|
199
205
|
Returns:
|
|
200
206
|
Dict: Success status, ID, updated fields, details, or error message.
|
|
201
207
|
Example (success):
|
|
@@ -317,6 +323,11 @@ async def create_network(network_data: Dict[str, Any], confirm: bool = False) ->
|
|
|
317
323
|
- vlan (integer): VLAN ID (required if vlan_enabled is true)
|
|
318
324
|
- dhcp_enabled (boolean): Whether DHCP is enabled (default: true)
|
|
319
325
|
- enabled (boolean): Whether the network is enabled (default: true)
|
|
326
|
+
- network_isolation_enabled (boolean): Enable network isolation (IMPORTANT: Only works on networks with purpose="corporate")
|
|
327
|
+
|
|
328
|
+
Important Constraints:
|
|
329
|
+
- Network isolation (network_isolation_enabled) is ONLY supported on networks with purpose="corporate".
|
|
330
|
+
- It cannot be enabled on "guest" networks.
|
|
320
331
|
|
|
321
332
|
Example:
|
|
322
333
|
{
|
src/tools_manifest.json
CHANGED
|
@@ -1239,7 +1239,7 @@
|
|
|
1239
1239
|
}
|
|
1240
1240
|
},
|
|
1241
1241
|
{
|
|
1242
|
-
"description": "Update specific fields of an existing network (LAN/VLAN). Requires confirmation.",
|
|
1242
|
+
"description": "Update specific fields of an existing network (LAN/VLAN). Requires confirmation. Note: Network isolation is only supported on 'corporate' networks, not 'guest' networks.",
|
|
1243
1243
|
"name": "unifi_update_network",
|
|
1244
1244
|
"schema": {
|
|
1245
1245
|
"input": {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: unifi-network-mcp
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Summary: Unifi Network MCP Server
|
|
5
5
|
License-File: LICENSE
|
|
6
6
|
Requires-Python: >=3.13
|
|
7
7
|
Requires-Dist: aiohttp>=3.8.5
|
|
8
|
-
Requires-Dist: aiounifi>=
|
|
8
|
+
Requires-Dist: aiounifi>=88
|
|
9
9
|
Requires-Dist: jsonschema>=4.17.0
|
|
10
10
|
Requires-Dist: mcp[cli]>=1.21.2
|
|
11
11
|
Requires-Dist: omegaconf>=2.3.0
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
src/_version.py,sha256=lemL_4Kl75FgrO6lVuFrrtw6-Dcf9wtXBalKkXuzkO4,704
|
|
1
2
|
src/bootstrap.py,sha256=mqkDDfn5xKRzun07TS8xPLZm_WnfLt3xTguxxFnfRV0,7572
|
|
2
3
|
src/jobs.py,sha256=3IUO8ChpeRUjyJTWeFlyIwtkQLv-_KvfzuA5Ra4PmDI,5984
|
|
3
4
|
src/main.py,sha256=7ZCXXzSoHFsXuA_FdNwJhcLtjMtTzK4sxah7ahzmEHs,15456
|
|
@@ -26,7 +27,7 @@ src/tools/devices.py,sha256=t29mGFr-_KSLUomgeNDHZcKGbtSIp9gLlckKsLDHAww,17454
|
|
|
26
27
|
src/tools/events.py,sha256=rnPu8XIGhjkP-KcXk2-J6JRJnMgAsJNkIFWxHww43zs,6070
|
|
27
28
|
src/tools/firewall.py,sha256=ClQ4P6scYivpuoq2b0TR9UEVQ07s2ykmYXdxcuzvxeM,30118
|
|
28
29
|
src/tools/hotspot.py,sha256=RmTgtOMnwsv7IWJYCdldJNim1akjy8CLP8ROplY4uDA,8418
|
|
29
|
-
src/tools/network.py,sha256=
|
|
30
|
+
src/tools/network.py,sha256=usGK5DmHlqVpiVTzwPgBGC-GMW1pPM7ztenoEdKtPlg,34987
|
|
30
31
|
src/tools/port_forwards.py,sha256=H8K0DMtwqUBCO9kixUzb9PuoYhnE_CJE7nwfhOk1v44,25612
|
|
31
32
|
src/tools/qos.py,sha256=Ym3W5Y7zrRLfH9xqy5Tz2-amYn9QnoIvFG3F5X3FQzI,21554
|
|
32
33
|
src/tools/routing.py,sha256=vaf4UX2MiDmCC9RvzLgLWXTVSEdzUwM6qMpUHaxz67I,11263
|
|
@@ -41,11 +42,11 @@ src/utils/lazy_tool_loader.py,sha256=0GdfF7z06U_pvx7hmUE1jWEOFMFFo3WS9PWEEwkpXG4
|
|
|
41
42
|
src/utils/meta_tools.py,sha256=XlLkzFEvrZsDEiXxMq_Lz22ZGZ8mMzbjx6krYJS-JD4,13172
|
|
42
43
|
src/utils/permissions.py,sha256=GGg81gCPBo18Ra9NWGgHO3pPzX1EFUAt_Xd9gbUfKQo,4060
|
|
43
44
|
src/utils/tool_loader.py,sha256=QpfHOxyZ_bzPJM0SItB7UM8uW_p7vl2Sm25rfgfwsAY,4147
|
|
44
|
-
src/tools_manifest.json,sha256=
|
|
45
|
+
src/tools_manifest.json,sha256=G7j9-pKly9fGvjc7vDwoMqQROvpbhwafWu4UY9dPMjU,37902
|
|
45
46
|
src/config/config.yaml,sha256=FPoDva21XrUqgiwXTahVa5tDy_aNTeOL3cT8DTxyICU,3953
|
|
46
|
-
unifi_network_mcp-0.3.
|
|
47
|
-
unifi_network_mcp-0.3.
|
|
48
|
-
unifi_network_mcp-0.3.
|
|
49
|
-
unifi_network_mcp-0.3.
|
|
50
|
-
unifi_network_mcp-0.3.
|
|
51
|
-
unifi_network_mcp-0.3.
|
|
47
|
+
unifi_network_mcp-0.3.3.data/data/share/unifi-network-mcp/.well-known/mcp-server.json,sha256=Ru2oF_SdOzkathJVTQ6R0bRB-NTmiXLlNVvsp7GqmPs,1427
|
|
48
|
+
unifi_network_mcp-0.3.3.dist-info/METADATA,sha256=mh3_yBFka-P5kdGAy_qgcIH80z2O-OACpc8LRz9lKhg,38282
|
|
49
|
+
unifi_network_mcp-0.3.3.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
50
|
+
unifi_network_mcp-0.3.3.dist-info/entry_points.txt,sha256=iDs5JXOBoUROpkuTXoxr-1WSrz1FLEgI0TO4pFsZ8u0,52
|
|
51
|
+
unifi_network_mcp-0.3.3.dist-info/licenses/LICENSE,sha256=1tMHOACX4Nse1DzgSKufrvTGztT8kS71LE8l29IAvto,1068
|
|
52
|
+
unifi_network_mcp-0.3.3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|