Skip to content

MCP + Agents #785

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

Open
wants to merge 41 commits into
base: features/mix-ai-agent
Choose a base branch
from
Open

Conversation

nhathoang989
Copy link
Member

No description provided.

nhathoang989 and others added 30 commits July 13, 2025 20:20
Enhanced documentation for the Mix CMS AI Agent, adding detailed instructions, context, and technical stack overview. Streamlined endpoint initialization in `InitController.cs` and removed unnecessary code in `MixPageContentController.cs` for better maintainability.

Refactored `MixApplicationService.cs` with null checks and improved error handling. Updated MySQL database constants to use `utf8mb4` for better character support, and modified migration files accordingly.

Refactored `MixEndpointService.cs` and enhanced `MixTemplateTool.cs` with new CRUD methods. Added `MixPostContentTool.cs` and `MixPageContentTool.cs` for managing content with robust validation.

Updated `ResourceTool.cs` for improved serialization and modified project file to include new references for better modularity.
Enhance `PlanningAgent.cs` by adding the `System.Linq` namespace to utilize LINQ methods for retrieving and formatting supported MCP tools into user prompts.

Update `Readme.md` to include a new "Architecture Overview" section, detailing the modular structure of the Mix MCP Lib and clarifying the roles of key agent classes in handling user requests and task execution.
Refactor `MqttHelper.cs` to improve MQTT client options with WebSocket and TLS support. Introduce `WebSocketUrl` method in `ConfigurationExtension.cs`. Update `BaseAgent.cs` to include `IKnowledgeBaseService` for contextual knowledge access. Modify agent classes to utilize new knowledge retrieval methods. Implement `IResourceCacheService` for efficient caching and add `IKnowledgeBaseService` and `ISemanticSearchService` for structured knowledge management and semantic search capabilities. Update `SemanticSearchTool` for MCP protocol integration and revise `Readme.md` to reflect new features.
- Refactored `HomeController.cs` for improved validation and database handling.
- Updated `appsettings.json` to switch from SQLite to PostgreSQL and added logging settings.
- Enhanced entity column parsing in `MixModuleContentViewModel.cs` for better data integrity.
- Included `AuthConfigService` in `InitCmsService.cs` for improved authentication management.
- Updated migration files for consistency across MySQL, PostgreSQL, SQL Server, and SQLite.
- Modified `TenantSecurityMiddleware.cs` for dynamic base URL handling.
- Improved WebSocket URL handling in `MqttHelper.cs`.
- Refactored `MixQueueSubscriber.cs` for a more efficient subscription process.
- Enhanced `KnowledgeBaseService.cs` for dynamic loading of knowledge entries.
- Changed input processing return types in agent files for structured responses.
- Updated tool classes to improve dependency management and logging.
- Overall improvements in structure, functionality, and maintainability across the codebase.
add detailed instructions for the Mix CMS AI agent, including context, technical stack, and database architecture. update module creation workflow in mix-content-instructions.md and summarize tools in mix-content-mcp-tool-summary.md. enhance guidelines for senior C# developers in razor-instructions.md to improve clarity and usability for developers.
…or AI agents, developer guidelines, and MCP tools reference

- Created README.md for Mix CMS instructions directory with links to guides for AI agents, developers, and quick references.
- Added developer-guide.md detailing technical guidelines for C# developers, including code standards, Razor Pages best practices, and MCP tool development.
- Introduced mcp-tools-reference.md as a complete reference for all MCP tools, including parameters and usage examples.
- Developed mix-ai-agent.md to assist AI agents in building and managing websites with Mix CMS, covering core concepts, toolbox commands, workflows, and best practices.
- Removed outdated mix-ai-agent.md and mix-content-instructions.md from ai-instructions directory.
- Removed mix-content-mcp-tool-summary.md from ai-instructions directory.
- Updated appsettings.json to switch from PostgreSQL to SQLite and adjusted logging and LLM service options.
Refactor InitApiController and InitCmsService to improve maintainability and clarity.
Remove unused services and introduce AuthConfigService for better authentication management.
Update configuration handling in InitCmsService to set values directly in the configuration object.
Enhance MixEndpointService for improved loading of application settings.
Add base URL checks in PublisherBase and SubscriberBase to enhance error handling.
Removed MixCacheDbContext from several controllers and the DatabaseService, indicating a shift in caching management. Updated UnitOfWorks to no longer register MixCacheDbContext as a scoped service. Increased delay in InitMqttClient for improved stability during initialization.
add MixCacheService parameter to constructors and method calls across multiple classes to improve database operation performance. update InitApiController to use IHostApplicationLifetime, and integrate caching in BaseMcpTool, MixDbPromptTool, MixModuleContentTool, MixNavigationTool, MixPageContentTool, MixPostContentTool, and MixTemplateTool. remove unused namespaces and add necessary using directives for new services.
… ClassStructureTool

