使用说明
项目简介
mcp-datetime 是一个基于 Model Context Protocol (MCP) 构建的日期时间格式化服务器。它提供了一个 'get_datetime' 工具,允许客户端请求不同格式的当前日期和时间字符串。此服务器设计用于与 Claude 桌面应用等 MCP 客户端集成,扩展 LLM 的日期时间处理能力。
主要功能点
- 日期时间格式化: 提供多种预设格式,包括标准格式、ISO 格式、日本本地化格式以及文件名友好格式等。
- 工具集成: 通过 MCP 协议提供 'get_datetime' 工具,易于 LLM 客户端调用。
- 配置简单: 易于配置和部署,可以通过简单的 JSON 配置与 MCP 客户端连接。
- 示例丰富: 提供详细的格式示例和 Claude 桌面应用的配置示例,方便用户快速上手。
安装步骤
- 安装 Python 3.12 或更高版本: 确保你的系统已安装 Python 3.12 或更高版本。
- 安装 uv 和 uvx: 推荐使用 uv 包管理器安装 uv 和 uvx (Python 包运行器):
pip install uv uvx - 安装 mcp-datetime: 你可以选择从 PyPI 安装或从 GitHub 源码安装。
- 从 PyPI 安装 (推荐):
pip install mcp-datetime - 从 GitHub 源码安装:
git clone https://github.com/ZeparHyfar/mcp-datetime.git cd mcp-datetime pip install -e .
- 从 PyPI 安装 (推荐):
服务器配置
要将 'mcp-datetime' 服务器与 MCP 客户端(例如 Claude 桌面应用)连接,你需要在客户端的配置文件中添加 MCP 服务器的配置信息。以下是 'claude_desktop_config.json' 的配置示例:
{ "mcpServers": { "mcp-datetime": { "command": "uvx", "args": ["mcp-datetime"] } } }
配置参数说明:
- '"mcp-datetime"': 服务器名称,客户端用此名称引用该服务器。可以自定义。
- '"command"': 启动 MCP 服务器的命令。这里使用 'uvx',它会自动查找并运行 'mcp-datetime' 包中的 'main.py' 或 'main' 函数。
- '"args"': 传递给启动命令的参数,这里为空列表,表示没有额外的启动参数。
注意: 如果使用手动安装方式或需要指定 Python 解释器路径,可以使用更详细的配置,例如:
{ "mcpServers": { "mcp-datetime": { "command": "python", "args": ["-m", "mcp_datetime"], "env": { "PYTHON": "/path/to/your/python" // 替换为你的 Python 解释器路径,例如 "/usr/bin/python3" } } } }
基本使用方法
一旦服务器配置完成并在 MCP 客户端中启用,你就可以通过客户端调用 'mcp-datetime' 服务器提供的 'get_datetime' 工具来获取格式化的日期时间字符串。
调用 'get_datetime' 工具的示例命令格式:
call datetime-service.get_datetime {"format": "<format_name>"}
- 'datetime-service': 服务器名称,对应于配置文件中的 '"mcp-datetime"',在客户端调用时需要替换为实际配置的名称。
- 'get_datetime': 工具名称。
- '{"format": "<format_name>"}': 工具的参数,'format' 是必需的参数,用于指定日期时间格式。 '<format_name>' 需要替换为下表中支持的格式名称之一。
支持的日期时间格式:
| 格式名称 | 示例 | 描述 | | --------------- | ------------------------- | ------------------------ | | 'date' | '2024-12-10' | 标准日期格式 | | 'date_slash' | '2024/12/10' | 使用斜杠的日期格式 | | 'date_jp' | '2024年12月10日' | 日语日期格式 | | 'datetime' | '2024-12-10 00:54:01' | 标准日期时间格式 | | 'datetime_jp' | '2024年12月10日 00時54分01秒' | 日语日期时间格式 | | 'datetime_t' | '2024-12-10T00:54:01' | 带 T 分隔符的日期时间格式 | | 'compact' | '20241210005401' | 紧凑格式,用于 ID | | 'compact_date' | '20241210' | 紧凑日期格式 | | 'compact_time' | '005401' | 紧凑时间格式 | | 'filename_md' | '20241210005401.md' | Markdown 文件名格式 | | 'filename_txt' | '20241210005401.txt' | 文本文件名格式 | | 'filename_log' | '20241210005401.log' | Log 文件名格式 | | 'iso' | '2024-12-10T00:54:01+0900' | ISO 8601 格式 | | 'iso_basic' | '20241210T005401+0900' | 基础 ISO 格式 | | 'log' | '2024-12-10 00:54:01.123456'| 带微秒的 Log 格式 | | 'log_compact' | '20241210_005401' | 紧凑 Log 格式 | | 'time' | '00:54:01' | 时间格式 | | 'time_jp' | '00時54分01秒' | 日语时间格式 |
Claude 桌面应用 Prompt 示例:
用户在 Claude 中输入:
请告诉我当前时间,格式为 date_slash
Claude 可能会返回:
好的,我会获取 date_slash 格式的当前日期。 当前日期是 2024/12/12
信息
分类
开发者工具