Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Read Shiftbase rosters, timesheets, absences and availability; schedule shifts and review absences.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:
https://shiftbase.usefulapi.io/mcp터미널에서 이 명령어를 실행하세요
claude mcp add --transport http shiftbase https://shiftbase.usefulapi.io/mcp프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"shiftbase": {
"url": "https://shiftbase.usefulapi.io/mcp"
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"shiftbase": {
"type": "http",
"url": "https://shiftbase.usefulapi.io/mcp"
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:
https://shiftbase.usefulapi.io/mcp메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
도구 이름과 설명은 서버가 2026년 11월 6일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.
shiftbase_get_accountThe Shiftbase account this API key belongs to: company, country, time zone, working-day start/end, plan facts. GET /accounts.
shiftbase_list_usersList employees (users) with their teams and departments, contact details, employee number, start/end dates and plus-min hours balance. Use it to map user ids in schedules, timesheets and absences to names. Identity, bank and birth data are never returned. GET /users.
shiftbase_get_userOne employee by user id or email address, with teams and departments. GET /users/{identifier}.
shiftbase_list_departmentsList departments (sites/branches that own teams, shifts and schedules) with address and timesheet/clocking settings. GET /departments.
shiftbase_list_teamsList teams (the rows of the schedule within a department), optionally for one department. GET /teams.
shiftbase_list_locationsList active locations (addresses that group departments). GET /locations.
shiftbase_list_shift_typesList shift types (the templates a scheduled shift uses: name, short name, default start/end time and break), optionally for one department. Their ids are the shift_id for shiftbase_create_roster. GET /shifts.
shiftbase_list_rostersList the schedule (rosters = shifts assigned to employees) for a date range of at most 62 days: date, start/end time, break, employee, team, shift type, department, published state, hours and cost. Each item's occurrence_id identifies it for shiftbase_get_roster and shiftbase_upd
shiftbase_get_rosterOne scheduled shift by its occurrence_id, with the employee, shift type, team and who created/changed it. GET /rosters/{occurrenceId}.
shiftbase_list_open_shiftsList open (unassigned) shifts that employees can pick up, for a date range of at most 62 days (default: today). Needs the Basic plan or higher. GET /open_shifts.
shiftbase_get_availabilityEmployee availability (available / unavailable, all day or from a time) for a date range of at most 62 days, from Shiftbase's availability report. Needs the Basic plan and the "View reports" permission. POST /reports/availability (export json; reads only).
shiftbase_list_timesheetsList timesheets (worked hours: clock in/out, breaks, total, status Approved/Declined/Pending, wage and surcharges) for a date range of at most 62 days. GET /timesheets.
shiftbase_get_timesheetOne timesheet by id, with its clocked breaks. GET /timesheets/{timesheetId}.
shiftbase_list_clocked_inWho is clocked in right now: employee, since when, their scheduled shift, team, department and location. GET /timesheets/clock.
shiftbase_list_absencesList absences (leave, sick leave, other time off) overlapping a date range of at most 366 days: employee, absence type, start/end date, hours or days, status Approved/Declined/Pending and who reviewed it. Needs the Basic plan. GET /absentees.
shiftbase_get_absenceOne absence by id, with the per-day hours and who reviewed it. GET /absentees/{absenteeId}.
shiftbase_list_absence_typesList absence types (e.g. Holiday, Sick, Unpaid leave): name, unit (hours or days), whether it costs leave hours, colour. Their ids are the absence_type_id for absences. GET /absentee_options.
shiftbase_get_expected_absence_hoursHow many hours an absence would cost for an employee, per day and in total (from the schedule or the contract, per the absence policy), for a period of at most 366 days. Changes nothing. POST /absentees/expected.
shiftbase_create_rosterWRITE: put one employee on the schedule for one date (a single, non-recurring shift) in a team, with a shift type, start/end time and break. The employee is notified only when notify is true. POST /rosters.
shiftbase_update_rosterWRITE: change a scheduled shift: move it to another date, time, employee, team or shift type, or change its break or note. Reads the shift first and sends it back with your changes. For a recurring shift, scope says what changes: "occurrence" (this date only), "sequence" (this da
shiftbase_request_absenceWRITE: add an absence (leave/time-off request) for an employee. By default it is a Pending request for a manager to review; status Approved books it directly (needs the approve-absence permission). The hours per day come from Shiftbase's own expected-hours calculation (the same a
shiftbase_review_absenceWRITE: approve or decline an absence request. Reads the absence first and sends it back unchanged except for the status (needs the approve-absence permission). PUT /absentees/{absenteeId}.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검
레지스트리 이름이 도메인 usefulapi.io 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
398ms 만에 응답(HTTP 200)
로그인 필요 없음
도구 설명 22개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.26.4)은 오늘 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Fomu MCP
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Use Shiftbase from Claude, Cursor, or any MCP client — read Shiftbase rosters, timesheets, absences and availability; schedule shifts and review absences. Hosted, no local install: connect with your own Shiftbase credentials.
Live endpoint: https://shiftbase.usefulapi.io/mcp · Homepage: https://usefulapi.io/shiftbase
https://shiftbase.usefulapi.io/mcp.claude mcp add --transport http shiftbase https://shiftbase.usefulapi.io/mcp, then run /mcp to log in.{
"mcpServers": { "shiftbase": { "url": "https://shiftbase.usefulapi.io/mcp" } } }
Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Shiftbase credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/shiftbase/
On first connect you'll provide your Shiftbase API key. Your credentials are validated, stored per-user, and scoped to you — no keys in config files.
| Tool | Type | What it does |
|---|---|---|
shiftbase_get_account | read | Get account |
shiftbase_list_users | read | List employees |
shiftbase_get_user | read | Get employee |
shiftbase_list_departments | read | List departments |
shiftbase_list_teams | read | List teams |
shiftbase_list_locations | read | List locations |
shiftbase_list_shift_types | read | List shift types |
shiftbase_list_rosters | read | List scheduled shifts |
shiftbase_get_roster | read | Get scheduled shift |
shiftbase_list_open_shifts | read | List open shifts |
shiftbase_get_availability | read | Get employee availability |
shiftbase_list_timesheets | read | List timesheets |
shiftbase_get_timesheet | read | Get timesheet |
shiftbase_list_clocked_in | read | List clocked-in employees |
shiftbase_list_absences | read | List absences |
shiftbase_get_absence | read | Get absence |
shiftbase_list_absence_types | read | List absence types |
shiftbase_get_expected_absence_hours | read | Get expected absence hours |
shiftbase_create_roster | write | Schedule a shift |
shiftbase_update_roster | write | Change a scheduled shift |
shiftbase_request_absence | write | Request an absence |
shiftbase_review_absence | write | Approve or decline an absence |
shiftbase_usage_status | meta | Usage status (free-tier meter) |
shiftbase_request_feature | meta | Request a missing feature |
shiftbase_upgrade | meta | Upgrade to Pro or Pro+ |
shiftbase_cancel_subscription | meta | Cancel the Pro subscription |
read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 50 tool calls / month |
| Pro (per account) | $9/mo or $90/yr (2 months free) | Unlimited* |
\*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to support@usefulapi.io.
Pro covers this server only. Subscribe with shiftbase_upgrade (it returns a Stripe Checkout link). Cancel any time with shiftbase_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running shiftbase_upgrade before then undoes the cancel. Or write to support@usefulapi.io.
MIT © usefulapi. Not affiliated with or endorsed by Shiftbase.