使用说明
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-离开房间
需求
- Python 3.11+
- 紫外线 包管理器
未来想法
- 随机配对(聊天轮盘风格)
- 异步消息的自定义通知
- 多用户房间
- 消息历史记录
为什么?
周日项目。想看看MCP是否可以弯曲成聊天协议。事实证明它可以。
许可证
麻省理工学院
