主要观点:近期探索了 Model Context Protocol(MCP)在 Java 生态系统中的发展,开始实验编写 MCP 服务器,选择 Keycloak 编写实验性 MCP 服务器实现,介绍 MCP 的标准及作用,包括在本地开发和远程开发中的不同方式(Stdio 与 SSE),详细阐述 Keycloak 的相关内容,如创建 Keycloak MCP 服务器的步骤(包括添加依赖、创建服务类、编写工具类等),以及如何打包和运行应用,还提到用 Goose 运行应用并给出示例问题,最后总结创建 Keycloak MCP 服务器的过程及相关资源。
关键信息:
- MCP 是 Anthropic 于 2024 年 11 月推出的标准,旨在帮助社区编写和使用“工具”“提示”和“资源”。
- Keycloak 是开源身份和访问管理软件,当前版本 26,已广泛使用,提供单点登录等功能。
- 在 Keycloak 中,“领域”是所有配置和选项的逻辑命名空间,用于管理用户等。
- 创建 Keycloak MCP 服务器的步骤包括添加 Quarkus 扩展、创建服务类(如 UserService)和工具类(如 UserTool)等。
- 可通过添加特定属性进行应用打包,用 Goose 运行应用并可通过自然语言查询与 Keycloak 交互。
重要细节:
- 在创建 UserService 时,通过注入 Keycloak 客户端进行操作,如获取用户列表、创建用户等,并进行了详细的参数处理和错误处理。
- 在创建 UserTool 时,通过注入 UserService 和 ObjectMapper 进行转换,定义了获取用户和创建用户的工具方法,并对工具描述和参数进行了说明。
- 提供了相关资源的链接,如 Goose、MCP、Keycloak MCP 服务器等的 GitHub 仓库及相关文章。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。