Repository navigation
Fixed
- The Wi-Fi tools check
boxandap_idas given, like every other ID
that goes into a request path: one holding/,.., whitespace or a
control character is avalidation_errorthat names the argument, and
nothing is sent.ap_idwas trimmed and sent (AA:BB:CC:DD:EE:FFwent
out without its space), and a refusedboxorap_idcame back as an
api_error.get_access_point_channelsnow checksap_idbefore it
lists the boxes. - On a multi-box account with no
box,FIREWALLA_BOX_IDor
FIREWALLA_DEFAULT_BOX_ID, the Wi-Fi tools answer avalidation_error
that lists the boxes, asrename_devicedoes, instead of anapi_error.
Their descriptions say how they pick the box; they named only
FIREWALLA_BOX_ID.get_access_point_channels'ap_idexample is an
invented MAC. scripts/functional-test.mjsexpected 24 tools (35 with the write tools),
so it failed on 2.1.0. It expects 28 (39), passesboxto the Wi-Fi
tools and takesap_idfromget_access_points. Its box seed read
data.results, whichget_boxesdoes not answer, so it never had a box;
it readsdata.boxes, an online box first. Run 2026-10-08 against the
live API withoutFIREWALLA_BOX_ID: 38 of 38 checks passed.- The client guides,
servers/firewalla-mcp-server/server.yaml, the Open
WebUI guide's write-tools paragraph, the heading in CLAUDE.md and the
source comments still said 24 read-only tools (35 with the write tools);
they say 28 (39). SPEC.md linked to the README's old tool-list heading. - The Docker Build workflow's example image is
amittell/firewalla-mcp-server:2.1.0; the1.4.1tag it named was
deleted from Docker Hub on 2026-10-01.server.yamlpins7c59cea
(v2.1.0), the commit docker/mcp-registry#5249 now carries.
Changed
- docs/firewalla-api-reference.md describes the Wi-Fi endpoints as measured
on 2026-10-08: all four answered 200, withintf,allocation,
stpPort, and for a wireless uplinkupstreamAP,upstreamRSSIand the
uplink'sband,ssidandrssi, besides the fields #98 listed; no
access point measured hadpowerType. A box with no access points
answers[],[]and{}.
Security
- Development dependencies only; the npm package and the Docker image
install none of them.nodemon, which no script ran, is removed, and
with it braces 3.0.3 (GHSA-vfj7-8cjw-p6xm, high). An npm override gives
@istanbuljs/load-nyc-configjs-yaml 4, which drops argparse 1 and
sprintf-js 1.0.3 (GHSA-hp3w-g68c-fv3c, medium). Neither advisory has a
patched version. load-nyc-config calls only js-yaml'sload, which 4.x
keeps, and only for a.nycrc.yaml, which this repository does not
have.npm auditreports 0 vulnerabilities in 556 packages; it reported
23 (20 moderate, 3 high) in 578.
What's Changed
- fix: Wi-Fi tool IDs, the live harness, dev advisories and tool counts after 2.1.0 by @amittell in #99
- chore: release 2.1.1 by @amittell in #100
- Revert "chore: release 2.1.1" by @amittell in #101
- chore: pin server.yaml to v2.1.0, as docker/mcp-registry#5249 now does by @amittell in #102
- chore: release 2.1.1 by @amittell in #103
Full Changelog: v2.1.0...v2.1.1