Time MCP Server

Proporciona la hora actual usando nombres de zona horaria IANA, con detección automática de la zona horaria del sistema.

Documentación

Time MCP Server

Modificado a partir de un proyecto MCP oficial
Autor original: Mariusz 'maledorak' Korzekwa
Repositorio original: modelcontextprotocol/servers
Ruta del proyecto original: src/time

Un servidor del Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de tiempo. Este servidor permite a los LLMs obtener información de la hora actual utilizando nombres de zona horaria IANA, con detección automática de la zona horaria del sistema.

Nota: Esta versión ha eliminado la funcionalidad de conversión de zonas horarias; solo conserva la función de obtener la hora actual.

Herramientas disponibles

  • get_current_time - Obtener la hora actual en una zona horaria específica o la del sistema.
    • Argumentos requeridos:
      • timezone (cadena): nombre de zona horaria IANA (p. ej., 'America/New_York', 'Europe/London')

Instalación

Usando uv (recomendado)

Cuando se usa uv no se necesita una instalación específica. Usaremos uvx para ejecutar directamente mcp-server-time.

Usando PIP

Alternativamente, puedes instalar mcp-server-time mediante pip:

pip install mcp-server-time

Después de la instalación, puedes ejecutarlo como un script usando:

python -m mcp_server_time

Usando Docker con soporte SSE

Compila y ejecuta con mcp-proxy para acceso HTTP/SSE:

# Build the SSE-enabled Docker image
docker build -f Dockerfile.sse -t mcp-time-sse .

# Run the container (accessible via HTTP on port 8999)
docker run -p 8999:8999 mcp-time-sse

Configuración

Configurar para Claude.app

Añade a tu configuración de Claude:

Usando uvx
{
  "mcpServers": {
    "time": {
      "command": "uvx",
      "args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
    }
  }
}
Usando uv con directorio local
{
  "mcpServers": {
    "time": {
      "command": "uv",
      "args": [
        "run", 
        "--directory", 
        "D:/WorkSpace/demo/servers/src/time",
        "mcp-server-time",
        "--local-timezone",
        "Asia/Shanghai"
      ]
    }
  }
}
Usando docker
{
  "mcpServers": {
    "time": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/time"]
    }
  }
}
Usando instalación pip
{
  "mcpServers": {
    "time": {
      "command": "python",
      "args": ["-m", "mcp_server_time", "--local-timezone", "Asia/Shanghai"]
    }
  }
}

Configurar para Zed

Añade a tu archivo settings.json de Zed:

Usando uvx
"context_servers": [
  "mcp-server-time": {
    "command": "uvx",
    "args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
  }
],
Usando instalación pip
"context_servers": {
  "mcp-server-time": {
    "command": "python",
    "args": ["-m", "mcp_server_time", "--local-timezone", "Asia/Shanghai"]
  }
},

Configurar para VS Code

Para una instalación rápida, usa uno de los botones de instalación con un clic a continuación...

Install with UV in VS Code Install with UV in VS Code Insiders

Install with Docker in VS Code Install with Docker in VS Code Insiders

Para instalación manual, añade el siguiente bloque JSON a tu archivo de Configuración de Usuario (JSON) en VS Code. Puedes hacer esto presionando Ctrl + Shift + P y escribiendo Preferences: Open User Settings (JSON).

Opcionalmente, puedes añadirlo a un archivo llamado .vscode/mcp.json en tu espacio de trabajo. Esto te permitirá compartir la configuración con otros.

Ten en cuenta que la clave mcp es necesaria cuando se usa el archivo mcp.json.

Usando uvx
{
  "mcp": {
    "servers": {
      "time": {
        "command": "uvx",
        "args": ["mcp-server-time", "--local-timezone", "Asia/Shanghai"]
      }
    }
  }
}
Usando Docker
{
  "mcp": {
    "servers": {
      "time": {
        "command": "docker",
        "args": ["run", "-i", "--rm", "mcp/time"]
      }
    }
  }
}

Personalización - Zona horaria del sistema

Por defecto, el servidor detecta automáticamente la zona horaria de tu sistema. Puedes anular esto añadiendo el argumento --local-timezone a la lista args en la configuración.

Ejemplo:

{
  "command": "python",
  "args": ["-m", "mcp_server_time", "--local-timezone=Asia/Shanghai"]
}

Ejemplos de interacción

  1. Obtener la hora actual:
{
  "name": "get_current_time",
  "arguments": {
    "timezone": "Asia/Shanghai"
  }
}

Respuesta:

{
  "timezone": "Asia/Shanghai",
  "datetime": "2024-01-01T20:00:00+08:00",
  "is_dst": false
}

Depuración

Puedes usar el inspector de MCP para depurar el servidor. Para instalaciones con uvx:

npx @modelcontextprotocol/inspector uvx mcp-server-time

O si has instalado el paquete en un directorio específico o estás desarrollando en él:

cd path/to/servers/src/time
npx @modelcontextprotocol/inspector uv run mcp-server-time

Ejemplos de preguntas para Claude

  1. "¿Qué hora es ahora?" (usará la zona horaria del sistema)
  2. "¿Qué hora es en Tokio?"
  3. "¿Qué hora es en Nueva York?"
  4. "Obtén la hora actual en Londres"

Compilación

Compilación con Docker:

cd src/time
docker build -t mcp/time .

Compilación con Docker con soporte SSE:

cd time
docker build -f Dockerfile.sse -t mcp-time-sse .

Contribuciones

Animamos a las contribuciones para ayudar a expandir y mejorar mcp-server-time. Ya sea que quieras añadir nuevas herramientas relacionadas con el tiempo, mejorar la funcionalidad existente o mejorar la documentación, tu aporte es valioso.

Para ejemplos de otros servidores MCP y patrones de implementación, consulta: https://github.com/modelcontextprotocol/servers

¡Las solicitudes de extracción son bienvenidas! Siéntete libre de contribuir con nuevas ideas, correcciones de errores o mejoras para hacer que mcp-server-time sea aún más potente y útil.

Licencia

mcp-server-time está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.