papershift_get_account
Get account
The Papershift account this API key belongs to (id and name). A quick way to check the connection. GET /accounts.
Takes no parameters.
io.usefulapiPublished by usefulapi.ioOfficial publisherv1.17.4Updated Nov 7, 2026
Read Papershift absences, vacation, time tracking and shifts; request and review absences.
The publisher's own server: Ably MCP by usefulapi
Remote MCP server for Papershift that lets an assistant read absences, vacation, time tracking and shifts, and create or review absences.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.usefulapi%2Fpapershift/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"papershift-by-usefulapi": {
"type": "http",
"url": "https://papershift.usefulapi.io/mcp"
}
}
}Read Papershift absences, vacation, time tracking and shifts; request and review absences.
Live endpoint: https://papershift.usefulapi.io/mcp · Homepage: https://usefulapi.io/papershift
https://papershift.usefulapi.io/mcp.claude mcp add --transport http papershift https://papershift.usefulapi.io/mcp, then run /mcp to log in.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 Papershift credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/papershift/
On first connect you'll paste your Papershift API key (Account settings → API; Account Admin only, API add-on required).
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.
*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].
Pro covers this server only. Subscribe with papershift_upgrade (it returns a Stripe Checkout link). Cancel any time with papershift_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running papershift_upgrade before then undoes the cancel. Or write to [email protected].
MIT © usefulapi. Not affiliated with or endorsed by Papershift.
Source: servers/papershift/README.md at commit 4046075
Get account
The Papershift account this API key belongs to (id and name). A quick way to check the connection. GET /accounts.
Takes no parameters.
List locations
List all locations (sites/companies inside the account) with id, name and status. Most other tools need a location id from here. GET /locations.
Takes no parameters.
Get location
One location by id. GET /locations?id=.
location_idrequiredList working areas
List working areas (departments/stations shifts are planned in), optionally for one location. Use the ids for shifts and time trackings. GET /working_areas.
location_idList employees
List employees (users) with name, email, status, contract basics and their location, working-area and tag ids. Filter by location, working area or tag. 25 per page. GET /users.
pagetag_idslocation_idworking_area_idGet employee
One employee by id: contact data, status, locations, working areas, tags and profile fields. GET /users?id=.
user_idrequiredList tags
List the tags of a location (labels on shifts, time trackings and employees). GET /filters.
location_idrequiredList absence types
List the absence types of a location (vacation, sick leave, ...) with id, title and rules. Use the ids to create absences. GET /absence_types.
pagelocation_idrequiredList absences
List absences (vacation, sick leave, ...) that fall between two dates, optionally for one employee or location. Shows type title, times, hours, vacation days and whether it is confirmed. 25 per page. GET /absences.
pageuser_idrange_endrequiredlocation_idrange_startrequiredGet absence
One absence by id, with its status, confirmation, hours and vacation days. GET /absences?id=.
absence_idrequiredList vacation entitlements
An employee's vacation entitlements (planned days, spent days, expiry, carry-over) for the given period. Use it to answer 'how many vacation days does X have left'. 25 per page. GET /vacation_entitlements.
pageuser_idrequiredend_datestart_dateList time trackings
List worked-time entries (clock-ins) from a start date, optionally to an end date and for one employee. Shows start, end, break time, location, employee and whether confirmed. 25 per page. GET /working_sessions.
pageuser_idrange_endrange_startrequiredGet time tracking
One worked-time entry by id, with its breaks, tags and break total. GET /working_sessions?id=.
time_tracking_idrequiredList evaluations (daily hours)
An employee's daily evaluations: target, planned and actual hours, vacation and compensation per day. Use it for overtime and balance questions. 25 per page. GET /evaluations.
pageuser_idrequiredrange_endrange_startrequiredList target hours
An employee's contractual target hours (weekly/monthly rhythm and hours per weekday) over time. 25 per page. GET /target_hours.
pageuser_idrequiredend_datestart_dateList payrolls
An employee's payroll entries (paid hours, salary, bonus, time-account start/end per period). Sensitive pay data. 25 per page. GET /payrolls.
pageuser_idrequiredList shifts
List planned shifts of a location between two dates, optionally for one working area or tags. Shows start, end, number of employees needed, note and visibility. Assigned employees: papershift_list_shift_assignments. 25 per page. GET /shifts.
pagetag_idsrange_endrequiredlocation_idrequiredrange_startrequiredworking_area_idGet shift
One shift by id. GET /shifts?id=.
shift_idrequiredList shift assignments
Who is assigned to a shift and who has applied for it (user id and name). GET /assignments?shift_id=.
shift_idrequiredList availabilities
The times an employee has marked as available between two dates. 25 per page. GET /availabilities.
pageuser_idrequiredend_daterequiredstart_daterequiredCreate absence
WRITE: record an absence (vacation, sick leave, ...) for an employee. Get the absence type id from papershift_list_absence_types and the user id from papershift_list_users. Whether it counts immediately or waits for approval depends on the absence type and the account's approval rules; the employee may be notified. Papershift calculates the paid hours and vacation days. POST /absences.
ends_atrequireduser_idrequiredfull_daystarts_atrequiredtime_zoneabsence_type_idrequiredConfirm, reject or reset an absence
WRITE: decide on an absence request. action 'confirm' approves it (it then counts against vacation days and the plan), 'reject' declines it, 'reset' puts a decided absence back to pending. The employee is typically notified of the decision. Find ids with papershift_list_absences. PUT /absences/{confirm|reject|reset}.
actionrequiredabsence_idrequiredCreate time tracking
WRITE: add a worked-time entry for an employee after the fact (start, end and break minutes) in a location and working area. It changes the employee's recorded hours and balance. Ids from papershift_list_locations, papershift_list_working_areas and papershift_list_users. POST /working_sessions.
ends_atrequireduser_idrequiredstarts_atrequiredlocation_idrequiredmanual_pauseworking_area_idrequiredConfirm time tracking
WRITE: confirm (approve) a worked-time entry so it counts as final for payroll and balances. Find ids with papershift_list_time_trackings. PUT /working_sessions/confirm.
time_tracking_idrequiredCreate shift
WRITE: plan a new shift in a location and working area for a number of employees. Set visible to true only if employees should see it right away (default: left to the account's setting). Assign people afterwards with papershift_assign_user_to_shift. POST /shifts.
noteends_atrequiredtag_idsvisiblestarts_atrequiredlocation_idrequiredworking_area_idrequirednumber_of_employeesrequiredAssign employee to shift
WRITE: put an employee on a shift (or, with application true, record them as having applied for it). The employee is typically notified of the assignment. An already assigned user is re-assigned. Returns the shift's assigned and applied users. POST /assignments.
user_idrequiredshift_idrequiredapplication100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
io.usefulapiOfficial publisher
Hosted MCP server for Ably realtime messaging: inspect channel history, presence and occupancy, publish messages, and review app usage and configuration.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant look up Woffu company users, employment contracts, departments and offices.
io.usefulapiOfficial publisher
Hosted MCP server for White Label Loyalty: browse rewards, read a customer's points wallet and tier progress, and buy rewards with points.
io.usefulapiOfficial publisher
Hosted Weekdone connector that lets an assistant read weekly reports, teams, objectives and KPIs, and add report items, comments and KPI values.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant list WebinarKit webinars, their dates, series, meetings and white-label sub-accounts.
{ "mcpServers": { "papershift": { "url": "https://papershift.usefulapi.io/mcp" } }}