项目简介
Brite Task是一个使用.NET 9和.NET Aspire开发的员工管理系统。它不仅包含传统的Web API和Blazor前端,还专门设计了一个符合Model Context Protocol (MCP) 标准的服务器组件('EM.McpServer'),旨在为AI代理提供上下文信息和操作工具,实现AI驱动的员工管理自动化和智能交互。
主要功能点
- 员工、部门、角色管理: 提供对员工、部门、角色的创建、读取、更新、删除(CRUD)操作。
- 员工搜索: 支持按姓名、部门、激活状态和入职日期范围搜索员工。
- 员工激活/停用: 快速切换员工的活跃状态。
- 角色权限: 管理角色及其关联的权限列表。
- AI代理集成: 通过MCP服务器,AI代理可以调用上述所有功能,实现智能查询、自动化管理任务等。
安装步骤
- 环境准备:
- 安装 .NET 9 SDK
- 安装 Docker / Podman (用于运行容器服务)
- 通过 Visual Studio Installer 安装 .NET Aspire SDK (在“单个组件”中查找)
- 构建解决方案: 在仓库的根目录执行以下命令:
dotnet build - 运行MCP服务器及所有依赖: 导航到 'src/Aspire/Brite-Task.AppHost' 目录,并运行:
此命令将启动包括PostgreSQL数据库、Keycloak身份认证服务、Garnet缓存以及MCP服务器在内的所有服务。MCP服务器将在 'https://localhost:7077/' 地址监听请求。dotnet run
MCP客户端服务器配置示例
以下是一个用于MCP客户端连接本MCP服务器的配置信息。请根据实际的MCP客户端工具或SDK进行相应的配置。
{ "serverName": "Brite-Task Employee Management MCP Server", "endpoint": "https://localhost:7077/", "authentication": { "type": "OAuth2", "metadataUrl": "http://localhost:8081/realms/tenant-1/.well-known/openid-configuration", "clientId": "backend-1", "clientSecret": "UfIMrte6w4gRCt2PYGL6ywPDtr1xR9cB", "scopes": ["openid", "profile"] } }
- 'serverName': 用户友好的MCP服务器名称。
- 'endpoint': MCP服务器的监听地址。
- 'authentication.type': 认证类型,此处为OAuth2。
- 'authentication.metadataUrl': Keycloak身份认证服务的OpenID Connect配置发现端点。
- 'authentication.clientId': 客户端ID,用于OAuth2认证。
- 'authentication.clientSecret': 客户端密钥,用于OAuth2认证。
- 'authentication.scopes': 请求的权限范围。
基本使用方法
MCP服务器启动并成功连接后,AI代理(MCP客户端)可以通过其暴露的工具(Tools)与员工管理系统进行交互。AI代理可以:
- 调用 'GetAllEmployees' 工具获取所有员工列表,例如询问“帮我列出所有在职员工”。
- 调用 'GetDepartmentById' 工具查询特定部门信息,例如询问“工程部有哪些信息?”。
- 调用 'CreateEmployee' 工具在系统中添加新员工,例如指令“添加一个名叫张三的员工,他的邮箱是[email protected]”。
- 调用 'UpdateRole' 工具修改现有角色的权限,例如指令“将HR角色的权限修改为只读”。
这些工具的使用方式将通过MCP协议的JSON-RPC请求由AI代理发起,实现AI对员工管理系统的智能操作和数据访问。
信息
分类
商业系统