Integration

Deputy integration

Deputy is a workforce management platform for scheduling, time and attendance. Manage locations and areas, search, create, invite, terminate and reactivate employees and set where they work, build and publish shifts, clock staff on and off, approve, discard and edit timesheets, record leave requests, post memos to staff, manage webhooks, and send or read sales and other metric data. Reads return workforce personal data (names, birth dates, contact details, addresses, unavailability, worked hours and labour cost). Publishing shifts, inviting employees and creating an employee with an invitation notify staff; memos go to the staff news feed. Not exposed: bulk, history, comment and predict routes, auto-build and auto-fill, payroll sync, pay rules and agreement editing, the logged-in user's own (My) routes, and employees' kiosk PINs and custom field data. Authentication: a permanent access token from your install (add an OAuth client at your Deputy address followed by /exec/devapp/oauth_clients, then Get an Access Token; it is shown once), sent as a Bearer token, plus your install's address.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Deputy.Built from the 46 Deputy tools below, on the connection you add once.

What you can do with Deputy

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Query, 8 operations

  • search_areasSearch areasPOSTSearches areas with a Resource API query, for example the areas of one location (Company eq its id). Returns area records, at most 500 per call.
  • search_employeesSearch employeesPOSTSearches employees with a Resource API query, for example active staff or a name. Returns employee records with personal data: names, date of birth, start and termination dates.
  • search_leaveSearch leavePOSTSearches leave requests with a Resource API query, for example one employee's requests. Returns dates, hours, leave rule, status and comments. Personal data.
  • search_locationsSearch locationsPOSTSearches locations with a Resource API query, such as active workplaces or a name that starts with given text. Returns location records, at most 500 per call.
  • search_memosSearch memosPOSTSearches memos (posts on the staff news feed) with a Resource API query. Returns title, content, display dates and confirmation settings.
  • search_shiftsSearch shiftsPOSTSearches shifts (Deputy calls them Rosters) with a Resource API query, for example one date (Date eq 2026-11-01) or one employee. Returns times, area, employee, cost and status.
  • search_timesheetsSearch timesheetsPOSTSearches timesheets with a Resource API query, for example those starting after a time (StartTime gt a Unix time). Returns worked times, breaks, cost and approval state.
  • search_unavailabilitySearch unavailabilityPOSTSearches employees' unavailability records (times they cannot work, with comments). Personal data about staff schedules.

Company, 4 operations

  • create_locationCreate locationPUTAdds a location (workplace) to the install with its name, address, timezone, parent location and export codes.
  • get_locationGet locationGETReturns one location (Company record) by id: code, name, trading name, business number, workplace and payroll-entity flags, parent location and address record id.
  • list_locationsList locationsGETLists the install's locations (Deputy calls them Companies): id, code, name, trading name, business number, workplace and payroll-entity flags, parent location and address record id.
  • update_locationUpdate locationPOSTUpdates a location's name, code, address, notes, timezone, parent location or payroll export code. The values sent replace the location's current ones.

Operational unit, 4 operations

  • create_areaCreate areaPOSTCreates an area (Operational Unit) under a location, the place shifts and timesheets are assigned to. A location needs an area before timesheets can be recorded against it.
  • get_areaGet areaGETReturns one area (Operational Unit) by id: name, location, export name, roster visibility, colour, order and daily roster budget.
  • list_areasList areasGETLists the install's areas (Deputy calls them Operational Units): id, name, location, export name, roster visibility, colour, order and daily roster budget.
  • update_areaUpdate areaPOSTUpdates an area's name, location, export name, roster visibility, colour, order or daily roster budget.

Timesheet, 4 operations

  • approve_timesheetApprove timesheetPOSTApproves the time of an employee's timesheet, as a manager does in Deputy. Payroll uses approved timesheets, so this affects what the employee is paid.
  • discard_timesheetDiscard timesheetPOSTDiscards (voids) an employee's timesheet; Deputy marks it as discarded. This changes the hours recorded for a real employee and so can change their pay.
  • get_timesheetGet timesheetGETReturns one timesheet by id: employee, area, start and end time, breaks, total time, cost, approval, pay and export state.
  • update_timesheetUpdate timesheetPOSTCreates a timesheet for an employee, or updates one when intTimesheetId is given, with Unix start and end times, area, breaks and comment; blnApproveTimesheet approves it. Changes a real employee's recorded hours and pay.

