公交信息查询服务

一个基于新加坡LTA DataMall API的实时公交信息查询服务,提供公交到站时间、路线、站点搜索等功能。

  • by agrimsingh
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 agrimsingh/sg-bus-mcp-server

使用说明

新加坡巴士MCP服务器

模型上下文协议(MCP)服务器,使用LTA DataMall API提供实时新加坡公交车信息。

特性

此MCP服务器公开了4个工具:

工具 说明
get_bus_arrivals 获取特定公交车站的实时公交车到达时间
get_bus_routes 获取特定公交服务的完整路线信息
search_bus_stops 按名称、道路名称或地标搜索公交车站
get_bus_stop_info 获取特定公交车站的详细信息

部署到Vercel

选项1:通过GitHub部署(推荐)

  1. 推送到GitHub:

    git init
    git add .
    git commit -m "Initial commit"
    git remote add origin https://github.com/YOUR_USERNAME/sg-bus-mcp-server.git
    git push -u origin main
    
  2. 连接到Vercel:

    • 首选 vercel.com
    • 点击“添加新项目”
    • 导入您的GitHub存储库
    • 添加环境变量:
      • 姓名: LTA_DATAMALL_KEY
      • 价值:您的LTA DataMall API密钥
    • 点击“部署”

选项2:通过Vercel CLI进行部署

  1. 安装Vercel CLI:

    npm i -g vercel
    
  2. 部署:

    vercel
    
  3. 添加环境变量:

    vercel env add LTA_DATAMALL_KEY
    

本地开发

  1. 安装依赖项:

    npm install
    
  2. 设置环境变量:

    cp .env.example .env.local
    # Edit .env.local with your API key
    
  3. 运行开发服务器:

    npm run dev
    
  4. MCP检验员测试:

    npx @modelcontextprotocol/inspector@latest http://localhost:3000
    

连接到您的MCP服务器

部署后,将此添加到您的MCP客户端配置中(例如,Claude Desktop、Cursor):

{
  "mcpServers": {
    "sg-bus": {
      "url": "https://your-deployment-url.vercel.app/api/mcp"
    }
  }
}

示例用法

连接后,您可以向AI助手提出以下问题:

  • “83139公交车站有哪些公交车?”
  • “搜索乌节附近的公交车站”
  • “15路公交车的路线是什么?”
  • “告诉我01012公交车站的情况”

数据源

总线数据由 LTA 数据 中心 API.

许可证

麻省理工学院