Skip to main content
Glama

MCP Time Server

by chrishayuk

MCP Time Server

Overview

The MCP Time Server is a sophisticated Python-based microservice designed to provide advanced time-related utilities across different timezones. It offers robust functionality for retrieving current times and converting times between various global timezones.

Related MCP server: MCP Time Server

Project Details

  • Version: 0.1.1

  • Python Compatibility: Python 3.11+

Features

  • Current Time Retrieval: Get the current time for any IANA timezone

  • Time Zone Conversion: Convert times between different time zones

  • Comprehensive Validation: Robust input validation using Pydantic models

  • Async Server Architecture: Built with asyncio for efficient performance

  • Flexible Configuration: Configurable through environment variables and config files

Dependencies

Core dependencies:

  • mcp (>=1.6.0)

  • pydantic (>=2.11.2)

  • PyYAML (>=6.0.2)

  • pyz (>=0.4.3)

Development dependencies:

  • pytest (>=8.3.5)

Installation

Prerequisites

  • Python 3.11 or higher

  • pip

  • (Optional) Virtual environment recommended

Install from PyPI

pip install chuk-mcp-time-server

Install from Source

  1. Clone the repository:

git clone <repository-url> cd chuk-mcp-time-server
  1. Create a virtual environment:

python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate`
  1. Install the package:

pip install . # Installs the package in editable mode

Development Installation

To set up for development:

pip install .[dev] # Installs package with development dependencies

Running the Server

Command-Line Interface

chuk-mcp-time-server

Programmatic Usage

from chuk_mcp_time_server.main import main if __name__ == "__main__": main()

Environment Variables

  • NO_BOOTSTRAP: Set to disable component bootstrapping

  • Other configuration options can be set in the configuration files

Available Tools

1. Get Current Time

Input:

  • timezone: IANA timezone name (e.g., 'America/New_York')

Example:

get_current_time('Europe/London')

Returns:

  • Current time in the specified timezone

  • Timezone details

  • Daylight Saving Time (DST) status

2. Convert Time

Input:

  • source_timezone: Source timezone (IANA format)

  • time: Time in HH:MM (24-hour) format

  • target_timezone: Target timezone (IANA format)

Example:

convert_time('America/New_York', '14:30', 'Europe/Paris')

Returns:

  • Source time details

  • Target time details

  • Time difference between zones

Development

Code Formatting

  • Black is used for code formatting

  • isort is used for import sorting

  • Line length is set to 88 characters

Running Tests

pytest

Contributing

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/AmazingFeature)

  3. Ensure code passes formatting and testing

  4. Commit your changes (git commit -m 'Add some AmazingFeature')

  5. Push to the branch (git push origin feature/AmazingFeature)

  6. Open a Pull Request

License

MIT License

Deploy Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chrishayuk/chuk-mcp-time-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server