Webhook, 4 operations

  • create_webhookCreate webhookPOSTCreates a webhook: Deputy POSTs to the URL when the topic happens, such as Timesheet.Insert. Any Resource API object can be a webhook topic.
  • delete_webhookDelete webhookDELETEDeletes a webhook by id; Deputy stops calling its URL for that topic.
  • get_webhookGet webhookGETReturns one webhook by id: topic, destination URL, type, filters and whether it is enabled.
  • list_webhooksList webhooksGETLists the install's webhooks: topic (such as Timesheet.Insert), destination URL, type, filters and whether each is enabled.

Employee, 2 operations

  • create_employeeCreate employeePOSTCreates an employee with names, primary location, contact details, addresses, start date and workplaces. With data.user.sendInvite true, Deputy sends the employee an invitation.
  • get_employeeGet employeeGETReturns one employee's full profile: names, date of birth, gender, contact phones and emails, main, postal and emergency addresses, role, workplaces and agreements. Personal data.

Leave, 2 operations

  • create_leaveCreate leavePOSTAdds a leave request for an employee: awaiting manager approval by default, or already approved with Status 1. Deputy tracks leave in hours; Start and End set the exact times.
  • get_leaveGet leaveGETReturns one leave request by id: employee, location, leave rule, start and end, hours, status (0 awaiting approval, 1 approved, 2 declined, 3 cancelled) and comments.

Memo, 2 operations

  • create_memoCreate memoPUTPosts a memo to the staff news feed of a location, or of chosen locations or users; staff see it in Deputy and can be asked to confirm they read it.
  • get_memoGet memoGETReturns one memo (news feed post) by id: title, content, display dates and confirmation settings.

Roster, 2 operations

  • get_shiftGet shiftGETReturns one shift (Roster record) by id: start and end time, breaks, area, employee, cost, published, open and confirmation status.
  • save_shiftSave shiftPOSTAdds a shift, or updates one when intRosterId is given, with times, area, employee and breaks. blnPublish true publishes it, which can notify the employee.

Activate, 1 operation

  • reactivate_employeeReactivate employeePOSTRe-activates a terminated employee so they can be scheduled again.

Archive, 1 operation

  • archive_locationArchive locationPOSTArchives a location; unlike a deletion it can be restored later in Deputy. Employees still attached to it can be moved to another location with targetId.

Assoc, 1 operation

  • add_employee_locationAdd employee locationPOSTLets an employee work at another location, optionally with an existing agreement, and optionally makes it their primary location.

Copy, 1 operation

  • copy_shiftsCopy shiftsPOSTCopies the shifts of the given areas between two dates, as Deputy's copy roster function does.

Discard, 1 operation

  • discard_shiftsDiscard shiftsPOSTDiscards the given shifts (Roster records) from the schedule.

End, 1 operation

  • end_timesheetEnd timesheetPOSTClocks an employee off: ends an in-progress timesheet, optionally recording minutes of meal break.

Invite, 1 operation

  • invite_employeeInvite employeePOSTSends the employee an invitation to sign in to Deputy. Notifies the employee.

Metric, 1 operation

  • add_metricsAdd metricsPOSTRecords sales or other metric data (actual, forecast_ or plan_ values, budget or required staff) for areas and locations, used by Deputy to compare labour cost with sales.

Pause, 1 operation

  • toggle_timesheet_breakToggle timesheet breakPOSTStarts a break on an in-progress timesheet, or ends the break when one is running (take a break or finish break).

Publish, 1 operation

  • publish_shiftsPublish shiftsPOSTPublishes shifts so employees see them, and notifies them by SMS and email, SMS only, email only, not at all, or asking for confirmation (intMode).

Raw, 1 operation

  • get_metricsGet metricsGETReturns metric records (sales, transactions or a custom metric, actual or forecast) for areas between two Unix times.

Start, 1 operation

  • start_timesheetStart timesheetPOSTClocks an employee on: starts a timesheet for the employee in an area. Fails when the employee already has a timesheet in progress.

Terminate, 1 operation

  • terminate_employeeTerminate employeePOSTTerminates an employee: Deputy archives the employee record (Active false). reactivate_employee restores them.

Unassoc, 1 operation

  • remove_employee_locationRemove employee locationPOSTRemoves a location from the locations an employee can work at.

Use Deputy from Claude Code, Cursor or Codex

Connect Deputy in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Deputy operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Deputy

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Deputy once

    Add your Deputy connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

Deputy integration FAQ

What can you do with the Deputy integration?

LiveContext exposes 46 operations on Deputy, covering query, company, operational unit and timesheet.

Popular integrations

Browse the whole catalog