MCP Weather Server

MCP Weather Server

site icon
2025.03.13 0
TypeScript天气服务位置服务位置服务
MCP Weather Server 是一个基于 TypeScript 的服务端实现,采用 Model Context Protocol (MCP) 和 Server-Sent Events (SSE) 传输协议,提供天气信息工具。该服务器通过 HTTP 实现远程连接,允许客户端通过网络获取天气预测和警报信息。
View on GitHub

Overview

基本能力

产品定位

MCP Weather Server 是一个提供天气信息的服务端实现,通过 MCP 协议和 SSE 传输协议,为客户端提供天气预测和警报工具。

核心功能

  • 实现基于 SSE 传输的 MCP 协议
  • 提供两种天气工具:
  • get-forecast: 获取特定坐标的天气预测
  • get-alerts: 获取美国各州的活跃天气警报
  • 连接美国国家气象局 API
  • 支持多个客户端连接

适用场景

  • 需要获取天气预测的应用
  • 需要监控天气警报的系统
  • 需要通过网络提供天气信息的服务

工具列表

  1. get-forecast
  2. 描述:获取某个位置的天气预测
  3. 参数:
    • latitude (number): 位置的纬度 (-90 到 90)
    • longitude (number): 位置的经度 (-180 到 180)
  4. 注意:仅支持美国位置

  5. get-alerts

  6. 描述:获取某个州的天气警报
  7. 参数:
    • state (string): 两字母的美国州代码 (例如 CA, NY)

常见问题解答

  • 仅支持美国位置的天气预测和警报
  • 需要 Node.js v16 或更高版本

使用教程

使用依赖

  • Node.js (v16 或更高版本)
  • npm 或 yarn

安装教程

# 克隆仓库
git clone https://github.com/tyfeng1997/mcp-server.git
cd mcp-server

# 安装依赖
npm install

# 构建 TypeScript 代码
npm run build

启动服务器

node build/index.js

默认情况下,服务器将在端口 3001 上启动。

调试方式

curl http://localhost:3001/sse

这将返回一个包含会话 ID 的事件。

许可证

该项目遵循 MIT 开源许可条款。