# Time MCP Server
> **基于官方MCP项目修改**
> 原作者:Mariusz 'maledorak' Korzekwa
> 原仓库:[modelcontextprotocol/servers](https://github.com/modelcontextprotocol/servers)
> 原项目路径:src/time
A Model Context Protocol server that provides time capabilities. This server enables LLMs to get current time information using IANA timezone names, with automatic system timezone detection.
**注意**: 此版本已移除时区转换功能,仅保留获取当前时间功能。
### Available Tools
- `get_current_time` - Get current time in a specific timezone or system timezone.
- Required arguments:
- `timezone` (string): IANA timezone name (e.g., 'America/New_York', 'Europe/London')
## Installation
### Using uv (recommended)
When using [`uv`](https://docs.astral.sh/uv/) no specific installation is needed. We will
use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run *mcp-server-time*.
### Using PIP
Alternatively you can install `mcp-server-time` via pip:
```bash
pip install mcp-server-time
```
After installation, you can run it as a script using:
```bash
python -m mcp_server_time
```
### Using Docker with SSE Support
Build and run with mcp-proxy for HTTP/SSE access:
```bash
# Build the SSE-enabled Docker image
docker build -f Dockerfile.sse -t mcp-time-sse .
# Run the container (accessible via HTTP on port 8999)
docker run -p 8999:8999 mcp-time-sse
```
## Configuration
### Configure for Claude.app
Add to your Claude settings:
<details>
<summary>Using uvx</summary>
```json
{
"mcpServers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
}
}
}
```
</details>
<details>
<summary>Using uv with local directory</summary>
```json
{
"mcpServers": {
"time": {
"command": "uv",
"args": [
"run",
"--directory",
"D:/WorkSpace/demo/servers/src/time",
"mcp-server-time",
"--local-timezone",
"Asia/Shanghai"
]
}
}
}
```
</details>
<details>
<summary>Using docker</summary>
```json
{
"mcpServers": {
"time": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/time"]
}
}
}
```
</details>
<details>
<summary>Using pip installation</summary>
```json
{
"mcpServers": {
"time": {
"command": "python",
"args": ["-m", "mcp_server_time", "--local-timezone", "Asia/Shanghai"]
}
}
}
```
</details>
### Configure for Zed
Add to your Zed settings.json:
<details>
<summary>Using uvx</summary>
```json
"context_servers": [
"mcp-server-time": {
"command": "uvx",
"args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
}
],
```
</details>
<details>
<summary>Using pip installation</summary>
```json
"context_servers": {
"mcp-server-time": {
"command": "python",
"args": ["-m", "mcp_server_time", "--local-timezone", "Asia/Shanghai"]
}
},
```
</details>
### Configure for VS Code
For quick installation, use one of the one-click install buttons below...
[](https://insiders.vscode.dev/redirect/mcp/install?name=time&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22mcp-server-time%22%5D%7D) [](https://insiders.vscode.dev/redirect/mcp/install?name=time&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22mcp-server-time%22%5D%7D&quality=insiders)
[](https://insiders.vscode.dev/redirect/mcp/install?name=time&config=%7B%22command%22%3A%22docker%22%2C%22args%22%3A%5B%22run%22%2C%22-i%22%2C%22--rm%22%2C%22mcp%2Ftime%22%5D%7D) [](https://insiders.vscode.dev/redirect/mcp/install?name=time&config=%7B%22command%22%3A%22docker%22%2C%22args%22%3A%5B%22run%22%2C%22-i%22%2C%22--rm%22%2C%22mcp%2Ftime%22%5D%7D&quality=insiders)
For manual installation, add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing `Ctrl + Shift + P` and typing `Preferences: Open User Settings (JSON)`.
Optionally, you can add it to a file called `.vscode/mcp.json` in your workspace. This will allow you to share the configuration with others.
> Note that the `mcp` key is needed when using the `mcp.json` file.
<details>
<summary>Using uvx</summary>
```json
{
"mcp": {
"servers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
}
}
}
}
```
</details>
<details>
<summary>Using Docker</summary>
```json
{
"mcp": {
"servers": {
"time": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/time"]
}
}
}
}
```
</details>
### Customization - System Timezone
By default, the server automatically detects your system's timezone. You can override this by adding the argument `--local-timezone` to the `args` list in the configuration.
Example:
```json
{
"command": "python",
"args": ["-m", "mcp_server_time", "--local-timezone=Asia/Shanghai"]
}
```
## Example Interactions
1. Get current time:
```json
{
"name": "get_current_time",
"arguments": {
"timezone": "Asia/Shanghai"
}
}
```
Response:
```json
{
"timezone": "Asia/Shanghai",
"datetime": "2024-01-01T20:00:00+08:00",
"is_dst": false
}
```
## Debugging
You can use the MCP inspector to debug the server. For uvx installations:
```bash
npx @modelcontextprotocol/inspector uvx mcp-server-time
```
Or if you've installed the package in a specific directory or are developing on it:
```bash
cd path/to/servers/src/time
npx @modelcontextprotocol/inspector uv run mcp-server-time
```
## Examples of Questions for Claude
1. "What time is it now?" (will use system timezone)
2. "What time is it in Tokyo?"
3. "What time is it in New York?"
4. "Get the current time in London"
## Build
Docker build:
```bash
cd src/time
docker build -t mcp/time .
```
Docker build with SSE support:
```bash
cd time
docker build -f Dockerfile.sse -t mcp-time-sse .
```
## Contributing
We encourage contributions to help expand and improve mcp-server-time. Whether you want to add new time-related tools, enhance existing functionality, or improve documentation, your input is valuable.
For examples of other MCP servers and implementation patterns, see:
https://github.com/modelcontextprotocol/servers
Pull requests are welcome! Feel free to contribute new ideas, bug fixes, or enhancements to make mcp-server-time even more powerful and useful.
## License
mcp-server-time is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.