时间MCP服务器
一个提供当前时间功能的最小模型上下文协议(MCP)服务器。该服务器实现了MCP协议规范,并提供了一个用于获取当前日期和时间的单一工具。
特点/功能
- 单工具:
getCurrentTime- 返回当前日期/时间,格式为ISO 8601 - 时区支持用于本地化时间的可选时区参数
- MCP协议完全符合模型上下文协议规范
- TypeScript带有严格类型的现代TypeScript
- 最小依赖仅使用
@modelcontextprotocol/sdk - Stdio 传输(或:标准I/O传输)通过标准输入/输出进行通信
安装
npm install这将安装依赖项并自动构建项目。
使用方法
作为独立服务器
直接运行服务器:
npm run build
node dist/index.js或者使用二进制文件:
npx time-mcp-server与MCP客户端一起
将您的MCP客户端配置为使用此服务器。以下是Claude Desktop或其他MCP客户端的配置示例:
{
"mcpServers": {
"time": {
"command": "node",
"args": ["/path/to/time-mcp-demo/dist/index.js"]
}
}
}或者如果全局安装:
{
"mcpServers": {
"time": {
"command": "npx",
"args": ["time-mcp-server"]
}
}
}工具:获取当前时间
返回当前日期和时间,格式为ISO 8601。
参数
timezone(可选):IANA 时区标识符(例如,'America/New_York','Europe/London','Asia/Tokyo')
- 如果未提供,则返回UTC时间
示例
获取当前的UTC时间:
{
"name": "getCurrentTime",
"arguments": {}
}返回值: 2025-10-22T21:09:31.654Z
获取特定时区的当前时间:
{
"name": "getCurrentTime",
"arguments": {
"timezone": "America/New_York"
}
}返回值: 2025-10-22T17:09:31.654
其他时区示例:
Europe/LondonAsia/TokyoAmerica/Los_AngelesAustralia/SydneyUTC
发展
构建
npm run build观看模式
对于文件更改时自动重建的开发:
npm run dev项目结构
time-mcp-demo/
├── src/
│ └── index.ts # Main server implementation
├── dist/ # Compiled JavaScript (generated)
├── package.json # Dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── .gitignore # Git ignore rules
└── README.md # This file技术细节
MCP协议合规性
此服务器实现了模型上下文协议规范:
- 用途
StdioServerTransport用于沟通 - 把手;手柄
tools/list请求发布可用工具的广告 - 把手;手柄
tools/call执行工具的请求 - 以正确的MCP格式返回响应
TypeScript 配置
- 目标:ES2022(或“面向ES2022”)
- 模块:Node16
- 已启用严格模式
- 完全类型安全,无隐式any类型
依赖项
@modelcontextprotocol/sdkMCP协议实现typescriptTypeScript 编译器@types/nodeNode.js 类型定义
错误处理
该服务器具备强大的错误处理功能:
- 无效的时区标识符会返回描述性错误信息
- 未知工具返回相应的错误响应
- 所有错误均以MCP响应格式正确呈现
许可证
麻省理工学院(MIT)
