This MCP server is exposed over a NETWORK transport (streamable-http / SSE) but was constructed with no authentication: no auth= and no token_verifier=.
Why AI tools produce this: AI coding tools generate this anti-pattern by default, it appears in a large share of AI-written auth code.
Why this matters
Its tools are reachable by anyone who can reach the port (CWE-306). A Knostic scan found none of ~2,000 internet-exposed MCP servers required auth; unauthenticated /mcp endpoints are the surface behind CVE-2026-66012 and the Q2-2026 MCP exposure wave.
Require auth before serving over the network: mcp = FastMCP("name", token_verifier=verifier, auth=AuthSettings(issuer_url=..., resource_server_url=..., required_scopes=[...])) (A stdio transport is local and out of scope for this rule.)
Suppressing this rule
If a finding is a genuine false positive, scope the suppression to the exact line and leave a reason, never disable the rule project-wide. Disable directives are line-scoped by design.
# oauthlint-disable-next-line auth.py.mcp.unauthenticated-server -- <reason>