Token导航 LogoToken导航TokenDH.com
Go Kratos MCP Demo logo
运维云端未说明官方级别未说明来源级核验

Go Kratos MCP Demo

MCP Server

基于Go-Kratos框架和MCP协议的模块化推荐服务,支持召回、排序、过滤等模块化流程,具有多协议支持和可观测性。

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
多协议支持Go可观测性

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

tx7do

提供方

tx7do

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

基于 Go-Kratos 与 MCP 的模块化推荐服务

简短说明:本项目演示如何用 Go-Kratos 框架结合 MCP(模块化协同协议)构建可扩展、可观测的推荐服务,包含召回 / 过滤 / 排序等模块化流程与测试范例。

核心特性

  • 标准化契约:以 Protobuf 定义服务与上下文,便于多语言客户端与版本管理。
  • 模块化协同:通过 MCP 将召回、排序、过滤等模块串联,模块可独立开发与部署。
  • 多协议支持:同服务同时暴露 MCP 与 HTTP 接口,满足不同调用场景。
  • 可观测性与测试:支持链路追踪、日志、指标,并提供端到端与单元测试示例(兼容 Protobuf JSON 中 int64 被编码为 string 的情况)。

架构概览

  • 请求流:客户端 → MCP 请求 → 解析为内部 Context → 召回 → 排序 → 过滤 → 封装为 CallToolResult 返回。
  • 依赖注入:使用 Kratos 的 wire 管理模块依赖,s/recall/rank/filter 服务独立实现逻辑并通过接口解耦。
  • 工具注册:在 MCP 服务启动时注册 recommend 工具并声明输入 Schema,调用方按协议传参即可。

快速上手

  1. 生成代码:make api openapi
  2. 生成依赖注入:make wire
  3. 启动服务:make run(同时启动 MCP 与 HTTP 服务)
  4. 本地测试:使用 MCP 客户端模拟调用,测试需注意对 int64 字段在 JSON 中可能为字符串的兼容断言。

测试与注意点

  • 推荐在测试中对 responseTime 使用 time.RFC3339Nano 校验;对 historyItemIds、blacklistItemIds 等 ID 列表做兼容字符串/数字的断言。
  • 在断言数值时,建议编写通用转换函数以支持 float64/string/int64 三种表现形式。

结论

本项目示例展示了「框架 + 协议」的协同价值:Kratos 提供服务治理与依赖注入能力,MCP 提供模块化协同标准。对需要模块化、可扩展且具备跨服务契约的推荐系统,该方案适合生产化落地。

项目链接

  • GitHub项目地址:
  • Gitee项目地址:
  • MCP 协议封装库:
  • Kratos Transport MCP 扩展:

目录标签

目录标签

多协议支持Go可观测性推荐系统本地部署模块化服务Go-Kratos

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP