Time MCP Server
Time MCP Server
一个提供时间和时区转换能力的 Model Context Protocol 服务器。该服务器使 LLM 能够获取当前时间信息,并使用 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。
uvx mcp-server-time使用 PIP
或者,你可以通过 pip 安装 mcp-server-time:
pip install mcp-server-time安装后,你可以使用以下命令将其作为脚本运行:
python -m mcp_server_timeRelated MCP server: Time MCP Server
配置
为 Claude.app 配置
添加到你的 Claude 设置中:
{
"mcpServers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time"]
}
}
}{
"mcpServers": {
"time": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "LOCAL_TIMEZONE", "mcp/time"]
}
}
}{
"mcpServers": {
"time": {
"command": "python",
"args": ["-m", "mcp_server_time"]
}
}
}为 Zed 配置
添加到你的 Zed settings.json:
"context_servers": [
"mcp-server-time": {
"command": "uvx",
"args": ["mcp-server-time"]
}
],"context_servers": {
"mcp-server-time": {
"command": "python",
"args": ["-m", "mcp_server_time"]
}
},为 VS Code 配置
如需快速安装,请使用下方的一键安装按钮...
如需手动安装,请在 VS Code 的用户设置(JSON)文件中添加以下 JSON 块。你可以按 Ctrl + Shift + P 并输入 Preferences: Open User Settings (JSON) 来完成此操作。
或者,你可以将其添加到工作区中名为 .vscode/mcp.json 的文件中。这将允许你与他人共享配置。
注意:使用
mcp.json文件时需要mcp键。
{
"mcp": {
"servers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time"]
}
}
}
}{
"mcp": {
"servers": {
"time": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/time"]
}
}
}
}为 Zencoder 配置
转到 Zencoder 菜单(...)
从下拉菜单中选择
Agent Tools点击
Add Custom MCP从下方添加名称和服务器配置,并确保点击
Install按钮
{
"command": "uvx",
"args": ["mcp-server-time"]
}自定义 - 系统时区
默认情况下,服务器会自动检测你的系统时区。你可以通过在配置的 args 列表中添加 --local-timezone 参数来覆盖此设置。
示例:
{
"command": "python",
"args": ["-m", "mcp_server_time", "--local-timezone=America/New_York"]
}示例交互
获取当前时间:
{
"name": "get_current_time",
"arguments": {
"timezone": "Europe/Warsaw"
}
}响应:
{
"timezone": "Europe/Warsaw",
"datetime": "2024-01-01T13:00:00+01:00",
"is_dst": false
}在时区之间转换时间:
{
"name": "convert_time",
"arguments": {
"source_timezone": "America/New_York",
"time": "16:30",
"target_timezone": "Asia/Tokyo"
}
}响应:
{
"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 inspector 来调试服务器。对于 uvx 安装:
npx @modelcontextprotocol/inspector uvx mcp-server-time或者,如果你已将包安装到特定目录或正在对其进行开发:
cd path/to/servers/src/time
npx @modelcontextprotocol/inspector uv run mcp-server-time为 Claude 准备的问题示例
"现在几点了?"(将使用系统时区)
"东京现在几点了?"
"当纽约是下午 4 点时,伦敦是几点?"
"将东京时间上午 9:30 转换为纽约时间"
构建
Docker 构建:
cd src/time
docker build -t mcp/time .贡献
我们鼓励贡献,以帮助扩展和改进 mcp-server-time。无论你是想添加新的时间相关工具、增强现有功能,还是改进文档,你的意见都非常宝贵。
有关其他 MCP 服务器和实现模式的示例,请参阅: https://github.com/modelcontextprotocol/servers
欢迎提交 Pull Request!欢迎贡献新想法、错误修复或增强功能,让 mcp-server-time 更加强大和实用。
许可证
mcp-server-time 根据 MIT 许可证授权。这意味着你可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。
Available Tools
2 toolsconvert_timeC
Convert time between timezones
| Name | Required | Description | Default |
|---|---|---|---|
| time | Yes | Time to convert in 24-hour format (HH:MM) | |
| source_timezone | Yes | Source IANA timezone name (e.g., 'America/New_York', 'Europe/London'). Use 'Etc/UTC' as local timezone if no source timezone provided by the user. | |
| target_timezone | Yes | Target IANA timezone name (e.g., 'Asia/Tokyo', 'America/San_Francisco'). Use 'Etc/UTC' as local timezone if no target timezone provided by the user. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It does not disclose any behavioral traits such as how time zones are handled, invalid inputs, or daylight saving time. The description is minimal and adds no transparency beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded. However, it could include more useful information without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and description does not mention return format, error handling, or edge cases. For a time zone conversion tool, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 3 parameters. The description adds no extra meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Convert time between timezones', conveying the verb and resource. However, it does not differentiate from the sibling tool 'get_current_time', which might also involve time zones.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. The description is a single phrase with no context about prerequisites or when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_current_timeC
Get current time in a specific timezones
| Name | Required | Description | Default |
|---|---|---|---|
| timezone | Yes | IANA timezone name (e.g., 'America/New_York', 'Europe/London'). Use 'Etc/UTC' as local timezone if no timezone provided by the user. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states 'Get current time' without disclosing output format, time source, or any behavioral details like handling of invalid timezones.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single sentence but grammatically flawed ('timezones'). It is concise but lacks clarity and proper structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description omits critical context such as return format, time source (server vs user), and error handling. Incomplete for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full description of the 'timezone' parameter with examples (100% coverage). The tool description adds no additional semantic value beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool gets current time in a specific timezone, but the grammar ('timezones') slightly reduces clarity. It distinguishes from sibling 'convert_time' by focusing on current time retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs the sibling 'convert_time' or any exclusion criteria. The description does not indicate context-specific usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.3- First observed
convert_time - First observed
get_current_time
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one retrieves the current time for a given timezone, and the other converts a specified time between timezones. There is no overlap or ambiguity between them.
Both tools follow the same verb_noun snake_case pattern: get_current_time and convert_time. The naming is predictable and clearly indicates the action and target.
With only two tools, the server feels minimal for its domain, though both tools are essential and focused. The count is borderline but not unreasonable for a simple timezone utility.
The core time-related operations are covered: getting current time and converting between timezones. A list of supported timezones would be a minor useful addition, but agents can work reasonably well without it.
Maintenance
Related MCP Connectors
A real clock for AI agents: current time, timezone conversion, and DST facts from the IANA tzdb.
Current time in any IANA time zone, plus the full time-zone list. Via timeapi.io.
Current time, timezone conversion & date math for AI agents. On Cloudflare Workers.
Deterministic time tools for AI agents: timezone conversion, business-day math, cron interpretation.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides time and timezone functionality for LLMs, enabling them to get current time information across different timezones and convert times between zones.2MIT
- AlicenseBqualityCmaintenanceProvides current time information and timezone conversion capabilities using IANA timezone names. Enables LLMs to get current time in any timezone and convert times between different timezones with automatic system timezone detection.2MIT
- AlicenseAqualityDmaintenanceProvides LLMs with current date and time information across any timezone, with configurable defaults and support for IANA timezone identifiers.15 npm3Apache 2.0
- AlicenseBqualityDmaintenanceProvides current time information and timezone conversion capabilities using IANA timezone names with automatic system detection. It enables LLMs to fetch local or global times and convert specific timestamps between different regions.22MIT