内容
# @timergy/mcp
[](https://smithery.ai/server/timergy/timergy)
Timergy 的 MCP 服务器 - 调度投票应用。创建投票,投票时间段,直接从 AI 代理(如 Claude、ChatGPT 和 Gemini)中确定会议。
**无需身份验证。开箱即用。**
## 什么是 Timergy?
Timergy 是一个调度投票服务(类似于 Doodle 或 When2Meet)。您创建一个带有时间段选项的投票,将其与参与者共享,每个人投票他们的可用时间,然后选择最佳时间。
## 快速开始
### Claude 桌面版 / Claude 代码
将以下内容添加到您的 MCP 配置文件(`~/.claude/claude_desktop_config.json` 或项目 `.mcp.json`):
```json
{
"mcpServers": {
"timergy": {
"command": "npx",
"args": ["@timergy/mcp"]
}
}
}
```
然后直接询问:
> "为下周五或周六晚上创建投票"
### Smithery(远程,无需安装)
```
smithery mcp add timergy/timergy
```
或直接通过 `https://timergy--timergy.run.tools` 连接
### 其他 MCP 客户端
任何 MCP 兼容的客户端都可以使用此服务器。支持 stdio(本地)和 Streamable HTTP(远程,位于 `https://api.timergy.com/mcp`)。
## 工具
### `create_poll`
创建带有时间段选项的调度投票。
| 参数 | 类型 | 必需 | 描述 |
|-----------|------|----------|-------------|
| `title` | 字符串 | 是 | 投票标题 |
| `options` | 数组 | 是 | 时间段(`{start, end}`,ISO 8601 格式,带时区) |
| `description` | 字符串 | 否 | 投票描述 |
| `deadline` | 字符串 | 否 | 投票截止日期(ISO 8601 格式) |
| `location` | 字符串 | 否 | 事件地点 |
| `creatorName` | 字符串 | 否 | 显示为投票创建者的名称 |
```
"创建一个名为 '团队午餐' 的投票,时间段为周一 12-13 和周二 12-13"
```
返回:投票 URL(用于分享),口令(用于管理员访问),选项 ID。
### `get_poll`
获取投票详情和时间段选项(无投票)。使用此功能在投票或确定之前检索选项 ID。
| 参数 | 类型 | 必需 | 描述 |
|-----------|------|----------|-------------|
| `pollId` | 字符串 | 是 | 投票 UUID |
```
"显示投票 abc-123 的详情"
```
### `vote_on_poll`
提交投票。每个投票将时间段映射为“是”/“可能”/“否”。
| 参数 | 类型 | 必需 | 描述 |
|-----------|------|----------|-------------|
| `pollId` | 字符串 | 是 | 投票 UUID |
| `voterName` | 字符串 | 是 | 投票者姓名 |
| `voterEmail` | 字符串 | 否 | 投票者邮箱(用于通知) |
| `votes` | 数组 | 是 | `{optionId, availability}`,其中 availability 为“是”/“可能”/“否” |
```
"在投票 abc-123 中,为周一投票 '是',为周二投票 '否',作为 Max"
```
### `get_results`
查看谁投票了以及哪个时间段最受欢迎。
| 参数 | 类型 | 必需 | 描述 |
|-----------|------|----------|-------------|
| `pollId` | 字符串 | 是 | 投票 UUID |
```
"显示投票 abc-123 的结果"
```
### `finalize_poll`
锁定获胜时间段。通知提供邮箱的参与者。
| 参数 | 类型 | 必需 | 描述 |
|-----------|------|----------|-------------|
| `pollId` | 字符串 | 是 | 投票 UUID |
| `optionId` | 字符串 | 是 | 获胜时间段 UUID |
| `passphrase` | 字符串 | 否 | 管理员口令(自动从 create_poll 中记住) |
```
"使用周一时间段确定投票 abc-123"
```
## 工作流程
```
1. create_poll -> 获取投票 URL + 口令
2. 分享 URL -> 发送给参与者
3. get_results -> 查看谁投票“是”/“可能”/“否”
4. finalize_poll -> 选择最佳时间,锁定
```
步骤 1 中的口令自动记住,用于在同一会话中执行步骤 4。
## REST API
MCP 服务器在后台调用 Timergy 开放 API。您也可以直接使用 API:
| 方法 | 端点 | 描述 |
|--------|----------|-------------|
| `POST` | `/api/open/polls` | 创建投票 |
| `GET` | `/api/open/polls/:id` | 获取投票详情 |
| `GET` | `/api/open/polls/:id/options` | 获取时间段 |
| `GET` | `/api/open/polls/:id/results` | 获取投票结果 |
| `POST` | `/api/open/polls/:id/vote` | 提交投票 |
| `POST` | `/api/open/polls/:id/admin-token` | 获取管理员令牌 |
| `POST` | `/api/open/polls/:id/finalize` | 确定投票 |
基准 URL:`https://api.timergy.com`
开放 API 规范:`https://api.timergy.com/api/open/openapi.json`
## 配置
| 环境变量 | 默认值 | 描述 |
|---------------------|---------|-------------|
| `TIMERGY_API_URL` | `https://api.timergy.com` | API 基准 URL |
用于本地开发:
```json
{
"mcpServers": {
"timergy": {
"command": "npx",
"args": ["@timergy/mcp"],
"env": { "TIMERGY_API_URL": "http://localhost:4000" }
}
}
}
```
## 速率限制
| 操作 | 限制 |
|--------|-------|
| 创建投票 | 每小时 5 次 |
| 投票 | 每分钟 20 次 |
| 获取投票/结果 | 每分钟 60 次 |
| 管理员令牌 | 每 10 分钟 5 次 |
| 确定投票 | 每小时 3 次 |
## 许可证
MIT