使用说明
时间MCP服务器
模型上下文协议(MCP)服务器,为AI助手提供时间和时区功能。使用FastMCP构建。
特性
- 时间工具:获取任何时区的当前日期/时间
- 时区资源:使用当前时间浏览全球通用时区
- 教育提示:演示MCP使用模式的示例提示
- 数学实用程序:简单的添加功能用于演示
先决条件
- Python 3.12+
- 紫外线 包管理器
- Claude桌面(用于集成)
安装
- 克隆或下载此存储库
- 确保
uv通过Homebrew安装:brew install uv
用法
命令行
直接运行MCP服务器:
uv run --with fastmcp fastmcp run main.py
这将启动服务器并显示连接信息。服务器使用STDIO传输进行通信。
Claude桌面集成
要将此服务器与Claude Desktop一起使用,请执行以下操作:
-
安装到Claude桌面:
fastmcp install claude-desktop main.py -
重新启动克劳德桌面 完全(退出并重新打开)
-
验证连接:服务器应在Claude Desktop的MCP服务器列表中显示为“我的第一台MCP服务器”
手动配置
或者,在以下位置手动添加到您的Claude Desktop配置文件中:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"My First MCP Server": {
"command": "/opt/homebrew/bin/uv",
"args": [
"run",
"--with",
"fastmcp",
"fastmcp",
"run",
"/Users/path/to/your/time-mcp-server/main.py"
],
"env": {},
"transport": "stdio"
}
}
}
可用功能
工具
add(a, b):将两个整数相加get_current_datetime(timezone):获取指定时区的当前日期/时间- 默认时区:“美国/纽约”
- 支持所有IANA时区标识符
- 返回格式化的日期、时间、日期时间和ISO格式
资源
timezones://common:当前时间的全球主要时区列表- 包括全球12个主要商业中心
- 显示每个区域的当前时间、日期和完整日期时间
- 实时信息动态更新
鼓励
business_hub_times:教育示例提示- 演示如何创建可重用的消息模板
- 指导AI助手使用时区资源
- 返回:“显示世界各地所有主要商业中心的当前时间”
例子
在不同区域获得时间
询问克劳德桌面:
- “东京现在几点了?”
- “给我看看伦敦和纽约的当前时间”
- “旧金山和悉尼的时差是多少?”
使用时区资源
询问克劳德桌面:
- “显示所有可用时区”
- “目前主要商业中心的情况如何?”
利用教育提示
这 business_hub_times 可以调用prompt来演示提示在MCP系统中的工作方式。
发展
项目结构
time-mcp-server/
�� main.py # MCP server implementation
�� pyproject.toml # Project configuration
�� uv.lock # Dependency lock file
�� README.md # This file
关键组件
- FastMCP框架:处理MCP协议通信
- 时区处理:使用Python
zoneinfo获取准确的时区数据 - 装饰器模式:使用定义的工具、资源和提示
@mcp装饰器
测试服务器
-
命令行测试:
uv run --with fastmcp fastmcp run main.py应显示服务器启动信息和连接详细信息。
-
克劳德桌面测试: 集成后,尝试向Claude Desktop询问与时间相关的问题,以验证工具是否正常工作。
故障排除
服务器无法启动
- 确保
uv已安装,在PATH中:which uv - 检查服务器文件是否存在并且可以访问
- 验证Python 3.12+是否可用:
python --version
Claude桌面集成问题
- 查看日志:
~/Library/Logs/Claude/mcp-server-My-First-MCP-Server.log - 确保您的完整路径
main.py配置正确 - 配置更改后重新启动Claude Desktop
- 验证
uv是在/opt/homebrew/bin/uv(用于Homebrew安装)
常见问题
- “Spawn UV ENOENT”:
uv在PATH中找不到-请在配置中使用完整路径 - 服务器已断开连接:检查文件路径和权限
- 导入错误:确保FastMCP依赖项可用
