Skip to content

πŸš€ Promote develop β†’ main (@maxhealth.tech/mcp-http) - #22

Merged
quotentiroler merged 2 commits into
mainfrom
develop
Aug 7, 2026
Merged

πŸš€ Promote develop β†’ main (@maxhealth.tech/mcp-http)#22
quotentiroler merged 2 commits into
mainfrom
develop

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Automated PR β€” merging develop into main.

Merging publishes to npm: release.yml stamps the changelog, tags, and publishes.

Commits ahead of main: 2
Updated: 2026-08-07 16:43:13 UTC

Closes #21, and the adoptable half of #18.

#21 β€” the spec requires servers to validate Origin on all incoming connections
and answer 403 when it is present and invalid, as a DNS-rebinding defence. We
only omitted Access-Control-Allow-Origin, which stops the browser reading the
response but not the server executing the request: the tool call had already
run, which is the attack. isOriginAllowed() is separate from resolveOrigin()
because that one answers what header to emit, not whether to serve at all. A
test asserts the server factory is never invoked for a refused origin.

Gated only at the MCP endpoint, and only when cors.origin is explicit. The "*"
default and an absent Origin (non-browser caller) are unchanged, and the
well-known routes stay publicly fetchable.

#18 β€” the 401 challenge now comes from bearerAuthChallengeResponse. It adds
error="invalid_token" and error_description, which RFC 6750 wants and the
hand-rolled version omitted, plus an OAuth error body where there was none.
Three tests asserted the exact WWW-Authenticate string and now match on
substrings; that ordering was never part of the contract.

#18's oauthMetadataResponse half stays open: it requires a full RFC 8414
document and this package holds only an issuer URL.
#5 asked for an integration test passing a request through server/discover plus
a tool call. The tool call was covered when the delegation landed; this adds the
discovery half, so the criterion is met rather than assumed.
@quotentiroler
quotentiroler merged commit b0f3259 into main Aug 7, 2026
3 checks passed
Sign up for free to 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