Token导航 LogoToken导航

MCP Server · 地图位置

MCP SSE Client

12306-MCP智能查询客户端是一个基于JSON-RPC协议的火车票查询工具,提供智能会话记忆、用户偏好管理和自动重连等功能,适用于个人出行规划和票务查询。

stdio官方级别未说明来源级核验工具 0
Python位置天气搜索

快速开始

作者 / 组织
maozida880
提供方
maozida880

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

MCP SSE Client 属于地图位置类 MCP Server,公开资料标注 0 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

地图位置

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

pip install aiohttp aiohttp-sse-client python-dotenv openai

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

12306-MCP 智能查询客户端 V2.0

🎉 V2.0 重大升级

基于产品规划和技术评审,V2.0 完成了 P0 级核心架构增强,将客户端从"工具"升级为"智能助理平台"。

✨ 核心升级特性

🔌 1. 增强的连接管理
  • 自动重连机制:网络断开时自动重连(SSE 和 HTTP 请求)
  • 指数退避算法:智能重试,避免服务器压力
  • 心跳保持:定期检查连接状态,保持长连接稳定
  • 超时控制:可配置的请求超时时间
⚙️ 2. JSON 配置文件支持
  • 结构化配置:使用 config.json 管理所有配置项
  • 分层配置:服务器、LLM、内存、日志等模块化配置
  • 环境变量:敏感信息(API Key)仍使用 .env 管理
  • 默认配置:配置文件缺失时自动使用合理默认值
🧠 3. 会话级上下文记忆
  • 连续对话:记住当前会话的所有上下文,支持追问和补充
  • 智能截断:自动管理上下文长度,避免超出 Token 限制
  • 会话管理:支持 clear 命令清空当前会话
  • 历史保存:会话结束时自动保存到历史记录
🛡️ 4. 智能异常处理与重试
  • 网络故障重试:自动重试瞬时网络错误
  • 错误分类处理:区分瞬时故障和永久错误
  • 优雅降级:工具调用失败时给出友好提示
  • 详细日志:完整的错误追踪和调试信息
👤 5. 用户持久化记忆(Bonus)
  • 用户配置文件:保存常用出发地、目的地、偏好等
  • 地点别名:支持"家"、"公司"等自定义别名
  • 查询统计:记录使用频率和最后活跃时间
  • 个性化提示:系统提示自动注入用户偏好
📚 6. 跨会话历史记忆(Bonus)
  • 历史记录加载:可选加载最近几次对话的摘要
  • 长期记忆:AI 可以参考用户的历史行为模式
  • 智能上下文:自动提取历史对话的关键信息

📋 项目信息

  • Python:版本 3.7+
  • 版本:V2.0
  • 协议:基于 MCP JSON-RPC 2.0
  • 许可证:MIT

🚀 快速开始

1. 安装依赖

pip install aiohttp aiohttp-sse-client python-dotenv openai

2. 配置环境变量

创建 .env 文件(仅存放敏感信息):

# 大语言模型 API Key
DEEPSEEK_API_KEY="your_deepseek_api_key_here"

3. 配置 config.json

复制并编辑 config.json:

{
  "mcp_server": {
    "url": "http://localhost:12306"
  },
  "llm": {
    "provider": "deepseek",
    "model": "deepseek-chat",
    "base_url": "https://api.deepseek.com"
  },
  "memory": {
    "session_enabled": true,
    "persistent_enabled": true,
    "load_recent_history": true
  }
}

4. 启动 12306-MCP 服务器

npx -y 12306-mcp --port 12306

5. 运行客户端

python MCP-SEE-Client.py

💡 使用指南

基本命令

客户端启动后,支持以下交互命令:

命令说明
quit / exit / q退出程序
tools查看所有可用工具
clear清空当前会话(开始新对话)
profile查看用户配置信息
history查看对话历史统计

示例对话

示例 1:会话记忆 - 连续追问
❓ 请输入问题: 明天深圳到广州的高铁票

