-
Notifications
You must be signed in to change notification settings - Fork 9
refactor, improve docs #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The workspace names were changed during refactoring but package-lock.json wasn't updated, causing CI failures with npm ci
Simplified the repository to have a single OAuth pattern with separate auth and MCP servers at the top level. Preserved embedded OAuth documentation as an alternative pattern.
- Fix information exposure: return generic error instead of stack traces in sse.ts - Add missing rate limiting to root route in index.ts
- Rename oauth-patterns.md to oauth-architecture-patterns.md for clarity - Fix session-ownership.md test commands to run from mcp-server directory - Update redisTransport.ts path reference to include mcp-server prefix
Server starts immediately and retries auth connection in background. Splash page and health endpoint remain accessible in degraded mode.
Fix PKCE implementation, SSE parsing, error handling, and usage clarity. Add --help flag and improve output messaging for both examples.
- Add /health endpoint to docs/endpoints.md for MCP server - Document degraded mode behavior in Common Issues section - Update OAuth metadata endpoint to mention 503 responses
Consolidate three redundant 'Production Replacement' sections into a single canonical location in docs/oauth-architecture-patterns.md. Both server READMEs now point to this guide.
- Create docs/customization-guide.md with guidance on replacing demo functionality - Add customization section to main README - Fix all references to renamed oauth-architecture-patterns.md - Update repository structure comments to clarify what to replace vs keep
8f9a0db
to
695f9f6
Compare
- Remove unused mcpAuthMetadataRouter import - Fix authMetadata type (use Record<string, unknown> instead of any) - Add rate limiting to all MCP endpoints (/mcp, /sse, /message)
cc5c68b
to
78f87bb
Compare
Add documentation explaining that SSE transport requires /sse endpoint and Streamable HTTP requires /mcp endpoint. This is a common mistake when using MCP Inspector.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Simplify to single OAuth pattern with separate auth server
This PR simplifies the MCP example server by removing the integrated OAuth mode (previously "AUTH_MODE=integrated"), leaving only the separate auth server pattern. This creates a cleaner, more maintainable codebase that better demonstrates production-ready OAuth delegation.
Summary of Changes
Why This Simplification?
The separate auth server pattern better represents real-world deployments where authentication is delegated to specialized providers (Auth0, Okta, Google OAuth, etc). The integrated mode added complexity without providing significant educational value.
Test Status
✅ All 79 tests pass
✅ Build and lint successful
✅ Security vulnerabilities fixed