返回市场
时间服务器

时间服务器

作者:TheoBrigitte8 星标更新:2025-10-02

项目介绍

<p align="center"> <img src="assets/mcp-time.png" alt="MCP 时间标志" height="100px"> </p> <div align="center">

GitHub 发布 构建状态 Go 参考 信任评分 NPM 包 Docker 镜像

<strong>时间 MCP 服务器</strong>

一个允许AI助手与时间交互的模型上下文协议服务器

</div>

概览

时间 MCP 服务器是一个 模型上下文协议 (MCP) 服务器,它为AI助手和其他MCP客户端提供了标准化工具来执行与时间和日期相关的操作。该服务器充当AI工具与强大的时间处理后端之间的桥梁,通过自然语言交互实现复杂的时间操作。

特性

  • ⏰ 时间操作 - 获取当前时间、转换时区以及增加或减少持续时间
  • 🗣️ 自然语言解析 - 理解相对时间表达式如“昨天”或“下个月”
  • ⚖️ 时间比较 - 轻松比较两个不同的时间
  • 🎨 灵活格式化 - 支持广泛预定义和自定义的时间格式
  • ✅ MCP 兼容性 - 完全兼容模型上下文协议标准
  • 🔄 多种传输方式 - 支持用于本地集成的 stdio 和用于网络访问的 HTTP 流

安装

此 MCP 服务器可以与支持模型上下文协议的各种AI助手客户端集成,包括 CursorClaude DesktopClaude Code更多

🚀 一键安装(Cursor)

点击下方按钮以使用 Docker 在您的 Cursor 环境中自动配置 MCP 服务器:

<a href="cursor://anysphere.cursor-deeplink/mcp/install?name=time&config=eyJjb21tYW5kIjoiZG9ja2VyIiwiYXJncyI6WyJydW4iLCItLXJtIiwiLWkiLCJ0aGVvMDEvbWNwLXRpbWU6bGF0ZXN0Il19"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/deeplink/mcp-install-dark.svg"> <source media="(prefers-color-scheme: light)" srcset="https://cursor.com/deeplink/mcp-install-light.svg"> <img alt="添加到 Cursor" src="https://cursor.com/deeplink/mcp-install-light.svg" width="200"> </picture> </a>

使用 npx(JavaScript/Node.js)

此方法使用 npx 运行 MCP 服务器,需要安装 Node.js。将以下 JSON 配置复制到您的 MCP 客户端设置中:

{
  "mcpServers": {
    "mcp-time": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@theo.foobar/mcp-time"
      ]
    }
  }
}

使用 Docker

在隔离容器中运行 MCP 服务器。需要安装 Docker。将此 JSON 配置复制到您的 MCP 客户端设置中:

{
  8080/mcp"
      ]
    }
  }
}

使用二进制文件

直接在系统上安装 mcp-time 二进制文件。选择下面的安装方法之一,确保二进制文件放置在您的 PATH 目录中。然后将此 JSON 配置添加到您的 MCP 客户端设置中:

{
  "mcpServers": {
    "mcp-time": {
      "type": "stdio",
      "command": "mcp-time"
    }
  }
}

选项 1:从 Releases 下载

发布页面下载最新的预构建二进制文件:

# 将 OS-ARCH 替换为您的平台(例如,linux-amd64,darwin-arm64,windows-amd64)
curl -Lo mcp-time https://github.com/TheoBrigitte/mcp-time/releases/latest/download/mcp-time.OS-ARCH
install -D -m 755 ./mcp-time ~/.local/bin/mcp-time

选项 2:使用 Go 安装

对于 Go 开发者,可以直接使用 go install 安装:

go install github.com/TheoBrigitte/mcp-time/cmd/mcp-time@latest

二进制文件将被安装在您的 $GOPATH/bin 目录中。

选项 3:从源代码构建

使用 make 克隆并构建项目:

git clone https://github.com/TheoBrigitte/mcp-time.git
cd mcp-time
make install

二进制文件将被安装在 ~/.local/bin/mcp-time

使用

基本用法

使用 stdio 传输开始(默认,适用于 MCP 客户端):

mcp-time

使用 HTTP 流传输开始(用于网络访问):

mcp-time --transport stream --address "http://localhost:8080/mcp"

命令行选项

服务器支持以下标志进行高级配置:

$ mcp-time --help
一个提供时间与日期实用工具的 MCP(模型上下文协议)服务器。

用法:
  mcp-time [flags]

标志:
      --address string     Stream HTTP 服务器监听地址(仅限 --transport stream)(默认 "http://localhost:8080/mcp")
  -h, --help               mcp-time 的帮助信息
      --log-file string    日志文件路径(如果未指定则禁用日志)
  -t, --transport string   传输层:stdio, stream。(默认 "stdio")
      --version            打印版本信息并退出

可用工具

current_time

获取任何时区和格式下的当前时间。

参数:

  • format(可选) - 输出格式(预定义如 RFC3339Kitchen 或自定义 Go 布局)
  • timezone(可选) - 目标时区的 IANA 格式(例如,America/New_York)。默认为 UTC

示例: “东京现在几点?”

relative_time

基于相对自然语言表达获取时间。

参数:

  • text(必需) - 自然语言表达(例如,yesterday5 minutes agonext month
  • time(可选) - 表达式的参考时间。默认为当前时间
  • timezone(可选) - 输出的目标时区
  • format(可选) - 时间的输出格式

示例: “三周前是哪一天?”

convert_timezone

在时区之间转换给定的时间。

参数:

  • time(必需) - 输入时间字符串(支持各种格式)
  • input_timezone(可选) - 输入时间的时区
  • output_timezone(可选) - 输出的目标时区
  • format(可选) - 时间的输出格式

示例: “将下午2:30 EST 转换为东京时间”

add_time

向给定时间添加或减去持续时间。

参数:

  • time(必需) - 输入时间字符串
  • duration(必需) - 添加/减去的持续时间(例如,2h30m-1h24h
  • timezone(可选) - 输出的目标时区
  • format(可选) - 时间的输出格式

示例: “45分钟后是几点?”

compare_time

比较两个时间并确定它们的关系。支持时区感知比较。

参数:

  • time_a(必需) - 第一个要比较的时间
  • time_a_timezone(可选) - time_a 的时区,IANA 格式(例如,America/New_York
  • time_b(必需) - 第二个要比较的时间
  • time_b_timezone(可选) - time_b 的时区,IANA 格式(例如,Europe/London

返回值:

  • 如果 time_atime_b 之前,则返回 -1
  • 如果 time_a 等于 time_b,则返回 0
  • 如果 time_atime_b 之后,则返回 1

示例: “东部时间下午3点是否早于格林尼治时间晚上8点?”

贡献

欢迎贡献!请随时提交拉取请求。对于重大更改,请先打开一个问题来讨论您想要更改的内容。

许可证

该项目采用 MIT 许可证 - 详情见 LICENSE 文件。

致谢

使用了这些优秀的库: