关于 KMB Bus MCP Server
KMB Bus MCP Server 为大模型提供香港九龍巴士和龍運巴士的实时路线、站点及到站信息。它支持站点搜索和路线站点映射,并通过缓存优化 API 调用。
主要功能
- 01查询实时巴士到站时间
- 02列出并查询巴士路线
- 03列出并搜索巴士站点
- 04映射路线与站点关系
- 05缓存 API 结果
- 06支持英语和繁体中文
适用场景
- 01查询 KMB 巴士预计到站时间
- 02按名称查找巴士站
- 03查看途经某站的路线
- 04查找特定路线的沿途站点
MCP 相关
它通过 MCP 工具提供巴士路线、站点、搜索和预计到站信息,并使用 KMB/LWB 官方开放数据 API。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
KMB 巴士 MCP 服务
一个模型上下文协议(MCP)服务,可实时获取香港九龍巴士(KMB)和龍運巴士(Long Win Bus)的路线信息和到站时间。该服务可让大语言模型查询香港巴士服务信息,从而回答用户有关巴士路线、站点和预计到站时间的问题。
功能
- 实时巴士到站信息(预计到站时间)
- 全面的巴士路线查询
- 巴士站信息与搜索
- 路线与站点映射
- 用于优化 API 调用的缓存系统
- 双语支持(英语和繁体中文)
数据来源
本项目使用 KMB/LWB 官方开放数据 API:
先决条件
- Python 3.10 或更高版本
- uv 包管理器
安装
通过 Smithery 安装
如需通过 Smithery 自动为 Claude Desktop 安装 KMB Bus MCP:
npx -y @smithery/cli install @kennyckk/mcp_hkbus --client claude
手动安装
- 首先,如果尚未安装 uv,请先安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
- 克隆代码库:
git clone [email protected]:kennyckk/mcp_hkbus.git
cd mcp_hkbus
- 使用 uv 管理 Python 包:
uv sync #using uv.lock
使用方法
- 在 MCP 客户端中编辑配置(例如 Claude Desktop):
{
"mcpServers": {
"bus_service": {
"command": "path/to/uv.exe",
"args": ["--directory", "path/to/kmb_bus", "run", "kmb_mcp.py"],
"background": true
}
}
}
- 此服务提供多种工具,供大语言模型查询巴士信息:
get_route_list():获取所有巴士路线的列表get_stop_list():获取所有巴士站的列表get_route_stops():获取指定路线的站点find_stops_by_name():按名称搜索巴士站get_all_routes_at_stop():获取途经指定站点的所有路线get_eta():获取预计到站时间
测试
使用 pytest 运行测试套件:
pytest test/kmb-mcp-tests.py
依赖项
httpx:用于异步 HTTP 请求fastmcp:用于 MCP 服务实现pytest:用于测试(仅开发环境)
贡献
欢迎贡献!请随时提交 Pull Request。
致谢
- 感谢 KMB/LWB 提供开放数据 API
- 感谢 MCP 协议开发者
注意
此服务依赖 KMB/LWB 开放数据 API。请留意 API 速率限制,并在生产环境中实施适当的错误处理。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
