Spec-driven MCP server for the Freebox OS API, generated from the official documentation.
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"freebox-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# freebox-mcp A **spec-driven** [Model Context Protocol](https://modelcontextprotocol.io) server for the **Freebox OS API** — exposing the *entire* local API of your Freebox Server to any MCP client (Claude, etc.) as ready-to-call tools. Every tool is generated from an **OpenAPI 3.1** document that is itself **auto-generated from the official Freebox documentation** (<https://dev.freebox.fr/sdk/os/>). When Free ships a new API version, a scheduled job on a France-reachable host regenerates the spec; on a change it ships a release automatically — **no hand-written tool code to maintain**. ### Three bricks, one contract ``` ┌── 1. SCRAPER ──┐ ┌──── 2. GENERATOR ────┐ ┌─── 3. GENERATED CLIENT ───┐ official docs ─► tools/cache ─────────► spec/freebox-openapi.json ─► FastMCP.from_openapi() ─► MCP tools (dev.freebox.fr) (html + objects.inv) (pure Python — no AI) (raw output — no edits) ``` **The whole pipeline is deterministic — no AI anywhere.** The scraper and generator are pure Python; the generated client is the verbatim output of `FastMCP.from_openapi(spec)` — no tool is hand-added, edited, pre-processed, or post-processed. A CI test (`test_tools_are_raw_generated_output`) enforces the last step: every exposed tool must be an `operationId` from the generated spec, or the build fails. The only hand-written code is the authenticated transport the generated client *runs on* (discovery · HMAC session · TLS · envelope unwrap) — things no API spec can express. It is generic, never edited per-endpoint, and app registration / login live in the CLI, not as injected tools. - **Exhaustive** — every documented operation across every section (wifi, lan, connection, calls, contacts, downloads, fs, nat, dhcp, vpn server + client, pvr, parental control, airmedia, system, …) becomes a tool. `login` (auth handshake) and `/ws/` (WebSocket) are excluded. Run `freebox-mcp sections` for the live list and counts. - **Self-maintaining** — rege…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.