Integrations
Supports containerized deployment with Docker, allowing the time server to run in isolated containers with proper port mapping.
Provides tools for time-related queries including getting the current time in various IANA timezones and converting times between timezones.
Offers timezone conversion functionality and current time retrieval across different IANA timezones through a TypeScript implementation.
Servidor de tiempo MCP ( mcp-time-srv
)
Un servidor de Protocolo de Contexto de Modelo (MCP) simple implementado en TypeScript que proporciona herramientas para consultas relacionadas con el tiempo, incluida la obtención de la hora actual en varias zonas horarias y la conversión de horas entre zonas horarias.
Este servidor admite los protocolos de transporte HTTP+SSE MCP heredados y HTTP Streamable modernos.
Características
Proporciona las siguientes herramientas MCP:
get_current_time
: Devuelve la hora actual en una zona horaria IANA especificada.convert_time
: convierte una hora determinada de una zona horaria IANA de origen a una zona horaria IANA de destino.
Prerrequisitos
- Node.js (se recomienda v18 o posterior)
- npm (normalmente viene con Node.js)
- Docker (opcional, para ejecutar en un contenedor)
Configuración
- Clona el repositorio (si aún no lo has hecho):Copy
- Instalar dependencias:Copy
Ejecutando localmente
- Construya el código TypeScript:Esto compila la fuente TypeScript enCopy
src/
a JavaScript endist/
. - Ejecutar el servidor: puede ejecutar el servidor usando
ts-node
(para desarrollo) o directamente connode
después de la compilación.- Usando
ts-node
:Copy - Usando
node
(después de la construcción):Copy
- Usando
El servidor se iniciará, normalmente escuchando en el puerto 3000.
Ejecutar con Docker (opcional)
Se proporciona un Dockerfile
para construir y ejecutar el servidor en un contenedor.
- Construya la imagen de Docker:Copy
- Ejecute el contenedor:Copy
-d
: Ejecutar en modo separado (en segundo plano).-p 3000:3000
: asigna el puerto 3000 de su host al puerto 3000 del contenedor.--name my-mcp-server
: asigna un nombre al contenedor para una administración más sencilla.
El servidor se ejecutará dentro del contenedor, accesible en http://localhost:3000
.
Para detener el contenedor:
Para ver los registros:
Pruebas con el cliente
Se incluye un script de cliente de prueba simple ( src/client.ts
) para demostrar la interacción con las herramientas del servidor.
- Asegúrese de que el servidor esté ejecutándose (ya sea localmente o en Docker).
- Ejecute el cliente:Copy
El cliente se conectará al servidor (utilizando el transporte SSE de forma predeterminada), enumerará las herramientas disponibles, llamará a cada herramienta con argumentos de ejemplo (incluidos algunos diseñados para probar el manejo de errores) e imprimirá los resultados.
Detalles de la herramienta
get_current_time
Devuelve la hora actual en la zona horaria especificada.
- Argumento de entrada:
timezone
(cadena, opcional): Un nombre de zona horaria de IANA (p. ej.,America/New_York
,Europe/London
). Si se omite, se usa la zona horaria local del servidor de forma predeterminada.
- Salida: Un objeto JSON que contiene:
timezone
(cadena): la zona horaria efectiva utilizada.datetime
(cadena): la hora actual en formato ISO 8601 con desplazamiento (por ejemplo,2025-04-26T01:39:15Z
).
convert_time
Convierte una hora de una zona horaria de origen a una zona horaria de destino.
- Argumentos de entrada:
source_timezone
(cadena, opcional): Nombre de la zona horaria de la IANA de origen. Si se omite, el valor predeterminado es la zona horaria local del servidor.time
(cadena, obligatoria): la hora a convertir en formato HH:MM de 24 horas (por ejemplo,14:30
).target_timezone
(cadena, opcional): Nombre de la zona horaria de la IANA de destino. Si se omite, el valor predeterminado es la zona horaria local del servidor.
- Salida: Un objeto JSON que contiene:
source
(objeto): Detalles de la hora en la zona horaria de origen (timezone
,datetime
).target
(objeto): Detalles de la hora convertida en la zona horaria de destino (timezone
,datetime
).time_difference
(cadena): la diferencia entre las zonas horarias de origen y destino (por ejemplo,+8h
,-5h
,+5.75h
).
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor TypeScript que proporciona herramientas relacionadas con el tiempo a través del Protocolo de Contexto de Modelo, permitiendo a los usuarios obtener la hora actual en varias zonas horarias y convertir horas entre diferentes zonas horarias de IANA.
Related MCP Servers
- AsecurityAlicenseAqualityA production-ready template for creating Model Context Protocol servers with TypeScript, providing tools for efficient testing, development, and deployment.Last updated -11512JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that extracts embedded data (such as i18n translations or key/value configurations) from TypeScript/JavaScript source code into structured JSON configuration files.Last updated -2142JavaScriptMIT License
- AsecurityAlicenseAqualityA TypeScript server implementing the Model Context Protocol (MCP) that provides datetime and timezone information to AI agents and chat interfaces, allowing them to access current time in various timezones.Last updated -42TypeScriptMozilla Public License 2.0
- AsecurityFlicenseAqualityA Model Context Protocol server that provides time and timezone conversion capabilities, enabling LLMs to get current time information and perform timezone conversions using IANA timezone names.Last updated -21Python