deputy_whoami
Who am I
Return the Deputy user the token belongs to — name, employee id, company and permissions. A cheap way to confirm DEPUTY_INSTALL and the token are right. Deputy: GET /api/v1/me.
Takes no parameters.
io.usefulapiPublished by usefulapi.ioOfficial publisherv1.39.1Updated Nov 14, 2026
See rosters, timesheets, leave and staff in Deputy, and create shifts, leave and memos.
The publisher's own server: Ably MCP by usefulapi
Hosted Deputy connector that lets an assistant read rosters, timesheets, leave and staff, and create shifts, leave requests and memos.
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%2Fdeputy/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": {
"deputy-by-usefulapi": {
"type": "http",
"url": "https://deputy.usefulapi.io/mcp"
}
}
}Use Deputy from Claude, Cursor, or any MCP client — see rosters, timesheets, leave and staff, and create shifts, leave requests and memos. Hosted, no local install: connect with your own Deputy credentials.
Live endpoint: https://deputy.usefulapi.io/mcp · Homepage: https://usefulapi.io/deputy
https://deputy.usefulapi.io/mcp.claude mcp add --transport http deputy https://deputy.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 Deputy credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/deputy/
On first connect you'll provide your Deputy install host (like acme.au.deputy.com) and a permanent access token (Deputy developer portal → OAuth Client → Get an Access Token).
They're validated, stored per-user, and scoped to you — no keys in config files.
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.
Each paid plan covers this server only. Ask your AI to run deputy_upgrade and choose Pro or Pro+, billed monthly or yearly (it returns a Stripe Checkout link). If you already have Pro, ask to change it to Pro+. The change requires your confirmation, keeps your billing interval and charges the price difference for the rest of the period immediately. Cancel any time with deputy_cancel_subscription: your paid plan continues to the end of the paid period, with no refund for the current period, and asking to resume the same plan with deputy_upgrade before then undoes the cancel. Or write to [email protected].
MIT © usefulapi. Not affiliated with or endorsed by Deputy.
Source: servers/deputy/README.md at commit f22f848
Who am I
Return the Deputy user the token belongs to — name, employee id, company and permissions. A cheap way to confirm DEPUTY_INSTALL and the token are right. Deputy: GET /api/v1/me.
Takes no parameters.
List locations
List the install's locations (workplaces). Deputy calls a location a Company; its Id is what other tools take as location_id. Deputy: GET /api/v1/resource/Company.
Takes no parameters.
List areas
List areas (Deputy OperationalUnits — the rosterable sections of a location, e.g. Kitchen, Front of house). Shifts and timesheets belong to an area. Optionally only one location's areas. Deputy: GET /api/v1/resource/OperationalUnit, or POST .../OperationalUnit/QUERY when filtered.
maxstartactivelocation_idList employees
Search employees by name, location or active status. Returns Id, DisplayName, Company (main location), Active, StartDate, Role and more. Deputy: POST /api/v1/resource/Employee/QUERY.
maxstartactivelocation_idname_containsGet one employee
Fetch one employee's details as a supervisor sees them — contact, locations, role and employment. Deputy: GET /api/v1/supervise/employee/{id}.
employee_idrequiredList shifts
Search the roster (scheduled shifts) by time window, employee, area, and published/open state. Each record has StartTime/EndTime (unix), StartTimeLocalized, Employee (0 or null when open), OperationalUnit (area), Published, Open, Cost and _DPMetaData with names. Deputy: POST /api/v1/resource/Roster/QUERY.
tomaxfromopenstartarea_idpublishedemployee_idGet one shift
Fetch one shift (Roster record) by id. Deputy: GET /api/v1/resource/Roster/{id}.
shift_idrequiredList timesheets
Search timesheets (actual worked time) by time window, employee, area and approval state. Each record has StartTime/EndTime (unix; EndTime null while in progress), TotalTime (hours), Cost, TimeApproved, PayRuleApproved, IsInProgress, IsLeave, Roster (linked shift) and Exported. Deputy: POST /api/v1/resource/Timesheet/QUERY.
tomaxfromstartarea_idemployee_idin_progresspay_approvedtime_approvedGet one timesheet
Fetch one timesheet's full details, including breaks and approval state. Deputy: GET /api/v1/supervise/timesheet/{id}/details.
timesheet_idrequiredList leave requests
Search leave requests by employee, location, status and time window. Status: 0 awaiting approval, 1 approved, 2 declined, 3 cancelled, 4 date approved without pay, 5 pay approved without date. Start/End are unix; LeaveRule is the leave type id. Deputy: POST /api/v1/resource/Leave/QUERY.
tomaxfromstartstatusemployee_idlocation_idGet an employee's unavailability
List the times one employee has marked themselves (or been marked) unavailable to work — check before rostering them. Deputy: GET /api/v1/supervise/unavail/{employeeId}.
employee_idrequiredQuery any Deputy resource
Run a Resource API search on any business object (leave types, pay rules, public holidays, memos, events, shift templates, pay lines, availability, sales data, …). `search` is Deputy's clause map, e.g. {"s1":{"field":"Employee","data":12,"type":"eq"}}; operators: eq ne gt lt ge le is 'is not' in 'not in' starts contains. Use deputy_describe_resource to see an object's fields and joins. Read-only. Deputy: POST /api/v1/resource/{Object}/QUERY.
maxjoinsortstartobjectrequiredsearchDescribe a Deputy resource
Return a Resource API object's field list, field types and joinable associations — what deputy_query_resource can filter, sort and join on. Deputy: GET /api/v1/resource/{Object}/INFO.
objectrequiredCreate a shift
Add a shift to the roster, assigned to an employee or left open. Created as a DRAFT unless publish is true (publishing can notify the employee). Deputy returns an empty 200 on success — use deputy_list_shifts to find the new shift's id. Deputy: POST /api/v1/supervise/roster.
openarea_idrequiredcommentpublishend_timerequiredconfirmedstart_timerequiredemployee_idforce_overwritemealbreak_minutesUpdate a shift
Change an existing shift's times, area, employee, break or comment. Send the full intended shift (same fields as create) — Deputy's update is the add call with the shift id. Deputy: POST /api/v1/supervise/roster with intRosterId.
openarea_idrequiredcommentpublishend_timerequiredshift_idrequiredconfirmedstart_timerequiredemployee_idforce_overwritemealbreak_minutesPublish shifts
Publish draft shifts so employees see them, choosing how they are notified: 1 SMS and email, 2 SMS, 3 email, 4 no notification, 5 confirmation required. Only the listed shift ids are published. Deputy: POST /api/v1/supervise/roster/publish.
shift_idsrequirednotify_moderequiredCreate a leave request
Add a leave request for an employee. By default it waits for manager approval (status 0); pass status 1 only when your system is the source of truth and the leave is already approved. Deputy tracks leave in hours, so give exact start and end times. Find leave type ids with deputy_query_resource on LeaveRules. Deputy: POST /api/v1/resource/Leave.
statuscommentrequiredend_daterequiredend_timerequiredstart_daterequiredstart_timerequiredemployee_idrequiredlocation_idrequiredleave_rule_idrequiredapproval_commentAdd unavailability for an employee
Record a time an employee cannot work (one-off, or recurring with an RFC 5545-style rule such as FREQ WEEKLY, INTERVAL 1, BYDAY MO). Auto-scheduling then skips them. Deputy: POST /api/v1/supervise/unavail.
commentend_timerequiredrecurrencestart_timerequiredemployee_idrequiredPost a memo
Post a memo to a location's news feed, optionally requiring staff to confirm they read it, or targeted to specific locations or users. Visible to staff immediately. Deputy: PUT /api/v1/supervise/memo.
contentrequireduser_idslocation_idrequiredlocation_idsrequire_confirmUpdate a timesheet
Correct an existing timesheet's start/end time, area, meal break or supervisor comment. Times cannot be in the future. Deputy: POST /api/v1/supervise/timesheet/update.
area_idrequiredcommentend_timerequiredstart_timerequiredtimesheet_idrequiredmealbreak_minutesApprove a timesheet
Approve one timesheet's times as a supervisor. Approved timesheets flow toward payroll export, so check it first with deputy_get_timesheet. Deputy: POST /api/v1/supervise/timesheet/approve.
timesheet_idrequired100% 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 that lets an assistant inspect realtime channels, presence and usage stats, publish messages, and review app configuration.
io.usefulapiOfficial publisher
Remote MCP server for Oyster that lets an assistant read team, time off, expense, contract and invoice data and approve or decline requests.
io.usefulapiOfficial publisher
Reads Avirato hotel PMS data — reservations, availability, rates, prices and meal plans — and records cash payments on bookings.
io.usefulapiOfficial publisher
Hosted read-only MCP server that lets an assistant list interview, participant and department metadata from a Willo account.
io.usefulapiOfficial publisher
Hosted MCP server that lets an assistant read Testlify hiring workspace details, assessments and assessment candidates.
{ "mcpServers": { "deputy": { "url": "https://deputy.usefulapi.io/mcp" } }}