Skip to content

fix: document the flags the server actually requires - #19

Merged
lakhansamani merged 2 commits into
mainfrom
fix/url-now-required
Aug 14, 2026
Merged

fix: document the flags the server actually requires#19
lakhansamani merged 2 commits into
mainfrom
fix/url-now-required

Conversation

@lakhansamani

Copy link
Copy Markdown
Contributor

Why

The setup line repeated verbatim in 11 READMEs predates two releases' worth of required flags. It does not merely lack --url — it fails before reaching it:

$ ./authorizer --database-type sqlite --database-url authorizer.db --admin-secret secret
Error: --encryption-key is required: no encryption key is set and --jwt-secret is empty ...

Adding --encryption-key then surfaces missing jwt type, then client ID missing in rootArgs, then --url is required. Four required flags missing in total.

What

Replaced with a command verified to boot against a build of authorizermain:

./authorizer \
--database-type sqlite --database-url authorizer.db \
--url http://localhost:8080 \
--jwt-type HS256 --jwt-secret <jwt-secret> \
--encryption-key "$(openssl rand -hex 32)" \
--client-id <client-id> --client-secret <client-secret> \
--admin-secret <admin-secret>

Also adds --url to with-org-saml and with-org-sso-oidc compose files and the with-k8s-tokenreview manifest. All three map 8080:8080, so the container's own address and the address the demo dials agree. All three validated as YAML.

Not changed: with-agent-permissions/run-server.sh and with-auth-recipes/run-server.sh already pass --url.

Related

The setup line repeated in 11 READMEs was v1-era and missing FOUR flags
the 2.4.0 server refuses to start without. As written it fails on the
first one before ever reaching the others:
$ ./authorizer --database-type sqlite --database-url authorizer.db \
--admin-secret secret
Error: --encryption-key is required: ...
Replaced with a command verified to boot against a build of authorizer
main: adds --url (authorizerdev/authorizer#764), --encryption-key,
--jwt-type/--jwt-secret and --client-id/--client-secret.
Also adds --url to the two org-SSO compose files and the k8s-tokenreview
manifest; all three map 8080:8080, so the container's own address and the
address the demo dials agree.
--url alone now suffices: authorizerdev/authorizer#768 makes
`authorizer mcp` honour it. Verified with `node mcp-agent.mjs --verify`
against a live server — all six assertions pass.
The example passed --url and --mcp-authorizer-url with the same value.
Removing the latter WITHOUT the server fix failed with
`rpc error: code = Unauthenticated`, which is how the underlying bug
was found.
@lakhansamani
lakhansamani merged commit a829226 into mainAug 14, 2026
@lakhansamani
lakhansamani deleted the fix/url-now-required branch August 14, 2026 06:21
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@lakhansamani