@usex/mikrotik-mcp 5.6.0 → 5.8.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.
Files changed (36) hide show
  1. package/README.md +61 -22
  2. package/dist/cli.js +75679 -4194
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.js +15035 -66
  5. package/dist/shared/cli-ejryxvb3.js +13 -0
  6. package/dist/shared/library-hsq1a106.js +11 -0
  7. package/dist/shared/{cli-gyqfq9j6.js → library-srhzw8ym.js} +36138 -27615
  8. package/dist/ui/aaa.html +48 -58
  9. package/dist/ui/connected-devices.html +48 -58
  10. package/dist/ui/dashboard.html +48 -58
  11. package/dist/ui/firewall-audit.html +48 -58
  12. package/dist/ui/firewall.html +49 -59
  13. package/dist/ui/interfaces.html +48 -58
  14. package/dist/ui/observability.html +169 -69
  15. package/dist/ui/records.html +49 -59
  16. package/package.json +34 -25
  17. package/prompts/build-tunnel-transactionally.md +13 -10
  18. package/schemas/README.md +1 -1
  19. package/schemas/config.schema.json +79 -0
  20. package/schemas/tool-catalog.json +514 -10
  21. package/schemas/tools/audit_service_contracts.json +7 -0
  22. package/schemas/tools/create_investigation.json +42 -0
  23. package/schemas/tools/create_service_contract.json +53 -0
  24. package/schemas/tools/get_investigation.json +14 -0
  25. package/schemas/tools/inspect_flow_path.json +50 -0
  26. package/schemas/tools/list_client_flow_candidates.json +14 -0
  27. package/schemas/tools/list_investigations.json +7 -0
  28. package/schemas/tools/list_service_contracts.json +7 -0
  29. package/schemas/tools/list_service_probe_targets.json +7 -0
  30. package/schemas/tools/run_service_contract.json +14 -0
  31. package/schemas/tools/service_contract_history.json +14 -0
  32. package/schemas/tools/start_rollout.json +21 -0
  33. package/schemas/tools/trace_round_trip.json +129 -0
  34. package/dist/shared/cli-h41j14aw.js +0 -13
  35. package/dist/shared/library-135yzct0.js +0 -45586
  36. package/dist/shared/library-v52e871r.js +0 -13
@@ -0,0 +1,53 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "create_service_contract",
4
+ "type": "object",
5
+ "properties": {
6
+ "name": {
7
+ "type": "string",
8
+ "minLength": 1,
9
+ "maxLength": 120
10
+ },
11
+ "checks": {
12
+ "minItems": 1,
13
+ "maxItems": 10,
14
+ "type": "array",
15
+ "items": {
16
+ "type": "object",
17
+ "properties": {
18
+ "target": {
19
+ "type": "string",
20
+ "minLength": 1,
21
+ "maxLength": 64
22
+ },
23
+ "maxLatencyMs": {
24
+ "default": 2000,
25
+ "type": "integer",
26
+ "minimum": 1,
27
+ "maximum": 10000
28
+ },
29
+ "expectedStatus": {
30
+ "default": [200],
31
+ "minItems": 1,
32
+ "maxItems": 10,
33
+ "type": "array",
34
+ "items": {
35
+ "type": "integer",
36
+ "minimum": 200,
37
+ "maximum": 599
38
+ }
39
+ }
40
+ },
41
+ "required": ["target", "maxLatencyMs", "expectedStatus"],
42
+ "additionalProperties": false
43
+ }
44
+ },
45
+ "packetSuiteId": {
46
+ "type": "string",
47
+ "minLength": 1,
48
+ "maxLength": 120
49
+ }
50
+ },
51
+ "required": ["name", "checks"],
52
+ "additionalProperties": false
53
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "get_investigation",
4
+ "type": "object",
5
+ "properties": {
6
+ "id": {
7
+ "type": "string",
8
+ "format": "uuid",
9
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
10
+ }
11
+ },
12
+ "required": ["id"],
13
+ "additionalProperties": false
14
+ }
@@ -0,0 +1,50 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "inspect_flow_path",
4
+ "type": "object",
5
+ "properties": {
6
+ "client": {
7
+ "type": "string",
8
+ "format": "ipv4",
9
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
10
+ },
11
+ "destination": {
12
+ "type": "string",
13
+ "format": "ipv4",
14
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
15
+ },
16
+ "source_port": {
17
+ "type": "integer",
18
+ "minimum": 1,
19
+ "maximum": 65535
20
+ },
21
+ "destination_port": {
22
+ "type": "integer",
23
+ "minimum": 1,
24
+ "maximum": 65535
25
+ },
26
+ "protocol": {
27
+ "type": "string",
28
+ "enum": ["tcp", "udp"]
29
+ },
30
+ "interface_names": {
31
+ "default": [],
32
+ "maxItems": 8,
33
+ "type": "array",
34
+ "items": {
35
+ "type": "string",
36
+ "minLength": 1,
37
+ "maxLength": 128
38
+ }
39
+ }
40
+ },
41
+ "required": [
42
+ "client",
43
+ "destination",
44
+ "source_port",
45
+ "destination_port",
46
+ "protocol",
47
+ "interface_names"
48
+ ],
49
+ "additionalProperties": false
50
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "list_client_flow_candidates",
4
+ "type": "object",
5
+ "properties": {
6
+ "client": {
7
+ "type": "string",
8
+ "format": "ipv4",
9
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
10
+ }
11
+ },
12
+ "required": ["client"],
13
+ "additionalProperties": false
14
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "list_investigations",
4
+ "type": "object",
5
+ "properties": {},
6
+ "additionalProperties": false
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "list_service_contracts",
4
+ "type": "object",
5
+ "properties": {},
6
+ "additionalProperties": false
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "list_service_probe_targets",
4
+ "type": "object",
5
+ "properties": {},
6
+ "additionalProperties": false
7
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "run_service_contract",
4
+ "type": "object",
5
+ "properties": {
6
+ "id": {
7
+ "type": "string",
8
+ "format": "uuid",
9
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
10
+ }
11
+ },
12
+ "required": ["id"],
13
+ "additionalProperties": false
14
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "service_contract_history",
4
+ "type": "object",
5
+ "properties": {
6
+ "id": {
7
+ "type": "string",
8
+ "format": "uuid",
9
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
10
+ }
11
+ },
12
+ "required": ["id"],
13
+ "additionalProperties": false
14
+ }
@@ -3,6 +3,27 @@
3
3
  "title": "start_rollout",
