MCP Time Server

by chrishayuk

4 208 downloads Not rated yet MIT
GitHub

About

# 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. ## Project Details -…

Details

License
MIT

Explore

- 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

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Time Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

- Python 3.11 or higher
- pip
- (Optional) Virtual environment recommended

pip install chuk-mcp-artifact-server

1. Clone the repository:

git clone <repository-url>
cd chuk-mcp-artifact-server

2. Create a virtual environment:

python -m venv venv
source venv/bin/activate # On Windows, use venv\Scripts\activate

3. Install the package:

pip install .  # Installs the package in editable mode

To set up for development:

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

from chuk_mcp_artifact_server.main import main

if __name__ == "__main__":
main()

- NO_BOOTSTRAP: Set to disable component bootstrapping
- Other configuration options can be set in the configuration files

pytest

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp time server": {
            "chuk-mcp-time-server": {
                "command": "python",
                "args": [
                    "-m",
                    "venv",
                    "venv"
                ]
            }
        }
    }
}

McpServers

{
    "chuk-mcp-time-server": {
        "command": "python",
        "args": [
            "-m",
            "venv",
            "venv"
        ]
    }
}

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.

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-artifact-server

Install from Source

1. Clone the repository:

git clone <repository-url>
cd chuk-mcp-artifact-server

2. Create a virtual environment:

python -m venv venv
source venv/bin/activate # On Windows, use venv\Scripts\activate

3. 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-artifact-server

Programmatic Usage

from chuk_mcp_artifact_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

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.