ServiceM8
Field service
FloConnector is a hosted Connecteam MCP server. Securely connect Claude, ChatGPT and other AI clients to Connecteam. Ask in plain English; it runs the 109 tools for you, behind one endpoint, with you deciding what it can touch.
Beta. Connect it today and every tool below is live. It is new enough that we are still testing it against real Connecteam accounts, so tell us if something looks off and we will fix it fast.
Built in-house. We wrote this connector ourselves and call Connecteam directly, with no third party in the path. Nothing in a request or response is retained by anyone but Connecteam.
Single connection. One Connecteam organisation per workspace. Connect another in a separate workspace.
Tools
109 tools your agent gets the moment Connecteam is connected.
109 tools
Get the connected Connecteam account's company id and name. Also the cheapest way to confirm the connection is alive.
List the branches, stores or sites sales are recorded against. Every other sales call needs a location id from here.
Create a branch, store or site to record sales against.
Daily sales totals per location over a date range, with both actual and projected figures. Days with no data are omitted rather than returned as zero.
Set the sales TARGET for a location on one or more days. This never changes actual sales, which come from transactions. Each date may appear once.
Record one or many sales against locations. This is what moves ACTUAL daily sales totals, unlike setting a projection.
Delete one recorded sale by id. The location's daily total is recalculated.
Permanently delete EVERY transaction at one location between two times. There is no undo and no per-transaction filter, so scope the window tightly.
Post a note on a schedule for one date, visible to the users or groups you name. This is the roster's day-level message.
Get one daily note by id. There is no endpoint to list notes, so the id must come from elsewhere.
Change a daily note's text or who can see it.
Delete a daily note from a schedule.
List team chats and channels on the account. Private conversations are excluded. This API cannot read messages, only list conversations and send.
Create a team chat (everyone posts) or a channel (admins broadcast). Needs at least one user or smart group. Messages can then be sent into it.
Send a message into a team chat or channel AS A CUSTOM PUBLISHER, not as a person. senderId is a publisher id from connecteam_list_publishers.
Send a direct message to one user as a custom publisher, starting the conversation if none exists. There is no way to read their reply through this API.
List the custom publishers messages can be sent as. Every chat send needs a senderId from here.
Read employees' pay rates in effect over a date range, optionally with their full change history. Built for payroll integration. Range cannot exceed 365 days.
Set pay rates for up to 500 employees from an effective date. An existing rate on the same date is replaced; otherwise it is added to their history.
Delete one employee's pay rate entry by its effective date. Cannot be undone, and fails if it would affect approved or locked timesheet days.
List the company's onboarding packs. Assigning someone needs a pack id from here.
List who is assigned to one onboarding pack, and how far through it they are.
Assign up to 500 users to an onboarding pack. All or nothing: one invalid user id and no assignments are created at all.
List the account's pay rule policies, the rules that decide how hours convert into paid time.
Put a user on a pay rule policy from an effective date. An earlier effective date than their current assignment REPLACES and removes it.
List users (employees) on the account. Filter by ids, names, phone, email, status, or by createdAt/modifiedAt/lastLogin to sync only what changed.
Create one or many users in a single call. Takes an array, so onboarding a whole team costs one request rather than one per person.
Update one or many users. Identify each by userId, or set editUsersByPhone to match on phone instead. Set isArchived false to restore an archived user.
Archive one or many users by id. Archiving is reversible: restore with connecteam_update_users and isArchived false. Permanent deletion is deliberately not offered.
List the account's user custom field definitions. Read this to turn the numeric customFieldId values on a user into names, and to find a dropdown field's id before setting it.
List the dropdown options for one custom field. Setting a dropdown value on a user needs the option ID from here, not the option's text.
List the categories user custom fields are grouped under.
List smart groups (dynamic user groups). Groups marked isAutomaticallyCreated are owned by a dropdown custom field and cannot be edited or deleted here.
Create a dynamic smart group under a segment. Membership follows the filters, so users matching them are added automatically as they change.
Update a smart group. Changing filters replaces the current rules and can change who is in the group. Automatically created groups cannot be edited.
Delete a smart group. The users stay; only the grouping goes. Automatically created groups cannot be deleted here.
List the segments smart groups are organised under. A segment id is required to create a smart group.
Create a segment to organise smart groups under.
Add a note to a user's profile. Write-only: this API has no way to read notes back, so do not promise to check or find one afterwards.
Set performance metric values for one user on one date, replacing any existing value for that date. Write-only: this API cannot read performance data back, and not every user can carry every indicator — an ineligible one is rejected with a bare 400.
List the account's performance metrics. Recording a performance value needs an indicator id from here.
List people waiting for an admin to approve them onto the account, optionally filtered by status.
Submit one or many join requests for an admin to approve, rather than creating users directly.
Approve or decline one or many pending join requests. Approving creates the user on the account.
Correct the details on a pending join request before it is approved.
Delete a pending join request. This removes the request only, never an existing user.
List which time clocks, schedulers, forms, tasks and other assets a user is assigned to, plus their smart groups.
List the account's time clocks. Every other time clock call needs an id from here, so read this first. Includes archived clocks, flagged with isArchived.
Read recorded shifts, manual breaks and time off for a date range, grouped by user. This is the detail behind a timesheet. Both dates are required.
Add completed shifts and manual breaks for one or many users at once. This is the admin correction path (adding hours after the fact), not clocking someone in live.
Adjust existing shifts and breaks by their activity ids, for one or many users at once. Use connecteam_list_time_activities to get the ids first.
Delete one recorded shift or manual break by its activity id. Fails if the day is locked or the timesheet approved. Time off cannot be deleted here.
Start a work period for a user now. To add hours for a shift that already finished, use connecteam_create_time_activities instead.
End a user's currently open work period. There is no shift id to pass; Connecteam closes whichever shift is open.
List the break types configured on a time clock (name, paid or unpaid, duration), and whether manual breaks are enabled at all. Starting a break needs an id from here.
Start a manual break for a user. If they are clocked into a shift on this clock, it is closed automatically and the break starts in the same call.
End a user's open break. By default their shift resumes on the same job. Set isResumeShift false to end the working day instead. Mandatory breaks cannot end early.
List the extra fields a time clock asks employees to fill in on a shift, including dropdown options.
List the geofenced sites on a time clock, with their radius, jobs and what happens when someone clocked in leaves.
Get one geofenced site on a time clock by id.
Add one or many geofenced sites to a time clock. Radius must be 75 to 1524 metres. Latitude and longitude are strings here, not numbers.
Delete a geofenced site from a time clock. Recorded hours are unaffected.
Total hours per employee per day for payroll, in decimal hours, by pay rule, with automated unpaid breaks already deducted. Maximum 45 days per call.
Lock days on a user's timesheet so the hours can no longer be edited, or unlock them. Up to 50 dates per call. Cannot reopen an approved payroll period.
List the account's schedules (rosters), with each one's timezone. Every other schedule call needs an id from here, so read this first.
List shifts on a schedule between two times. Filter by assigned user, job, title, or whether they are open, published or awaiting approval.
Get one shift by id, with its breaks, notes, statuses, custom fields and assigned users.
Create one or many shifts on a schedule in a single call. New shifts are DRAFTS unless you set isPublished true, and a draft is invisible to staff.
Update one or many shifts by id. Only the fields you send change. Set notifyUsers false to avoid notifying staff on every published-roster edit.
Delete one shift by id. Assigned staff are notified unless you set notifyUsers false.
Delete many shifts at once by id. Use this to clear a draft week in one call rather than one request per shift.
Ask Connecteam to fill open shifts automatically, respecting qualifications, unavailability and approved time off. Returns a request id; processing takes minutes.
Check an auto-assign request. Returns which shifts were filled and which could not be, so you can report both.
For one user and time window, return their declared unavailability, approved time off and already-assigned shifts. Read this before rostering someone.
List declared unavailability on one schedule between two times, across all of its users.
Mark one user unavailable on a schedule for a whole day, or part of one. Times here are HH:MM:SS strings on a date, not timestamps. Repeats are not supported.
Delete a declared unavailability from a schedule by its id.
List the extra information layers a schedule attaches to shifts, such as role or department.
List the values a shift layer can take, with their ids. Setting a layer on a shift needs an id from here.
List the custom fields a schedule defines on its shifts, including dropdown options and their ids.
List the account's quick task boards. Every task call needs a board id from here, so read this first.
List the labels available on a task board. Tagging a task needs a label id from here, not its name.
List quick tasks on a board. Filter by assigned user, label or status. Group tasks are included when filtering by a user in the group.
Create a quick task on a board. Assigning several users makes ONE group task, not one each. An unassigned task must have status draft.
Replace a quick task's details. A FULL replace: userIds, status and title are required every time, and anything you leave out is CLEARED — omitting subTasks deletes them all. Read the task first and resend what you want to keep.
Delete a quick task from a board, along with its sub-tasks.
List the sub-tasks under one quick task, with their completion state.
Add one sub-task to a quick task, without touching the parent's other fields.
Rename a sub-task or mark it complete. This is the cheapest way to tick one item off without replacing the whole task.
Delete one sub-task from a quick task.
List jobs, the codes the time clock and scheduler attribute hours to. Not to be confused with tasks. Filter by schedule or time clock, name, code or id.
Get one job by id, with its sub-jobs, assignment, geofence and custom fields. This is the only way to fetch a sub-job directly.
Create one or many jobs, each attached to at least one schedule or time clock. Sub-jobs can be created inline under a parent.
Update one job. This REPLACES the whole job: any field you leave out is cleared, so read the job with connecteam_get_job first and send every value you want to keep, not just the ones you are changing. Title is required every time. Connecteam does not support updating a job that has nested sub-jobs.
Delete one job. Connecteam does not support deleting a sub-job, or a job that has sub-jobs. Hours already booked to it stay on the timesheet.
List the custom field definitions available on jobs, with dropdown options and their ids.
List the account's forms with their questions and settings. Reading submissions needs a form id from here. Filter by name or creation date.
Get one form by id, with every question, its type and its options. Read this to interpret the answers on a submission.
List submissions for one form, with answers and manager fields. Filter by who submitted and when. This is how you read completed checklists and reports.
Get one submission by id, with its full answers, manager fields, and when the employee started and finished it.
Set the manager fields on a submission: status, owner, note, date, signature or file. The employee's own answers cannot be changed through this API.
List the selectable options on a multipleChoice question, with their ids, including ones since deleted. Connecteam's own questions already carry their options, so reach for this when you need deleted options or the list is long.
List the account's leave types (annual, sick, and so on), each with the individual policies inside it. Every other time off call needs an id from here.
List how much leave each user has left under one policy type, with the units (hours or days) the policy uses.
Set a user's remaining leave under one policy type to an exact figure. This REPLACES the balance rather than adding to it.
List leave requests overlapping a date range. IMPORTANT: with no statuses filter this returns APPROVED requests only, so pass statuses to see pending ones.
Book leave for a user. Status approved books it outright and moves their balance; status pending puts it in the approval queue.
Update a leave request. Setting status to approved is how leave gets approved, and it moves the user's balance. There is no separate approve endpoint.
Put a user on a specific leave policy, optionally seeding their starting balance. Takes a policy id from inside a policy type, not the type id itself.
No tools match your search.
Create a FloConnector workspace, connect Connecteam once from the dashboard, then add your FloConnector endpoint to Claude as a custom connector. Claude handles the sign-in prompt; there is no server to host and no code to write. The same endpoint works in ChatGPT.
109 tools: 50 that read Connecteam data and 59 that change it. Every tool is listed on this page, so you can see exactly what the model is able to call before you connect.
No. FloConnector holds the Connecteam credential, encrypted before it is stored, and calls Connecteam on the model's behalf. The AI client only ever sees the tools and their results, never the credential behind them.
Yes. Each connection is exposed through a profile, and a profile carries only the tools you switch on. Leave the 59 write tools off and the connection is read-only.
Yes. The endpoint is a standard hosted MCP server, so it works in any client that supports MCP connectors, including Claude and ChatGPT.