4
4
  "type": "object",
5
5
  "properties": {
6
+ "service_contracts": {
7
+ "description": "Optional service contracts: must pass before any change and after every wave. Probes originate from the MCP host, not the router. Unknown blocks the gate.",
8
+ "maxItems": 10,
9
+ "type": "array",
10
+ "items": {
11
+ "type": "object",
12
+ "properties": {
13
+ "id": {
14
+ "type": "string",
15
+ "format": "uuid",
16
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
17
+ },
18
+ "device": {
19
+ "type": "string",
20
+ "minLength": 1
21
+ }
22
+ },
23
+ "required": ["id", "device"],
24
+ "additionalProperties": false
25
+ }
26
+ },
6
27
  "commands": {
7
28
  "anyOf": [
8
29
  {
@@ -0,0 +1,129 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "trace_round_trip",
4
+ "type": "object",
5
+ "properties": {
6
+ "snapshots": {
7
+ "minItems": 1,
8
+ "maxItems": 8,
9
+ "type": "array",
10
+ "items": {
11
+ "type": "object",
12
+ "properties": {
13
+ "device": {
14
+ "type": "string",
15
+ "minLength": 1,
16
+ "maxLength": 128
17
+ },
18
+ "id": {
19
+ "type": "string",
20
+ "minLength": 1,
21
+ "maxLength": 128
22
+ }
23
+ },
24
+ "required": ["device", "id"],
25
+ "additionalProperties": false
26
+ }
27
+ },
28
+ "forward": {
29
+ "minItems": 1,
30
+ "maxItems": 8,
31
+ "type": "array",
32
+ "items": {
33
+ "type": "object",
34
+ "properties": {
35
+ "device": {
36
+ "type": "string",
37
+ "minLength": 1,
38
+ "maxLength": 128
39
+ },
40
+ "ingress": {
41
+ "type": "string",
42
+ "minLength": 1,
43
+ "maxLength": 128
44
+ },
45
+ "egress": {
46
+ "type": "string",
47
+ "minLength": 1,
48
+ "maxLength": 128
49
+ }
50
+ },
51
+ "required": ["device", "ingress", "egress"],
52
+ "additionalProperties": false
53
+ }
54
+ },
55
+ "reverse": {
56
+ "minItems": 1,
57
+ "maxItems": 8,
58
+ "type": "array",
59
+ "items": {
60
+ "type": "object",
61
+ "properties": {
62
+ "device": {
63
+ "type": "string",
64
+ "minLength": 1,
65
+ "maxLength": 128
66
+ },
67
+ "ingress": {
68
+ "type": "string",
69
+ "minLength": 1,
70
+ "maxLength": 128
71
+ },
72
+ "egress": {
73
+ "type": "string",
74
+ "minLength": 1,
75
+ "maxLength": 128
76
+ }
77
+ },
78
+ "required": ["device", "ingress", "egress"],
79
+ "additionalProperties": false
80
+ }
81
+ },
82
+ "packet": {
83
+ "type": "object",
84
+ "properties": {
85
+ "srcAddress": {
86
+ "type": "string",
87
+ "format": "ipv4",
88
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
89
+ },
90
+ "dstAddress": {
91
+ "type": "string",
92
+ "format": "ipv4",
93
+ "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
94
+ },
95
+ "protocol": {
96
+ "default": "tcp",
97
+ "type": "string",
98
+ "enum": ["tcp", "udp", "icmp"]
99
+ },
100
+ "srcPort": {
101
+ "type": "integer",
102
+ "minimum": 1,
103
+ "maximum": 65535
104
+ },
105
+ "dstPort": {
106
+ "type": "integer",
107
+ "minimum": 1,
108
+ "maximum": 65535
109
+ }
110
+ },
111
+ "required": ["srcAddress", "dstAddress", "protocol"],
112
+ "additionalProperties": false
113
+ },
114
+ "maxAgeSeconds": {
115
+ "default": 900,
116
+ "type": "integer",
117
+ "minimum": 1,
118
+ "maximum": 86400
119
+ },
120
+ "maxSkewSeconds": {
121
+ "default": 120,
122
+ "type": "integer",
123
+ "minimum": 0,
124
+ "maximum": 3600
125
+ }
126
+ },
127
+ "required": ["snapshots", "forward", "reverse", "packet", "maxAgeSeconds", "maxSkewSeconds"],
128
+ "additionalProperties": false
129
+ }
@@ -1,13 +0,0 @@
1
- // @bun
2
- import {
3
- ALWAYS_ON_MODULES,
4
- allToolModules,
5
- moduleCatalog,
6
- selectToolModules
7
- } from "./cli-gyqfq9j6.js";
8
- export {
9
- selectToolModules,
10
- moduleCatalog,
11
- allToolModules,
12
- ALWAYS_ON_MODULES
13
- };