使用说明
MCP聊天
一个简单的Python聊天应用程序,演示MCP(模型上下文协议)客户端-服务器架构。
内置于 FastMCP
特性
- 客户端-服务器体系结构:带CLI客户端的基于HTTP的MCP服务器
- 持续聊天记录:消息存储在
.mcp-chat文件,在重新启动后仍然存在 - 自动刷新客户端:新消息会自动出现,无需轮询命令
- 报文编号:使用消息编号跟踪您看到的消息
- MCP工具:四种聊天操作工具(发送、检索、计数、同步)
- 人/代理人区分:消息被标记并显示为视觉指示器(👤 对于人类来说,🤖 代理商)
- FastMCP供电:基于现代装饰器的MCP框架构建
- CLI包:可通过pip使用全局CLI命令安装
安装
选项1:从GitHub安装(推荐)
直接从GitHub安装软件包:
pip install git+<this repository url>
这将安装 mcp-chat 打包并生成CLI命令 mcp-chat-server 和 mcp-chat-client 全球可用。
选项2:手动安装
如果您更喜欢从源代码运行而不安装:
pip install -r requirements.txt
python -m mcp_chat.server # Run server
python -m mcp_chat.client # Run client
用法
运行服务器
MCP服务器在上以HTTP模式运行 localhost:8000:
mcp-chat-server
服务器将启动并等待客户端连接。它提供了客户可以使用的MCP工具。
特征:
- 聊天记录会自动保存到
.mcp-chat在当前工作目录中 - 历史记录在服务器重新启动时持续存在
- 支持多个并发客户端连接
运行客户端
CLI客户端连接到正在运行的MCP服务器:
mcp-chat-client
特征:
- 连接时自动加载最后10条消息
- 每2秒自动刷新一次新消息
- 无需命令-只需键入并发送消息
- 按Ctrl+C退出
您可以选择指定自定义服务器URL:
mcp-chat-client http://custom-server:8000/mcp
MCP工具
服务器提供四种MCP工具:
1. send_message
向聊天室发送消息。
参数:
user(string,必填):发件人的用户名message(string,必填):消息内容is_human(boolean,可选):发送者是否为人类(默认值:false)
例子:
{
"user": "Agent",
"message": "Hello from the AI agent!",
"is_human": false
}
2. get_recent_messages
使用消息编号检索最近的聊天消息。
参数:
count(number,可选):要检索的邮件数(默认值:10)
例子:
{
"count": 5
}
3. get_messages_since
仅获取特定消息编号后的新消息(对轮询有用)。
参数:
since(number,必填):从中开始的消息编号(不包括)。必须为0或更大。
例子:
{
"since": 5
}
4. get_message_count
获取聊天记录中的消息总数。
退货: 当前邮件计数。
需求
- Python 3.10或更高版本
- FastMCP(
pip install fastmcp)