• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pomerium / pomerium / 21485441037
44%

Build:
DEFAULT BRANCH: main
Ran 29 Jan 2026 04:12PM UTC
Jobs 1
Files 656
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 Jan 2026 04:05PM UTC coverage: 44.716% (-0.009%) from 44.725%
21485441037

push

github

web-flow
mcp: improve domain validation UX and make allowed domains optional (#6066)

## Summary

This PR improves the user experience when MCP client domains are not
authorized and makes `mcp_allowed_client_id_domains` optional instead of
required.

**Previously:** 
- `mcp_allowed_client_id_domains` was required when MCP was enabled,
which was too restrictive
- Users saw a generic JSON error `{"error":"invalid_client"}` when their
client domain wasn't authorized

**Now:**
- `mcp_allowed_client_id_domains` is optional (empty list is valid) to
support dynamic client registration
- Users see a user-friendly HTML error page explaining:
  - Which domain was rejected
- How to fix it (contact admin to add domain to
`mcp_allowed_client_id_domains`)
  - Clear, actionable guidance

## Related issues

Fix https://linear.app/pomerium/issue/ENG-3513

## User Explanation

When using MCP (Model Context Protocol) with URL-based client IDs, if
your client's domain is not in the allowed list, you'll now see a clear
error page in your browser explaining the issue and what to do, instead
of a cryptic JSON error.

Administrators can now also enable MCP without pre-configuring allowed
domains if they only want to use dynamic client registration.

## Checklist

- [x] reference any related issues (N/A - internal improvement)
- [x] updated unit tests
- [x] add appropriate label (`enhancement`)
- [x] ready for review

0 of 15 new or added lines in 1 file covered. (0.0%)

10 existing lines in 4 files now uncovered.

30928 of 69165 relevant lines covered (44.72%)

103.0 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
15
1.9
-0.11% internal/mcp/handler_authorization.go

Uncovered Existing Lines

Lines Coverage ∆ File
1
82.24
-0.2% pkg/envoy/resource_monitor_linux.go
3
90.69
2.94% config/config_source.go
3
57.67
-0.79% internal/controlplane/server.go
3
51.35
-0.58% internal/databroker/server_clustered_follower.go
Jobs
ID Job ID Ran Files Coverage
1 21485441037.1 29 Jan 2026 04:12PM UTC 656
44.72
GitHub Action Run
Source Files on build 21485441037
  • Tree
  • List 656
  • Changed 6
  • Source Changed 2
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #21485441037
  • c92c4a58 on github
  • Prev Build on main (#21483476223)
  • Next Build on main (#21494088809)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc