小贴士:按下Ctrl+D 或 ⌘+D,一键收藏本站,方便下次快速访问!
MIT License
38507
最近更新:4天前

一个提供时间和时区转换功能的模型上下文协议服务器。该服务器使大语言模型能够获取当前时间信息,并使用 IANA 时区名称进行时区转换,支持自动检测系统时区。

时间 MCP 服务器

一个提供时间和时区转换功能的模型上下文协议服务器。该服务器使大语言模型能够获取当前时间信息,并使用 IANA 时区名称进行时区转换,支持自动检测系统时区。

可用工具

  • get_current_time - 获取特定时区或系统时区的当前时间。

    • 必需参数:
      • timezone(字符串):IANA 时区名称(例如,'America/New_York','Europe/London')
  • convert_time - 在不同时区之间转换时间。

    • 必需参数:
      • source_timezone(字符串):源 IANA 时区名称
      • time(字符串):24小时制时间(HH:MM)
      • target_timezone(字符串):目标 IANA 时区名称

安装

使用 uv(推荐)

使用 uv 时无需特定安装。我们将使用 uvx 直接运行 mcp-server-time

使用 PIP

或者,您可以通过 pip 安装 mcp-server-time

bash 复制代码
pip install mcp-server-time

安装完成后,您可以将其作为脚本运行:

bash 复制代码
python -m mcp_server_time

配置

为 Claude.app 配置

在您的 Claude 设置中添加:

使用 uvx
json 复制代码
"mcpServers": {
  "time": {
    "command": "uvx",
    "args": ["mcp-server-time"]
  }
}
使用 Docker
json 复制代码
"mcpServers": {
  "time": {
    "command": "docker",
    "args": ["run", "-i", "--rm", "mcp/time"]
  }
}
使用 pip 安装
json 复制代码
"mcpServers": {
  "time": {
    "command": "python",
    "args": ["-m", "mcp_server_time"]
  }
}

为 Zed 配置

在您的 Zed settings.json 中添加:

使用 uvx
json 复制代码
"context_servers": [
  "mcp-server-time": {
    "command": "uvx",
    "args": ["mcp-server-time"]
  }
],
使用 pip 安装
json 复制代码
"context_servers": {
  "mcp-server-time": {
    "command": "python",
    "args": ["-m", "mcp_server_time"]
  }
},

自定义 - 系统时区

默认情况下,服务器会自动检测您的系统时区。您可以通过在配置的 args 列表中添加 --local-timezone 参数来覆盖此设置。

示例:

json 复制代码
{
  "command": "python",
  "args": ["-m", "mcp_server_time", "--local-timezone=America/New_York"]
}

示例交互

  1. 获取当前时间:
json 复制代码
{
  "name": "get_current_time",
  "arguments": {
    "timezone": "Europe/Warsaw"
  }
}

响应:

json 复制代码
{
  "timezone": "Europe/Warsaw",
  "datetime": "2024-01-01T13:00:00+01:00",
  "is_dst": false
}
  1. 在时区之间转换时间:
json 复制代码
{
  "name": "convert_time",
  "arguments": {
    "source_timezone": "America/New_York",
    "time": "16:30",
    "target_timezone": "Asia/Tokyo"
  }
}

响应:

json 复制代码
{
  "source": {
    "timezone": "America/New_York",
    "datetime": "2024-01-01T12:30:00-05:00",
    "is_dst": false
  },
  "target": {
    "timezone": "Asia/Tokyo",
    "datetime": "2024-01-01T12:30:00+09:00",
    "is_dst": false
  },
  "time_difference": "+13.0h",
}

调试

您可以使用 MCP 检查器来调试服务器。对于 uvx 安装:

bash 复制代码
npx @modelcontextprotocol/inspector uvx mcp-server-time

或者,如果您在特定目录中安装了包或正在开发:

bash 复制代码
cd path/to/servers/src/time
npx @modelcontextprotocol/inspector uv run mcp-server-time

Claude 示例问题

  1. “现在是星期几?”(将使用系统时区)
  2. “东京现在是星期几?”
  3. “当纽约是下午4点时,伦敦是星期几?”
  4. “将东京时间上午9:30转换为纽约时间”

构建

Docker 构建:

bash 复制代码
cd src/time
docker build -t mcp/time .

贡献

我们鼓励贡献以帮助扩展和改进 mcp-server-time。无论您是想添加新的时间相关工具、增强现有功能,还是改进文档,您的输入都很有价值。

有关其他 MCP 服务器和实现模式的示例,请参阅:
https://github.com/modelcontextprotocol/servers

欢迎提交拉取请求!请随时贡献新想法、错误修复或增强功能,使 mcp-server-time 更加强大和实用。

许可证

mcp-server-time 采用 MIT 许可证授权。这意味着您可以自由使用、修改和分发软件,但需遵守 MIT 许可证的条款和条件。有关更多详情,请参阅项目仓库中的 LICENSE 文件。