欢迎光临
我们一直在努力

我把中国 AI 客服国标做成了一个 MCP Server,并发布到了官方 Registry

从写代码到过 DNS 认证进官方注册中心,全程踩坑记录。

在线服务:https://savantcat.cn/mcp | 注册名:cn.savantcat/answers

起因

2026 年 9 月 1 日,GB/T 47746—2026《顾客联络服务 人工与智能客户服务协同要求》正式实施。

我把它的合规要点整理成了一份结构化的问答库:哪些场景必须自动转人工、上线要走备案还是登记、知识库怎么切分……每条答案带条款依据。

整理完发现一个问题:它是文档,只有人能读。 而企业里越来越多的活是 Agent 在干。

所以决定把它暴露成 MCP,让任何 Agent 直接调用。


一、技术选型

MCP 官方 Python SDK,用 streamable-http 传输、无状态模式。

mcp >= 1.9 transport: streamable-http (stateless)

选无状态的原因:远程部署时不需要维护 session,任何客户端一次 POST 就能拿到结果,横向扩展也简单。

启动态形:

server.run(
transport=\”http\”,
host=\”127.0.0.1\”,
port=8765,
stateless=True,
)

Nginx 侧只需要一条精确匹配,把 /mcp 转发进去:

location = /mcp {
proxy_pass http://127.0.0.1:8765;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_buffering off; # SSE 必须关,否则响应被缓冲住
}

proxy_buffering off 是关键。streamable-http 返回的是 text/event-stream,开着缓冲会导致客户端一直等不到数据。


二、踩坑一:421 Invalid Host header

服务本地跑得好好的,域名访问直接:

421 Invalid Host header

原因:MCP SDK 内置了 DNS rebinding 防护。默认只信任 localhost,请求头里的 Host 不是它认识的,一律拒绝。

这是好事,说明 SDK 默认是安全的。修法是显式声明信任的域名:

from mcp.server.transport_security import Transp

赞(0)
未经允许不得转载:171主机测评 » 我把中国 AI 客服国标做成了一个 MCP Server,并发布到了官方 Registry
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址