多功能服务工具包

一个为XiaoZhi AI设计的即用型MCP服务器工具包,包含天气查询、音乐搜索、新闻获取、笑话和闹钟设置等功能,适用于多种应用场景。

  • by cando58
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 cando58/mcp-vn-services

使用说明

MCP VN 工具(天气、音乐、新闻、笑话、闹钟)

随时可部署的 MCP服务器 对于XiaoZhi AI,运行在 铁路 (或任何容器平台)。 包括工具:

  • weather(city) — OpenWeather(公制,°C)
  • music_search(query, limit) 根据上述信息,原文内容“iTunes Search (no API key required)”的翻译为:“iTunes 搜索(无需 API 密钥)”
  • news(query, country, limit) — NewsAPI(如果 NEWS_API_KEY) 或使用 Google 新闻 RSS 作为备用方案
  • joke(category) — JokeAPI(英文)
  • alarm_set(iso_time, title) / alarm_list() / alarm_delete(id) — 存储在JSON中的简单闹钟

1) 部署至铁路(系统/应用)

  1. 将这个仓库在你的GitHub上进行分支(或“克隆”)操作。
  2. 在铁路方面: 新项目 → 从GitHub仓库部署 (选择你的叉子)。
  3. 在铁路中 → 变量,添加:
    • MCP_ENDPOINT = 你的小智 MCP终端(或MCP端点) (来自 代理 → MCP 设置 → 获取 MCP 端点)。 必须以……开始 wss://...。
    • OPENWEATHER_KEY = 从 https://openweathermap.org/ 获取的免费密钥(天气查询所需)
    • (可选) NEWS_API_KEY = 您的 NewsAPI 密钥(https://newsapi.org/)。如果省略,将使用 Google 新闻 RSS 作为备用方案。
  4. 部署。铁路将运行 mcp_pipe.py 这连接到小智并启动 server.py。

注释

  • 文件存储在 /data 在容器内部。这种存储是临时的(重新部署时会重置)。

2) 在小智(XiaoZhi)上连接

  • 在您的代理(console.xiaozhi.me)中 → MCP 设置:
    • 官方服务:添加您想要的服务(例如,天气、音乐、知识库)
    • 定制服务:点击 获取MCP终端节点 → 复制 wss://...token=... URL(统一资源定位符)。
  • 将这个端点粘贴到Railway中 MCP_ENDPOINT 变量。
  • 保存 在小智那里,然后 重启 这个设备。

3) 工具概述

天气查询函数(城市: 字符串) -> 字典

使用OpenWeather获取该城市的当前天气(公制单位)。

music_search(query: str, limit: int = 5) -> list 翻译为中文是:音乐搜索(查询: 字符串,限制: 整数 = 5)-> 列表

返回来自iTunes搜索的热门歌曲。

新闻查询函数(query: 字符串 = "", 国家: 字符串 = "vn", 限制数量: 整数 = 5) -> 列表

  • 如果 NEWS_API_KEY 提供 → 使用 NewsAPI。
  • 否则 → 回退到使用Google新闻RSS(越南语)。

笑话(类别: str = "任意")-> 字典

从JokeAPI返回一个随机的笑话(英文)。

设置闹钟(alarm_set)函数:接收ISO时间字符串和标题,返回字典

存储一个报警到 /data/alarms.json. iso_time 是一个ISO8601格式的字符串(例如。 2025-10-01T07:30:00+07:00)。

`alarm_list()` -> `list`(翻译为中文:`alarm_list()` 函数返回一个列表)

列出所有警报。

`alarm_delete(id: str) -> dict` 翻译为中文是:`删除报警(id: 字符串) -> 返回字典`

按ID删除警报。

4) 本地运行(可选)

pip install -r requirements.txt
# The MCP server itself runs over stdio; to test locally, you need a MCP client.
# On Railway it is launched by mcp_pipe.py automatically.

5) 安全性

  • 永远 公开分享您的MCP终端点。如令牌泄露,请在小智(XiaoZhi)中重新生成。
  • 保存API密钥 铁路变量,而不是在代码中。