Smartplan MCP by usefulapi
Read accounts, staff, shifts, worklogs and absence dates in Smartplan.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"smartplan": {
"url": "https://smartplan.usefulapi.io/mcp"
}
}
}远程端点
https://smartplan.usefulapi.io/mcpstreamable-http它能做什么
工具清单
工具(14)
🟢smartplan_list_accounts
Shows only the account selected during login, from the authenticated account list. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_account
Account settings and timezone for this connection's selected account. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_members(limit, offset, is_admin)
One page of members for the selected account; continue with next_offset. Excludes contact details, photos and custom data. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"is_admin": {
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_member(id)
One member by ID in the selected account. Excludes contact details, photos and custom data. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_locations(limit, offset, is_hidden)
One page of locations for the selected account; continue with next_offset. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"is_hidden": {
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_location(id)
One location by ID in the selected account. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_jobtypes(limit, offset, alive)
One page of job roles for the selected account; continue with next_offset. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"alive": {
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_jobtype(id)
One jobtype by ID in the selected account. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_shifts(limit, offset, start_date, end_date, owner, ...)
One page of upcoming shifts for the selected account; continue with next_offset. Date filters use the displayed start date, including shifts crossing midnight. Shift IDs change on archive/bulk edit; worklogs are historical records. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"owner": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
},
"location": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
},
"jobtypes": {
"minItems": 1,
"maxItems": 25,
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
}
},
"required": [
"start_date",
"end_date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_shift(id)
One shift by ID in the selected account. Date filters use the displayed start date, including shifts crossing midnight. Shift IDs change on archive/bulk edit; worklogs are historical records. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_worklogs(limit, offset, start_date, end_date, owner, ...)
One page of recorded worklogs for the selected account; continue with next_offset. Date filters use the displayed start date, including shifts crossing midnight. Shift IDs change on archive/bulk edit; worklogs are historical records. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"owner": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
},
"location": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
},
"jobtypes": {
"minItems": 1,
"maxItems": 25,
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
}
},
"required": [
"start_date",
"end_date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_worklog(id)
One worklog by ID in the selected account. Date filters use the displayed start date, including shifts crossing midnight. Shift IDs change on archive/bulk edit; worklogs are historical records. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_list_absences(limit, offset, start_date, end_date, absentee, ...)
One page of absence dates for the selected account; continue with next_offset. Excludes absence types, reasons and notes. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"absentee": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
},
"status": {
"type": "string",
"enum": [
"W",
"A",
"D",
"C",
"DEL",
"A-AUTO"
]
}
},
"required": [
"start_date",
"end_date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢smartplan_get_absence(id)
One absence by ID in the selected account. Excludes absence types, reasons and notes. Read-only Smartplan Pro API.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据