🤖 [AI回复]
明天(2025-10-23)从深圳到广州的高铁车次如下:
1. G1234 - 08:00出发,09:15到达...
...

❓ 请输入问题: 最早的那趟有二等座吗?

🤖 [AI回复]
G1234次列车二等座还有票,票价为¥75...

说明:AI 记住了上一轮查询的结果,无需重复查询。


示例 2:用户偏好 - 自动填充

编辑 user_profile.json:

{
  "preferences": {
    "default_departure_city": "深圳",
    "default_arrival_city": "北京"
  },
  "aliases": {
    "home": "深圳北",
    "公司": "北京南"
  }
}

对话:

❓ 请输入问题: 明天回家的票

🤖 [AI回复]
(AI 自动识别"家"是"深圳北",并查询从当前位置到深圳北的车票)

示例 3:中转查询
❓ 请输入问题: 后天从拉萨到深圳,可以在西安中转吗?

🤖 [AI回复]
为您找到以下中转方案...

⚙️ 配置说明

config.json 完整示例

{
  "mcp_server": {
    "url": "http://localhost:12306",
    "connection": {
      "retry_attempts": 3,           // 重试次数
      "retry_delay": 1.0,            // 初始重试延迟(秒)
      "max_retry_delay": 30.0,       // 最大重试延迟(秒)
      "timeout_seconds": 30,         // 请求超时时间
      "sse_reconnect_enabled": true, // 启用SSE自动重连
      "sse_reconnect_interval": 5,   // SSE重连间隔(秒)
      "heartbeat_interval": 60       // 心跳间隔(秒,0表示禁用)
    }
  },
  "llm": {
    "provider": "deepseek",          // LLM提供商
    "model": "deepseek-chat",        // 模型名称
    "base_url": "https://api.deepseek.com",
    "max_iterations": 5,             // 最大工具调用轮数
    "system_prompt_path": "system_prompt.txt"  // 可选:自定义系统提示
  },
  "memory": {
    "session_enabled": true,         // 启用会话记忆
    "persistent_enabled": true,      // 启用持久化记忆
    "user_profile_path": "user_profile.json",
    "history_path": "conversation_history.json",
    "max_context_messages": 20,      // 最大上下文消息数
    "load_recent_history": true,     // 加载最近历史
    "recent_history_count": 3        // 加载最近N次会话
  },
  "logging": {
    "level": "INFO",                 // 日志级别:DEBUG, INFO, WARNING, ERROR
    "format": "%(asctime)s - %(levelname)s - %(message)s",
    "file": "mcp_client.log",        // 日志文件(可选)
    "console_enabled": true          // 控制台输出
  },
  "features": {
    "confirmation_mode": false,      // 确认-执行模式(P1功能)
    "confirmation_threshold": 3      // 超过N步调用时需确认
  }
}

user_profile.json 配置

{
  "user_id": "default_user",
  "preferences": {
    "default_departure_city": "深圳",      // 默认出发城市
    "default_arrival_city": "北京",        // 默认到达城市
    "preferred_seat_type": "二等座",       // 偏好席别
    "preferred_train_types": ["G", "D"]    // 偏好车次类型
  },
  "aliases": {
    "home": "深圳北",                      // 地点别名
    "office": "北京南",
    "常去": ["上海虹桥", "广州南"]
  }
}

🔄 更换 LLM 提供商

OpenAI GPT-4

{
  "llm": {
    "provider": "openai",
    "model": "gpt-4-turbo",
    "base_url": "https://api.openai.com/v1"
  }
}

.env 文件:

DEEPSEEK_API_KEY="sk-your_openai_api_key"

本地模型 (Ollama)

{
  "llm": {
    "provider": "ollama",
    "model": "qwen2:7b",
    "base_url": "http://localhost:11434/v1"
  }
}

.env 文件:

DEEPSEEK_API_KEY="ollama"

🐛 故障排除

连接失败

现象:❌ 连接失败: Cannot connect to host...

