项目介绍
<div align="center">

🌦️ weather_service MCP 服务器
</div>
🧩 组件
📚 资源
此服务器实现了一个简单的笔记保存系统:
- 使用自定义的 note:// URI方案访问单个笔记
- 每个笔记资源包含名称、描述以及 text/plain 的 MIME 类型
💡 提示
服务器提供一个单一的提示:
- summarize-notes:创建所有已保存笔记的摘要
- 通过可选的 "style" 参数控制详细程度(brief/detailed)
- 结合当前所有笔记和样式设置生成提示
🛠️ 工具
服务器实现了一个工具:
- add-note:向服务器添加新的笔记
- 接收 "name" 和 "content" 作为必需的字符串参数
- 更新服务器状态,并通知客户端资源更改
🚀 快速开始
📥 安装
Claude Desktop
在 MacOS 上: ~/Library/Application\ Support/Claude/claude_desktop_config.json
在 Windows 上: %APPDATA%/Claude/claude_desktop_config.json
<details>
<summary>开发/未公开服务器的设置</summary>
```
"mcpServers": {
"weather_service": {
"command": "uv",
"args": [
"--directory",
"C:\Prj\weather_service",
"run",
"weather_service"
]
}
}
```
</details>
<details>
<summary>公开服务器的设置</summary>
```
"mcpServers": {
"weather_service": {
"command": "uvx",
"args": [
"weather_service"
]
}
}
```
</details>
👨💻 开发
🏗️ 构建与发布
为了准备分发包,请执行以下操作:
- 同步依赖关系并更新锁定文件:
uv sync
- 构建包的分发版本:
uv build
这将在 dist/ 目录中创建源代码和 wheel 分发包。
- 发布到 PyPI:
uv publish
注意:需要通过环境变量或命令标志设置 PyPI 的认证信息:
- 令牌:
--token 或 UV_PUBLISH_TOKEN
- 或用户名/密码:
--username / UV_PUBLISH_USERNAME 和 --password / UV_PUBLISH_PASSWORD
🔍 调试
由于 MCP 服务器是通过标准 I/O 运行的,因此调试可能会比较困难。我们强烈推荐使用 MCP Inspector 来获得最佳的调试体验。
可以使用 npm 执行以下命令来启动 MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory C:\Prj\weather_service run weather-service
启动时,Inspector 将显示一个可通过浏览器访问的 URL,从而开始调试。