Skip to content

v0.0.2 - Operator scope clarity and reference docs

Choose a tag to compare

@jgstew jgstew released this 03 Aug 20:41

Documentation and correctness refinements. No change to the tool surface.

Operator scope is now explicit

Every BigFix result is limited to what the configured operator can see; only a master operator has full visibility, and a regular operator cannot distinguish "does not exist" from "outside my scope". That caveat is now carried in the server instructions, the session_relevance_query and whoami descriptions, and the client query targeting description, so MCP clients don't report scoped counts as absolute totals.

Not-found errors say so too: computer group and operator lookups now report that the item "may not exist, or may not be visible to the configured operator."

New documentation

  • docs/client-query.md — client fast query protocol reference: request/response XML, the result row schema captured from a live BigFix 11 root server (computerID, computerName, subQueryID, isFailure, result, ResponseTime), confirmation that the results envelope has no completion flag, and the termination heuristics with their failure modes.
  • docs/besapi-notes.md — besapi behaviors this wrapper depends on or works around, verified against source: uneven error surfacing (only 403 and login raise), connection lifecycle gotchas (__enter__ without __exit__, __bool__ triggering a login, logout() not resetting last_connected), inconsistent method return shapes, and the site-path state.
  • docs/design-decisions.md — rationale for the read-only-by-construction approach, the lazy connection instead of a lifespan, escaping over CDATA, and FastMCP 4 beta specifics.

Fixes

Corrected a test fixture that included a totalResults key the real server does not return — the live envelope contains only results.