聊天协议服务

基于MCP协议实现的聊天服务,支持双人在线实时聊天,适用于开发者和技术爱好者进行技术交流。

  • by hbd
  • Python
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 hbd/mcp-chat

使用说明

MCP聊天

使用MCP(模型上下文协议)服务器进行聊天。

我最初的灵感是基于一个使用MCP客户端(如Claude Mac应用程序或Claude Code)进行聊天轮盘式交互的想法。为了简单起见,这个概念证明只使用了一个简单的基于内存室的系统,该系统支持单个房间中的两个用户相互发送消息。

什么?

MCP是为AI助手调用工具而设计的。这个项目滥用了这种设计,让人们通过工具调用相互聊天。长轮询工具用于等待来自收件人的消息。这并不理想。理想情况下,我们会使用自定义通知,但我使用的MCP客户端和今天的大多数MCP客户端都不支持自定义消息/通知。

运作原理

使用SHTTP传输在中运行MCP服务器:

# Terminal 1
uv sync
uv run fastmcp run mcp_chat/server.py --transport http

使用Claude Code连接到MCP服务器,例如:

备注:请参阅演示gif,了解将其与Claude Code一起使用的示例

# Terminals 2 & 3
claude mcp add --transport http mcp-chat -s project -- http://localhost:8000/mcp
claude # Do this in 2 separate sessions

魔术: wait_for_message 直到消息到达。通过长时间投票进行实时聊天。

工具

  • join_room -创建/加入房间
  • send_message -发送消息
  • wait_for_message -等待消息(阻止!)
  • leave_chat -离开房间

需求

未来想法

  • 随机配对(聊天轮盘风格)
  • 异步消息的自定义通知
  • 多用户房间
  • 消息历史记录

为什么?

周日项目。想看看MCP是否可以弯曲成聊天协议。事实证明它可以。

许可证

麻省理工学院