modelcontextprotocol / modelcontextprotocol/registry
GitHub auth: org namespace permission not granted despite public membership + OAuth restrictions removed
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 7.3k
- Forks
- 994
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 19
Description
Summary
GitHub device-flow login consistently grants only the personal namespace (io.github.<user>/*) and never the organization namespace (io.github.<org>/*), even after satisfying the documented requirements.
Environment
- mcp-publisher: latest release binary (Windows amd64, downloaded 2026-08-19)
- Auth:
mcp-publisher login github(device flow) - User:
yusufcemres— owner of orgsololabstr - Target name:
io.github.sololabstr/uisight
Steps taken (in order, re-logging-in after each change)
- Initial publish → 403: "You have permission to publish: io.github.yusufcemres/"* with the hint about public org membership.
- Made org membership public — verified externally:
GET https://api.github.com/orgs/sololabstr/public_members/yusufcemresreturns 204. - Fresh
login github+ publish → same 403, permission list unchanged. - Removed the org's third-party OAuth application access restrictions entirely (Settings → Third-party application access policy → "Remove restrictions").
- Fresh
login github+ publish → same 403, permission list still onlyio.github.yusufcemres/*.
Expected
After public membership (and especially after removing OAuth app restrictions), a fresh login should include io.github.sololabstr/* in the permission set for an org owner.
Actual
Permission set never includes the org namespace. Worked around by publishing as io.github.yusufcemres/uisight (would love to migrate to the org namespace once this is resolved).
Happy to provide timestamps or retry with a debug build.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the mcp-publisher login github device-flow entry point and follow the permission check used during publish. Compare how public membership and OAuth restrictions are evaluated with the GitHub API response for sololabstr. Done means a fresh login grants io.github.sololabstr/* when the documented organization conditions are met.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, go
- Domain
- authentication, authorization
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100