-
Notifications
You must be signed in to change notification settings - Fork 1
Feat/managed-mcp #25
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
Feat/managed-mcp #25
Conversation
This comment has been minimized.
This comment has been minimized.
|
The |
|
The PR description is empty. Please add a closing statement (e.g., 'Closes #123') to link the relevant issue. Kody Rule violation: Ensure PR closes referenced issues |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Found critical issues please review the requested changes
Kody Review CompleteGreat news! 🎉 Keep up the excellent work! 🚀 Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
|
The pull request description does not contain a closing statement (e.g., "Closes #123" or "Fixes owner/repo#456"). Please update the description to reference the issue being resolved. Kody Rule violation: Ensure PR closes referenced issues |
Based on the provided code changes, here is a precise description of the pull request:
Summary
This Pull Request introduces a flexible system for "Managed MCP Servers" driven by configuration files and significantly refactors the OAuth2 architecture to be more robust, centralized, and secure. It enables the application to support pre-configured MCP servers (like Sentry) with complex authentication flows alongside custom integrations.
Key Changes
Managed MCP Servers:
src/config/managed-mcp-servers.json).KodusMCPProviderto dynamically load server configurations, allowing for easy addition of new managed services (e.g., Sentry, Kodus Docs).OAuth2 Architecture Refactor:
IntegrationOAuthServiceto centralize OAuth logic, including discovery (.well-known), dynamic client registration, PKCE generation, authorization URL building, and token exchange/refresh.mcp_integration_oauth) and entity to store OAuth state (tokens, refresh tokens, PKCE verifiers, metadata) separately from the static integration configuration.src/common/utils/oauth.ts.Integration & Provider Updates:
CustomClientfor managed connections and implemented methods (initiateManagedOAuth,finalizeManagedOAuth) to handle authentication flows for managed servers.IntegrationOAuthServicefor retrieving valid access tokens and checking integration status.API & Infrastructure:
McpControllerto initialize and finalize OAuth flows for specific providers (/mcp/integration/:provider/oauth/...).scripts/mcp-auth-check.ts) to inspect MCP server authentication types.nest-cli.jsonto include configuration assets in the build output.