https://github.com/odgrim/mcp-datetime
https://github.com/odgrim/mcp-datetime
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/odgrim/mcp-datetime
- Owner: odgrim
- License: mpl-2.0
- Created: 2025-03-04T06:55:06.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-03-04T08:25:47.000Z (4 months ago)
- Last Synced: 2025-03-04T08:32:25.425Z (4 months ago)
- Language: TypeScript
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- mcp-index - DateTime Server - Provides datetime and timezone information for AI agents and chat interfaces, enabling access to the current time, listing available timezones, and retrieving timezone-specific data. (Scheduling and Calendars)
README
# MCP DateTime
A TypeScript implementation of a Model Context Protocol (MCP) server that provides datetime and timezone information to agentic systems and chat REPLs.
## Overview
MCP DateTime is a simple server that implements the [Model Context Protocol](https://github.com/model-context-protocol/mcp) to provide datetime and timezone information to AI agents and chat interfaces. It allows AI systems to:
- Get the current time in the local system timezone
- Get the current time in any valid timezone
- List all available timezones
- Access timezone information through URI resources## Installation
### From npm
```bash
npm install -g mcp-datetime
```### From source
```bash
git clone https://github.com/odgrmi/mcp-datetime.git
cd mcp-datetime
npm install
npm run build
```## Usage
### Command Line
MCP DateTime can be run in two modes:
#### 1. Standard I/O Mode (Default)
This mode is ideal for integrating with AI systems that support the MCP protocol through standard input/output:
```bash
mcp-datetime
```#### 2. Server-Sent Events (SSE) Mode
This mode starts an HTTP server that provides SSE transport for the MCP protocol:
```bash
mcp-datetime --sse
```You can also specify a custom port and URI prefix:
```bash
mcp-datetime --sse --port=8080 --prefix=/api/datetime
```### Environment Variables
- `PORT`: Sets the port for SSE mode (default: 3000)
- `URI_PREFIX`: Sets the URI prefix for SSE mode (default: none)## Available Tools
MCP DateTime provides the following tools:
### `get-current-time`
Returns the current time in the system's local timezone.
### `get-current-timezone`
Returns the current system timezone.
### `get-time-in-timezone`
Returns the current time in a specified timezone.
Parameters:
- `timezone`: The timezone to get the current time for (e.g., "America/New_York")### `list-timezones`
Returns a list of all available timezones.
## Resource URIs
MCP DateTime also provides access to timezone information through resource URIs:
### `datetime://{timezone}`
Returns the current time in the specified timezone.
Example: `datetime://America/New_York`
### `datetime://list`
Returns a list of all available timezones.
## Common Timezones
The following common timezones are always available:
- UTC
- Europe/London
- Europe/Paris
- Europe/Berlin
- America/New_York
- America/Chicago
- America/Denver
- America/Los_Angeles
- Asia/Tokyo
- Asia/Shanghai
- Asia/Kolkata
- Australia/Sydney
- Pacific/Auckland## SSE Endpoints
When running in SSE mode, the following endpoints are available:
- `/sse`: SSE connection endpoint
- `/message`: Message endpoint for client-to-server communication
- `/info`: Basic server informationIf a URI prefix is specified, it will be prepended to all endpoints.
## Integration with AI Systems
MCP DateTime can be integrated with AI systems that support the Model Context Protocol. This allows AI agents to access accurate timezone and datetime information.
## Development
### Prerequisites
- Node.js 14.16 or higher
- npm### Setup
```bash
git clone https://github.com/odgrim/mcp-datetime.git
cd mcp-datetime
npm install
```### Build
```bash
npm run build
```### Run in Development Mode
```bash
npm run dev # Standard I/O mode
npm run dev:sse # SSE mode
```## License
This project is licensed under the Mozilla Public License 2.0 - see the [LICENSE](LICENSE) file for details.