使用说明
🌦️ MCP服务器-天气
模型上下文协议(MCP)服务器使用来自 国家气象局(NWS).
🧩 特性
get-alerts:获取美国某个州的当前天气警报get-forecast:获取美国位置的短期预测(纬度/经度)
📦 项目设置
1.克隆并安装依赖项
git clone <your-repo-url>
cd mcp-server-weather
npm install
2.构建TypeScript代码
npm run build
这将编译源代码 src/ 到 dist/.
3.直接运行服务器
node dist/index.js
您应该看到:
Weather MCP Server running on stdio
🧰 使用MCP Inspector CLI进行测试
用于与MCP服务器交互的官方CLI工具是 @modelcontextprotocol/inspector.
4.列出可用工具
npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list
预期产量:
{
"tools": [
{ "name": "get-alerts", "description": "Get weather alerts for a US state" },
{ "name": "get-forecast", "description": "Get weather forecast for a location in the US" }
]
}
5.获取天气警报
npx @modelcontextprotocol/inspector --cli node dist/index.js \
--method tools/call \
--params '{"name":"get-alerts","arguments":{"state":"CA"}}'
6.获取预测
npx @modelcontextprotocol/inspector --cli node dist/index.js \
--method tools/call \
--params '{"name":"get-forecast","arguments":{"latitude":37.7749,"longitude":-122.4194}}'
⚙️ 发布到npm
要将此MCP服务器发布为npm CLI工具:
- 更新
name,version,以及repository您的字段package.json. - 确保可执行文件映射正确:
"bin": { "mcp-server-weather": "dist/index.js" } - 构建项目:
npm run build - 确保二进制文件可执行:
chmod +x dist/index.js - 登录到npm:
npm login - 发布:
npm publish --access public
发布后,任何人都可以全局安装和运行您的服务器:
npm install -g mcp-server-weather
mcp-server-weather
⚙️ Node.js版本
- 最低要求: Node.js 18
- 推荐: Node.js≥22.7.5 (以匹配最新
@modelcontextprotocol/inspector) - 使用以下方式更新:
brew upgrade node@22
🧱 项目结构
mcp-server-weather/
├── src/
│ └── index.ts
├── dist/
│ └── index.js
├── package.json
├── tsconfig.json
└── README.md
🧩 开发命令
| 命令 | 描述 |
|---|---|
npm run build |
将TypeScript编译为 dist/ |
npm run watch |
监视更改并自动重建 |
npm run clean |
清理构建工件 |
npm run do-publish |
清理、安装并将包发布到npm |
npm run publish-dry-run |
在不上传的情况下测试npm发布过程 |
⚙️ 备注
- 服务器使用 工作室 运输和必须 不 写信给
stdout(使用console.error()对于日志)。 - MCP客户端(如OpenAI ChatGPT或MCP Inspector)通过JSON-RPC进行通信。
- 仅适用于 美国坐标,因为NWS API不覆盖其他国家。
📜 许可证
麻省理工学院许可证©2025