-
Notifications
You must be signed in to change notification settings - Fork 48
Open
Description
Problem statement
Currently, components such as McpPrompt, McpTool, and McpResource hold a reference (nullable property and/or get_mcp_server() call) to McpServer, while McpServer itself owns or registers those same components.
This creates a circular dependency and a blur of responsibilities between “server”, “registry/manager”, and “component”.
Why this matters
- Circular dependencies complicate testing, maintenance, and future refactoring.
- The responsibility model is unclear: the server is both manager and owner, and components know about the server.
- For extensibility, a cleaner architecture is beneficial.
TODO
- Explore introducing a cleaner separation of responsibilities between server, component registry, and components.
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
No status