- Removed MixCacheService from BaseMcpTool and related tools (MixDbPromptTool, MixModuleContentTool, MixNavigationTool, MixPageContentTool, MixPageModuleTool, MixPostContentTool, MixTemplateTool).
- Added new ClassStructureTool for retrieving class structure information.
- Updated repository calls in various tools to use null for cache service.
- Enhanced mcp-tools-reference documentation to include new features and architectural changes.
…umentation for generalization and best practices
…blog posts in Mix CMS

- Introduced `ai-workflows-basic-pages.md` for step-by-step instructions on creating webpages and templates.
- Added `ai-workflows-dynamic-data.md` detailing the creation and management of reusable modules with dynamic content.
- Created `ai-workflows-posts.md` to guide users in creating and managing blog posts and articles.
- Updated `mix-ai-agent.md` to reflect the new modular documentation structure and provide navigation to new guides.
- Added `mix-cms-reference.md` as a reference for enums and constants used in Mix CMS.
- Refactored partial rendering patterns and template usage examples for clarity and consistency.
- Removed unused application lifetime dependency in `InitApiController.cs` to streamline the controller.
Enhance documentation across various Markdown files related to Mix CMS.
Key updates include best practices for templates, data access, and image handling.
New sections emphasize the use of full, public URLs for images and provide clear examples
of template patterns and service usage. Additionally, updates to task documentation
requirements ensure proper recording of successful task executions for team collaboration.
Code snippets demonstrating correct model usage and data access patterns are also included
to improve clarity and usability for developers.
- Introduced a new markdown file detailing the creation and management of reusable modules with MixDb data.
- Updated the blog post creation workflow to include checks for existing templates and CRUD operations for post content.
- Enhanced the authentication configuration to ensure a unique SecretKey is generated if not already set.
- Improved the handling of application settings loading in various services to accommodate raw settings.
- Refactored the session configuration to streamline the setup process in the tenant service.
- Updated documentation for MixDb data tools to clarify column selection parameters.
… CMS

- Created a new document for Widget Templates detailing their structure, examples, best practices, and rendering methods.
- Introduced a complete guide for AI workflows in Mix CMS, covering essential patterns, workflows for creating pages, modules, blog posts, and managing database data, along with troubleshooting tips and best practices.
- Removed the entire widget templates documentation from `template-patterns-widgets.md` for a cleaner structure.
- Updated `ai-workflows-complete.md` to remove the layoutId parameter from the CreatePageContent function and adjusted the documentation date and notes accordingly.
…age service

- Introduced a new workflow document detailing the process of creating relationships between database tables in Mix CMS, including planning, creating tables, defining relationships, adding sample data, and creating templates.
- Updated `MqttMessageService.cs` to include a delay before logging exceptions and modified the condition for checking the MQTT setting to use WebSocket.
… enhance LLMChatHostedService logging, and refactor RestApiService to remove SignalR message sending
…ayout template guidelines, and introduce new navigation structure
…les, and blog posts in AI workflows documentation
deepsource-autofix bot and others added 11 commits July 28, 2025 13:45
This commit fixes the style issues introduced in 6091021 according to the output
from dotnet-format.

Details: #785
…roller, InitApiController, and Mqtt services
…nd update InitApiController to set primary domain from request headers
This commit fixes the style issues introduced in 0a45f05 according to the output
from dotnet-format.

Details: #785
…gration

- Added a conversation section in the dashboard for user interaction with AI.
- Implemented SignalR hub for LLM (Large Language Model) interactions.
- Updated BaseSignalRHub to manage connected users and handle user connections/disconnections.
- Introduced LLMHub to facilitate AI queries and responses.
- Modified various agents (ChatAgent, PlanningAgent, TaskAgent, etc.) to utilize SignalR for real-time messaging.
- Enhanced error handling and messaging for agent processes.
- Updated service registration and endpoint mapping for new SignalR hubs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants