使用说明
MCP气象服务器
模型上下文协议(MCP)的即用型实现,它扩展了Claude的实时天气数据功能。
什么是MCP?
模型上下文协议(MCP)是一个开放的通信框架,允许像Claude这样的AI模型与外部工具进行交互。这使Claude能够访问实时数据、处理文件并与外部服务交互——这些功能是大多数LLM开箱即用所不具备的。
了解有关MCP的更多信息:
此存储库包含什么
此存储库提供:
- 完整的MCP气象服务器:一个功能齐全的实现,使克劳德能够访问实时天气数据
- 模板代码:用作您自己的MCP项目的起点
- 配置示例:用于连接到Claude Desktop的示例配置文件
特性
MCP天气服务器实现了两个主要工具:
- 获取预报:按纬度/经度检索任何位置的当前天气状况和预报
- 获取警报:检查美国任何州的活动天气警报
连接后,Claude可以:
- 回答有关当前天气状况的问题
- 提供详细的天气预报
- 提醒用户注意恶劣天气警告
- 根据天气数据提出建议
快速开始
先决条件
- Node.js 16+和npm
- 克劳德桌面
- Types/JavaScript基础知识
安装
-
克隆此存储库:
git clone https://github.com/SterlingChin/mcp-weather-server.git cd mcp-weather-server -
安装依赖项:
npm install -
构建项目:
npm run build
连接到克劳德桌面
-
打开您的Claude Desktop配置文件:
- 雨衣:
~/Library/Application Support/Claude/claude_desktop_config.json - 窗户:
%AppData%\Claude\claude_desktop_config.json
- 雨衣:
-
添加以下配置(更新路径以指向您的存储库):
{ "mcpServers": { "weather": { "command": "node", "args": [ "/absolute/path/to/your/mcp-weather-server/build/index.js" ] } } } -
重新启动克劳德桌面
-
在Claude Desktop中查找锤子图标,表示MCP工具可用
测试您的实现
试着问克劳德这些问题:
- “现在旧金山的天气怎么样?”
- “得克萨斯州今天有天气警报吗?”
- “这个周末芝加哥的天气预报如何?”
项目结构
├── src/
│ ├── index.ts # Main server entry point
│ ├── tools/ # Tool implementations
│ │ ├── get-forecast.ts
│ │ └── get-alerts.ts
│ └── utils/ # Helper functions and API client
│ └── nws-api.ts
├── build/ # Compiled JavaScript files
├── examples/ # Example code and usage patterns
├── docs/ # Additional documentation
├── package.json
└── tsconfig.json
构建自己的MCP服务器
此存储库可以作为构建自己的MCP服务器的模板。请按照以下步骤操作:
- 分叉此存储库或根据其结构创建一个新的存储库
- 用您自己的服务替换weather API实现
- 通过在中添加新文件来定义您的工具
src/tools目录 - 在中注册您的工具
src/index.ts - 构建并测试您的实现
有关详细指导,请查看我们的 分步教程.
api信息
此服务器使用 美国国家气象局API,它可以免费使用,不需要身份验证。您可能考虑集成的其他API包括:
- 词典/语言API
- 新闻和信息API
- 公共数据API
- 金融API
为MCP服务器选择API时,请考虑:
- 身份验证要求
- 费率限制
- 数据格式和解析复杂性
- 更新频率
故障排除
常见问题
- 克劳德找不到你的服务器:验证您的配置路径并重新启动Claude Desktop
- API请求失败:检查您的互联网连接和API端点状态
- 意外的响应:查看克劳德桌面日志
~/Library/Logs/Claude/mcp*.log
贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add some amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
内置于❤️ 使用 模型上下文协议
