使用说明
MCP时间服务器
一个轻量级的跨平台MCP(模型上下文协议)服务器,仅使用Python的标准库提供简单的时间和日期实用程序。
特性
- 获取当前时间 在任何时区
- 解析和验证 日期时间字符串
- 比较时间 并计算差异
- 加/减时间 从日期
- 转换Unix时间戳 到可读日期
- 列出和查询时区
- 跨平台(Windows、macOS、Linux)
- 零外部依赖(FastMCP除外)
- 可编译为独立可执行文件
可用工具
get_current_time(tz: Optional[str])
获取当前日期和时间,可以选择特定时区。
get_timezone_info(tz: str)
获取时区的详细信息,包括当前时间和偏移量。
list_timezones(filter_text: Optional[str])
列出所有可用时区,可选择按文本过滤。
parse_datetime(date_string: str, format_string: str)
解析日期时间字符串并返回详细信息。
compare_times(time1: str, time2: str, format_string: str)
比较两个日期时间字符串并计算差异。
add_time_delta(base_time: str, days: int, hours: int, minutes: int, seconds: int, format_string: str)
从给定的日期时间中添加或减去时间。
is_valid_datetime(date_string: str, format_string: str)
验证字符串是否与日期时间格式匹配。
unix_to_datetime(timestamp: int, tz: Optional[str])
将Unix时间戳转换为可读的日期时间。
安装
选项1:下载预构建的可执行文件(推荐)
从以下网址下载适用于您平台的最新版本 发布 页面:
- 视窗:
mcp-time-server-windows.exe - macOS:
mcp-time-server-macos(苹果硅) - Linux:
mcp-time-server-linux(x86_64)
Windows安装程序
- 下载
mcp-time-server-windows.exe从发布页面 - 将其保存到永久位置(例如。,
C:\Users\YourName\mcp-servers\) - Windows可能会显示安全警告-单击“更多信息”,然后单击“无论如何运行”(可执行文件是安全的,但未签名)
- 可执行文件已准备就绪,无需安装!
macOS设置
- 下载
mcp-time-server-macos从发布页面 - 将其保存到永久位置(例如。,
~/mcp-servers/) - 使文件可执行:
chmod +x mcp-time-server-macos - 首次跑步:macOS Gatekeeper将阻止未签名的可执行文件:
- 尝试运行可执行文件(或将其添加到Claude Desktop配置中并重新启动Claude)
- macOS将显示“无法打开,因为无法验证开发人员”
- 打开 系统设置 → 隐私和安全
- 向下滚动到安全部分
- 点击 “无论如何都允许” 在关于的消息旁边
mcp-time-server-macos - 再次尝试运行-单击 “打开” 当系统提示时
- 可执行文件现在是可信的,可以使用了!
Linux安装程序
- 下载
mcp-time-server-linux从发布页面 - 将其保存到永久位置(例如。,
~/mcp-servers/) - 使文件可执行:
chmod +x mcp-time-server-linux - 可执行文件已准备好使用!
选项2:从源代码运行
- 克隆或下载此存储库
- 安装依赖项:
pip install mcp
开发和建设:
pip install mcp pyinstaller
运行服务器
标准模式
python server.py
作为配备Claude Desktop的MCP服务器
视窗
-
在以下位置打开您的Claude Desktop配置文件:
%APPDATA%\Claude\claude_desktop_config.json或导航到:
C:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json -
添加MCP服务器配置(使用保存可执行文件的完整路径):
{ "mcpServers": { "time": { "command": "C:\\Users\\YourName\\mcp-servers\\mcp-time-server-windows.exe" } } }重要:使用双反睫毛(
\\)在Windows路径中! -
完全重新启动Claude Desktop(退出并重新打开)
-
时间服务器工具现在应该可以在Claude Desktop中使用
macOS
-
在以下位置打开您的Claude Desktop配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json -
添加MCP服务器配置:
使用可执行文件:
{ "mcpServers": { "time": { "command": "/absolute/path/to/mcp-time-server-macos" } } }使用Python:
{ "mcpServers": { "time": { "command": "/usr/local/bin/python3", "args": ["/absolute/path/to/server.py"] } } } -
完全重新启动Claude Desktop(退出并重新打开)
Linux
-
在以下位置打开您的Claude Desktop配置文件:
~/.config/Claude/claude_desktop_config.json -
添加MCP服务器配置:
使用可执行文件:
{ "mcpServers": { "time": { "command": "/absolute/path/to/mcp-time-server-linux" } } }使用Python:
{ "mcpServers": { "time": { "command": "/usr/bin/python3", "args": ["/absolute/path/to/server.py"] } } } -
完全重新启动Claude Desktop(退出并重新打开)
构建可执行文件
先决条件
pip install pyinstaller
为当前平台构建
运行构建脚本:
python build.py
这将在 dist/ 目录。
跨平台建筑
自动构建(GitHub操作)
此存储库包含一个GitHub Actions工作流,可自动为所有平台构建可执行文件:
- 建立在每一次推动之上 到主要分支
- 创建发布 当您推送版本标签时(例如。,
v1.0.0) - 建筑为:Windows(x86_64)、macOS(ARM64)、Linux(x86_ 64)
要创建新版本,请执行以下操作:
git tag v1.0.0
git push origin v1.0.0
工作流将自动构建可执行文件并将其附加到GitHub版本。
手动跨平台构建
PyInstaller为您正在构建的平台创建可执行文件:
- macOS可执行文件:基于macOS构建
- Linux可执行文件:在Linux上构建(或使用带有Linux镜像的Docker)
- Windows可执行文件:在Windows上构建(或使用Windows VM)
使用示例
获取当前时间
# Local time
get_current_time()
# Specific timezone
get_current_time(tz="America/New_York")
get_current_time(tz="Europe/London")
get_current_time(tz="Asia/Tokyo")
解析和验证日期
# Parse a date
parse_datetime(
date_string="2025-11-21 14:30:00",
format_string="%Y-%m-%d %H:%M:%S"
)
# Validate a date
is_valid_datetime(
date_string="2025-11-21",
format_string="%Y-%m-%d"
)
比较时间
compare_times(
time1="2025-01-01 00:00:00",
time2="2025-12-31 23:59:59",
format_string="%Y-%m-%d %H:%M:%S"
)
加/减时间
# Add 5 days and 3 hours
add_time_delta(
base_time="2025-11-21 10:00:00",
days=5,
hours=3,
format_string="%Y-%m-%d %H:%M:%S"
)
# Subtract 2 days (use negative values)
add_time_delta(
base_time="2025-11-21 10:00:00",
days=-2,
format_string="%Y-%m-%d %H:%M:%S"
)
使用时区
# List all timezones
list_timezones()
# Filter timezones
list_timezones(filter_text="America")
# Get timezone info
get_timezone_info(tz="America/New_York")
Unix时间戳
# Convert Unix timestamp to datetime
unix_to_datetime(timestamp=1732204800)
# With specific timezone
unix_to_datetime(timestamp=1732204800, tz="UTC")
通用日期时间格式字符串
| 格式 | 示例 |
|---|---|
%Y-%m-%d %H:%M:%S |
2025-11-21 14:30:00 |
%Y-%m-%d |
2025-11-21 |
%m/%d/%Y |
11/21/2025 |
%d/%m/%Y %H:%M |
21/11/2025 14:30 |
%B %d, %Y |
2025年11月21日 |
%Y-%m-%dT%H:%M:%S |
2025-11-21T14:30:00(ISO格式) |
技术细节
依赖项
- 运行时:Python 3.10+
- MCP框架:
mcp(快速MCP) - 生成工具:PyInstaller 6.0+
- 时区数据:
tzdata(自动包含在Windows上)
使用的标准库模块
datetime-核心日期/时间操作zoneinfo-时区支持(Python 3.9+)time-时间工具typing-键入提示
时区支持
服务器使用Python zoneinfo 模块:
- 在Unix系统(macOS/Linux)上:使用系统时区数据库
- 在Windows上:需要
tzdata软件包(通过依赖关系自动安装)
平台特定注意事项
macOS
- 来自系统的时区数据(
/usr/share/zoneinfo) - 可执行文件将适用于您的Mac架构(英特尔或苹果硅)
Linux
- 来自系统的时区数据(
/usr/share/zoneinfo) - 基于您想要的目标架构(x86_64、ARM等)构建
视窗
- 需要
tzdata包(包含在依赖项中) - 可能需要以管理员身份运行构建脚本
- 防病毒软件可能会标记PyInstaller可执行文件(误报)
故障排除
Windows:MCP服务器未连接到Claude桌面
-
检查路径:确保你使用了双反睫毛(
\\)在JSON配置中:"command": "C:\\Users\\YourName\\mcp-servers\\mcp-time-server-windows.exe" -
检查Windows安全:Windows Defender或防病毒软件可能会阻止可执行文件:
- 右键单击
.exefile → 属性→ 勾选底部的“解锁”→ Apply - 或者在Windows安全中为可执行文件添加例外
- 右键单击
-
验证文件路径:确保配置中的路径与您保存的路径完全匹配
.exe文件 -
检查克劳德桌面日志:在Claude Desktop日志中查找错误消息以诊断问题
Windows:运行可执行文件时的安全警告
Windows可能会显示“Windows保护您的电脑”警告,因为可执行文件未签名:
- 点击“更多信息”
- 单击“无论如何运行”
- 这是安全的——可执行文件是通过GitHub Actions从开源代码构建的
macOS:“无法打开,因为无法验证开发人员”
macOS Gatekeeper默认阻止未签名的可执行文件:
-
方法1:隐私和安全设置 (推荐)
- 尝试运行可执行文件(或在配置服务器的情况下启动Claude Desktop)
- 打开 系统设置 → 隐私和安全
- 向下滚动并单击 “无论如何都允许” 在被阻止的应用程序消息旁边
- 尝试再次运行并单击 “打开” 当系统提示时
-
方法2:命令行
xattr -d com.apple.quarantine ~/path/to/mcp-time-server-macos -
这是安全的——可执行文件是通过GitHub Actions从开源代码构建的
“未找到时区数据”
在Windows上从源代码运行时,请确保 tzdata 已安装:
pip install tzdata
预构建的可执行文件不需要这样做(tzdata是捆绑的)。
可执行文件太大
可执行文件包括Python运行时和所有依赖项。典型尺寸:
- macOS:40-45MB
- Linux:35-40 MB
- 视窗:40-45MB
为了在本地构建时减小大小,您可以在 .spec 文件。
运行可执行文件时“权限被拒绝”
在Unix系统上:
chmod +x mcp-time-server-macos # or mcp-time-server-linux
许可证
麻省理工学院
贡献
这是一个简单、专注的MCP服务器。如果你需要额外的时间工具,请随时分叉和扩展!