解决方案:

  1. 确认 12306-mcp 服务器已启动
  2. 检查 config.json 中的 mcp_server.url 配置
  3. 查看服务器日志,确认端口正确

工具调用失败

现象:⚠️ 工具调用失败,已自动重试

解决方案:

  • V2.0 已内置自动重试,多数瞬时故障会自动恢复
  • 如持续失败,检查网络连接和服务器状态
  • 增加 config.json 中的 retry_attempts 和 timeout_seconds

API Key 错误

现象:Invalid API key

解决方案:

  1. 检查 .env 文件中的 DEEPSEEK_API_KEY
  2. 确认 API Key 格式正确且有效
  3. 检查 config.json 中的 base_url 是否正确

内存不足

现象:对话历史过长导致 Token 超限

解决方案:

  1. 使用 clear 命令清空当前会话
  2. 减小 config.json 中的 max_context_messages
  3. 禁用历史加载:"load_recent_history": false

🛣️ 升级路线图

✅ V2.0(已完成)- P0 核心架构

  • [x] 增强的连接管理
  • [x] JSON 配置文件
  • [x] 会话级上下文记忆
  • [x] 智能异常处理
  • [x] 用户持久化记忆(Bonus)
  • [x] 跨会话历史记忆(Bonus)

🔜 V2.1(计划中)- P1 智能化

  • [ ] 确认-执行模式
  • [ ] 主动学习与澄清
  • [ ] 历史对话摘要生成
  • [ ] 多用户支持(SQLite)

🔮 V3.0(未来)- P2 服务化

  • [ ] FastAPI 服务化封装
  • [ ] RESTful API 接口
  • [ ] WebUI 图形界面
  • [ ] Docker 容器化部署

📊 架构对比

V1.0 vs V2.0

特性V1.0V2.0
配置管理.env 文件.env + config.json
连接稳定性基础连接自动重连 + 心跳
对话记忆无记忆会话级 + 历史记忆
异常处理直接失败智能重试 + 优雅降级
个性化不支持用户 Profile + 别名
可维护性一般结构化配置 + 日志

🤝 贡献指南

欢迎贡献代码!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

📝 更新日志

V2.0.0 (2025-10-22)

重大升级:

  • ✨ 新增 JSON 配置文件支持
  • ✨ 实现会话级上下文记忆
  • ✨ 增强连接管理(自动重连、心跳)
  • ✨ 智能异常处理与重试
  • ✨ 用户持久化记忆系统
  • ✨ 跨会话历史记忆
  • 🐛 修复 SSE 连接不稳定问题
  • 📝 完善日志系统

V1.0.0 (2025-10-18)

初始版本:

  • ✨ 基础 MCP 客户端功能
  • ✨ 工具调用支持
  • ✨ 命令行交互界面

📄 许可证

本项目基于 MIT License 开源。


🙏 致谢


📧 联系方式

如有问题或建议,请:

  • 提交 Issue
  • 发送邮件
  • 加入讨论组

Happy Traveling! 🚄

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

火车票查询Python本地部署智能助理会话记忆JSON-RPC出行规划

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

地址与坐标转换

把地址转成经纬度,或按坐标反查位置。

路线与距离

算行程时间、规划多点路线。

天气与出行

查天气和预警,按条件安排行程。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在地图位置场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP SSE Client

MCP World · 本页

0stdio有1 个2026-05-17
Baidu Maps

MCP World

10stdio有1 个2026-05-17
MCP Server C2f246e3

MCP World

20stdio有1 个2026-05-17
OpenStreetMap MCP Server

MCP.so

12stdio有3 个2026-05-17
Google Maps (google-maps-aa2563d3)

MCP World

7未说明未标注1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP SSE Client 怎么安装?

公开资料给出的安装命令是 pip install aiohttp aiohttp-sse-client python-dotenv openai,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP SSE Client 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

MCP SSE Client 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP SSE Client 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

MCP SSE Client 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP