A Model Context Protocol (MCP) server that provides timezone-aware date and time operations. This server addresses the common issue where AI assistants provide incorrect date information due to timezone confusion. - Accurate timezone handling - Get current time in any IANA timezone - Time conversion - Convert time between different timezones - Multiple formats - ISO 8601, localized, and human-read
Add this skill
npx mdskills install davidan90/time-node-mcpWell-documented timezone-aware MCP server with clear tool descriptions and setup instructions
1# Time Node MCP Server23A Model Context Protocol (MCP) server that provides timezone-aware date and time operations. This server addresses the common issue where AI assistants provide incorrect date information due to timezone confusion.45## Features67- **Accurate timezone handling** - Get current time in any IANA timezone8- **Time conversion** - Convert time between different timezones9- **Multiple formats** - ISO 8601, localized, and human-readable formats10- **System timezone detection** - Automatically detect system timezone11- **DST awareness** - Correctly handles Daylight Saving Time transitions12- **Date utilities** - Get current date with day-of-week information1314## Installation1516### Prerequisites1718- Node.js 18.0.0 or higher19- npm or yarn2021### Install and Build2223```bash24# Clone or download the project25cd time-node-mcp2627# Install dependencies28npm install2930# Build the TypeScript code31npm run build32```3334## Usage with Claude Desktop3536Add the following configuration to your Claude Desktop settings file:3738### macOS39`~/Library/Application Support/Claude/claude_desktop_config.json`4041### Windows42`%APPDATA%\Claude\claude_desktop_config.json`4344```json45{46 "mcpServers": {47 "time-node-mcp": {48 "command": "node",49 "args": ["/path/to/time-node-mcp/dist/index.js"]50 }51 }52}53```5455Replace `/path/to/time-node-mcp/` with the actual path to your installation directory.5657## Available Tools5859### 1. get_current_time60Get the current date and time in a specific timezone.6162**Parameters:**63- `timezone` (required): IANA timezone identifier (e.g., "America/New_York", "Europe/London")64- `format` (optional): Output format - "iso", "local", or "full" (default: "iso")6566**Example:**67```json68{69 "timezone": "America/New_York",70 "format": "full"71}72```7374### 2. convert_time75Convert time from one timezone to another.7677**Parameters:**78- `sourceTimezone` (required): Source IANA timezone identifier79- `targetTimezone` (required): Target IANA timezone identifier80- `time` (required): Time in HH:MM or HH:MM:SS format (24-hour)81- `date` (optional): Date in YYYY-MM-DD format (uses current date if not provided)8283**Example:**84```json85{86 "sourceTimezone": "America/New_York",87 "targetTimezone": "Europe/London",88 "time": "14:30",89 "date": "2024-08-12"90}91```9293### 3. get_system_timezone94Get the system's current timezone with current time information.9596**Parameters:** None9798### 4. get_current_date99Get the current date in a specific timezone with day-of-week information.100101**Parameters:**102- `timezone` (required): IANA timezone identifier103- `includeTime` (optional): Whether to include time information (default: false)104105**Example:**106```json107{108 "timezone": "Asia/Tokyo",109 "includeTime": true110}111```112113## Development114115### Scripts116117```bash118# Build the project119npm run build120121# Build and watch for changes122npm run dev123124# Run the server directly (after building)125npm start126127# Lint the code128npm run lint129130# Type check131npm run typecheck132```133134### Project Structure135136```137time-node-mcp/138├── src/139│ ├── index.ts # Main MCP server implementation140│ ├── time-service.ts # Core time/timezone functionality141│ └── interfaces.ts # TypeScript interfaces142├── dist/ # Compiled JavaScript (generated)143├── package.json144├── tsconfig.json145└── README.md146```147148## Common Use Cases1491501. **Correct current date/time**: When Claude needs to know "what day is today" in your timezone1512. **Meeting scheduling**: Convert meeting times between different timezones1523. **Travel planning**: Understand time differences when traveling1534. **International coordination**: Work with teams across multiple timezones154155## Timezone Support156157This server supports all IANA timezone identifiers, including:158159- `America/New_York`160- `Europe/London`161- `Asia/Tokyo`162- `Australia/Sydney`163- `Pacific/Auckland`164- And many more...165166You can find a complete list of supported timezones at: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones167168## Error Handling169170The server provides comprehensive error handling for:171- Invalid timezone identifiers172- Malformed time formats173- Invalid date formats174- System errors175176All errors are returned in a structured JSON format with descriptive messages.177178## Contributing1791801. Fork the repository1812. Create a feature branch1823. Make your changes1834. Run tests and linting1845. Submit a pull request185186## License187188MIT License - see LICENSE file for details.189190## Troubleshooting191192### Common Issues193194**"Invalid timezone" error:**195- Ensure you're using valid IANA timezone identifiers196- Check spelling and capitalization (e.g., "America/New_York", not "america/new_york")197198**MCP server not connecting:**199- Verify the path in your Claude Desktop configuration is correct200- Ensure the project is built (`npm run build`)201- Check that Node.js is installed and accessible202203**Date/time seems incorrect:**204- The server uses your system's current date/time as the base205- Ensure your system clock is correct and timezone is properly set
Full transparency — inspect the skill content before installing.