Integration

Float integration

Float is a resource planning and scheduling tool for agencies and project teams. List, create, update and delete people, projects, phases, project tasks, milestones, allocations (scheduled work), logged time, time off, statuses, clients, departments, roles, rate cards, currencies, project stages and expenses, create projects from templates, read team and public holidays and the deleted-records log, and pull aggregated people and project reports. Account (login) creation and access rights are managed in the Float app, not here. Authentication is an API token from Float Account Settings, sent as a Bearer token in the Authorization header.

Ask it in chat

Say what should happen.
The workflow builds itself.

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

What you can do with Float

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.

Project, 7 operations

  • add_projectAdd projectPOSTCreates a project with a name and optional client, budget, rates, dates, status, stage, tags, project manager and initial team. Returns it with its project_id; add phases, project tasks, milestones and expenses afterwards.
  • create_project_from_templateCreate project from templatePOSTStarts creating a project from a template (project_code and start_date required). Runs in the background and returns no project: find it afterwards with list_projects filtered by the same project_code.
  • delete_projectDelete projectDELETEDeleting a project will delete all associated allocations (`task_id`) and logged time, as well as any phases and associations, this is an irreversible action
  • get_projectGet projectGETRetrieve a single project
  • list_projectsList projectsGETLists projects, filterable by client_id, project_code, active, non_billable, status or tag_name, each with budget, rates, dates, status, tags and client. Use expand for team, phases and tasks.
  • list_report_projectsList report projectsGETReturns an array of projects with aggregated data alongside project-specific attributes. The start_date and end_date query parameters are required to set the duration of the report, and the response can be filtered per project.
  • update_projectUpdate projectPATCHUpdates a project; only the fields sent change. The team is changed through project_team (set, add or del); removing people deletes their allocations and logged time on the project.

Logged time, 6 operations

  • add_logged_timeAdd logged timePOSTCreate a logged time entry for a person
  • delete_logged_timeDelete logged timeDELETEDelete an existing logged time entry.
  • get_logged_timeGet logged timeGETReturns a single logged time entry
  • list_deleted_logged_timeList deleted logged timeGETReturns a list of deleted logged time IDs and timestamps. Records are retained for 72 hours. Operates on an at-least-once delivery guarantee; use the record ID as a deduplication key.
  • list_logged_timeList logged timeGETReturns a list of logged time for the specified person or project within the specified date range
  • update_logged_timeUpdate logged timePATCHModify an existing logged time entry.

Person, 6 operations

  • add_personAdd personPOSTCreating a person does not create an account (can only be done through the UI). Each active person contributes to a billing seat.
  • delete_personDelete personDELETEDeleting a person will delete all their allocations (`task_id`) and logged time, this is an irreversible action
  • get_personGet personGETReturns one person on the schedule by people_id: name, email, job title, role, department, employment type, working hours, tags, dates and rates. Use expand for extra fields.
  • list_peopleList peopleGETSearch for all people in your organization. People are a distinct entity from Accounts. People exist on the schedule and will only have a linked account if they are invited to sign in. Each active person contributes to a billing seat.
  • list_report_peopleList report peopleGETReturns an array of people with aggregated data alongside person-specific attributes. The start_date and end_date query parameters are required to set the duration of the report, and the response can be filtered per person.
  • update_personUpdate personPATCHIf a person is changed to archived (`active = 0`) then their access to the team is revoked by deleting the account and this can only be re-established through the UI.

Task, 6 operations

  • add_taskAdd taskPOSTAdd a new allocation as a task, read-only fields are ignored
  • delete_taskDelete taskDELETEDelete an allocation as a task
  • get_taskGet taskGETReturns a single allocation.
  • list_deleted_tasksList deleted tasksGETReturns a list of deleted allocations (as task IDs) and timestamps. Records are retained for 72 hours. Operates on an at-least-once delivery guarantee; use the record ID as a deduplication key.
  • list_tasksList tasksGETLists allocations (scheduled work; this API calls them tasks), filterable by person, project, phase, project task, client, date range, billable, status or repeat state. Repeating ones in range are included.
  • update_taskUpdate taskPATCHUpdate an allocations details as a task, read-only fields are ignored

Timeoff, 6 operations

  • add_timeoffAdd timeoffPOSTAdd a new time off, read-only fields are ignored
  • delete_timeoffDelete timeoffDELETEDeletes a time off record by its id.
  • get_timeoffGet timeoffGETReturns a single time off.
  • list_deleted_timeoffsList deleted timeoffsGETReturns a list of deleted time off IDs and timestamps. Records are retained for 72 hours. Operates on an at-least-once delivery guarantee; use the record ID as a deduplication key.
  • list_timeoffsList timeoffsGETList of time off scheduled.
  • update_timeoffUpdate timeoffPATCHUpdate a time off's details, read-only fields are ignored

Client, 5 operations

  • add_clientAdd clientPOSTCreates a client with the given name and returns it with its client_id, which projects can then reference.
  • delete_clientDelete clientDELETEDeletes a client. Projects that used this client keep existing and have their client_id set to null.
  • get_clientGet clientGETReturns one client (client_id and name) by its id.
  • list_clientsList clientsGETLists the clients of the Float team (client_id and name), paginated with page and per-page. A client id is what projects reference in client_id.
  • update_clientUpdate clientPATCHUpdate a client's name, read-only fields are ignored

Currency, 5 operations

  • add_currencyAdd currencyPOSTCreates a new currency record for the company. The `source_currency` is set automatically to the company's base currency and cannot be overridden. Both `target_currency` and `fx_rate` are required in the request body.
  • delete_currencyDelete currencyDELETEDeletes a currency record. Returns `422` if any projects are assigned this `target_currency`.
  • get_currencyGet currencyGETReturns a single currency record by ID.
  • list_currenciesList currenciesGETReturns the list of currencies configured for the company. Each record maps the company's source currency to a project target currency and optionally includes exchange rates.
  • update_currencyUpdate currencyPATCHUpdates the exchange rate for an existing currency record. `target_currency` cannot be changed after create. Set the rate with `"fx_rate": 1.39` in the request body.

Department, 5 operations

  • add_departmentAdd departmentPOSTCreates a department, or a sub-department when parent_id is given, and returns it with its department_id.
  • delete_departmentDelete departmentDELETEDeletes a department. People who belonged to it keep existing and have their department set to null.
  • get_departmentGet departmentGETReturns a single department.
  • list_departmentsList departmentsGETLists the departments of the Float team with their department_id, parent_id (set for a sub-department) and name.
  • update_departmentUpdate departmentPATCHUpdate a department's details, read-only fields are ignored

Holiday, 5 operations

  • add_holidayAdd holidayPOSTCreates a team holiday blocked out across the whole team in the schedule, with a name, a date and an optional end_date. Returns it with its holiday_id.
  • delete_holidayDelete holidayDELETEDeletes a team holiday by its id.
  • get_holidayGet holidayGETReturns a single team holiday.
  • list_holidaysList holidaysGETLists the team holidays blocked out across the whole team in the schedule, each with its name, date and end_date.
  • update_holidayUpdate holidayPATCHUpdate a holiday's details, read-only fields are ignored

Milestone, 5 operations

  • add_milestoneAdd milestonePOSTAdd a new project milestone
  • delete_milestoneDelete milestoneDELETEDeletes a project milestone by its id.
  • get_milestoneGet milestoneGETReturns a single milestone.
  • list_milestonesList milestonesGETLists project milestones, optionally filtered by project_id, phase_id or client_id, each with its name, date, end_date and project.
  • update_milestoneUpdate milestonePATCHUpdate a milestone's details, read-only fields are ignored

Phase, 5 operations

  • add_phaseAdd phasePOSTCreates a phase in a project with a name, start_date and end_date, and optional budget, hourly rate, status, color and notes. Returns the phase with its phase_id; set its team afterwards with update_phase (phase_team).
  • delete_phaseDelete phaseDELETEDeleting a phase will delete all associated allocations (`task_id`) and logged time, this is an irreversible action
  • get_phaseGet phaseGETReturns one project phase by phase_id with its project, dates, budget, hourly rate, status and color.
  • list_phasesList phasesGETLists project phases, optionally filtered by project_id, active or non_billable, each with its dates, budget, hourly rate, status and color.
  • update_phaseUpdate phasePATCHUpdates a phase; only the fields sent change. The phase team is changed through phase_team (set, add or del); removing people deletes their allocations and logged time on the phase.

Project expense, 5 operations

  • create_project_expenseCreate project expensePOSTCreates an expense on a project with a name, date and cost, and an optional phase, billable flag and markup. Read expenses back with list_project_expenses, or with get_project and expand=expenses.
  • delete_project_expenseDelete project expenseDELETEDeletes a project expense by its id.
  • get_project_expenseGet project expenseGETRetrieve details of a single project expense
  • list_project_expensesList project expensesGETRetrieve a list of project expenses
  • update_project_expenseUpdate project expensePATCHUpdate an existing project expense

Project stage, 5 operations

  • add_project_stageAdd project stagePOSTCreates a project stage with a name and the project status it maps to (0 draft, 1 tentative, 2 confirmed, 3 completed, 4 canceled; cannot change later). Returns it with its id.
  • delete_project_stageDelete project stageDELETEDeleting a project stage will remove it from the available stages for projects, this is an irreversible action
  • get_project_stageGet project stageGETRetrieve a single project stage
  • list_project_stagesList project stagesGETLists the project stages of the team (custom pipeline stages), each with its name, the project status it maps to, color, sort order and project count.
  • update_project_stageUpdate project stagePATCHStages may be updated or archived, `project_status` cannot be changed

Project task, 5 operations

  • add_project_taskAdd project taskPOSTCreates a project task (a task name such as Design) on a project or phase, to pre-configure it before scheduling. add_task and add_logged_time also create one when given a new task name.
  • delete_project_taskDelete project taskDELETEDeletes a project task. It must have no allocations or logged time left: find them with list_tasks or list_logged_time filtered by task_meta_id and move them first.
  • get_project_taskGet project taskGETRetrieve a single project task.
  • list_project_tasksList project tasksGETProject tasks are used in Projects and Phases to associate allocations and logged time, e.g. Design, Admin etc A `task_name` with an empty string is the default for allocations and logged time when a project task has not been selected.
  • update_project_taskUpdate project taskPATCHUpdate a project tasks details

Rate card, 5 operations

  • add_rate_cardAdd rate cardPOSTCreates a new rate card for the company. If `currency_code` is omitted, it defaults to the company's currency.
  • delete_rate_cardDelete rate cardDELETEDeletes a rate card. A rate card cannot be deleted while it is in use by a project or project template.
  • get_rate_cardGet rate cardGETReturns a single rate card by ID.
  • list_rate_cardsList rate cardsGETReturns the list of rate cards configured for the company.
  • update_rate_cardUpdate rate cardPATCHUpdates a rate card. `roles` and `client_ids`, when included, replace the full existing set rather than merging with it. The `currency_code` cannot be changed once a project is using this rate card.

Role, 5 operations

  • add_roleAdd rolePOSTCreates a role with a name and an optional default hourly rate. Returns it with its id, which people and project teams reference as role_id; add cost rates afterwards with update_role (cost_rate_history).
  • delete_roleDelete roleDELETEDeletes a role. People who had this role keep existing and have their role set to null.
  • get_roleGet roleGETReturns one role by its id with its default hourly rate; expand=cost_rate_history adds its cost rate changes, and people_ids or people_count the people assigned to it.
  • list_rolesList rolesGETLists the roles of the team with their default hourly rate; expand=cost_rate_history adds each role's cost rate changes, and people_ids or people_count the people assigned to it.
  • update_roleUpdate rolePATCHUpdates a role's name or default hourly rate, and adds or deletes cost rate changes through cost_rate_history; only the fields sent change.

Status, 5 operations

  • add_statusAdd statusPOSTCreating a new status requires a valid `status_type_id` which can be matched from the UI.
  • delete_statusDelete statusDELETEDeletes a status (a home, travel, office or custom marker on a person's schedule) by its id.
  • get_statusGet statusGETReturns one status by its id: the person, status type, name, date range and repeat settings.
  • list_statusesList statusesGETAn individual Status is determined by a date range for a single person and linked to a status type which can only be defined in Admin Settings area of the UI, the default values are `1` = Home, `2` = Travel, `3` = Custom and `4` = Office.
  • update_statusUpdate statusPATCHUpdate a status's details, read-only fields are ignored

Timeoff type, 4 operations

  • add_timeoff_typeAdd timeoff typePOSTAdd a new time off type, read-only fields are ignored
  • get_timeoff_typeGet timeoff typeGETReturns a single time off type.
  • list_timeoff_typesList timeoff typesGETLists the time off types that can be assigned to the team (timeoff_type_id, name, color, active), optionally only active or archived ones.
  • update_timeoff_typeUpdate timeoff typePATCHUpdate a time off type's details, read-only fields are ignored

Account, 2 operations

  • get_accountGet accountGETRetrieve a single account
  • list_accountsList accountsGETLists the accounts (logins) of the Float team with their name, email, account type, access rights, department filter and last login. An account may be linked to a person on the schedule; accounts cannot be created through the API.

Project template, 2 operations

  • get_project_templateGet project templateGETReturns a single project template by ID. Project templates are managed in the Float UI.
  • list_project_templatesList project templatesGETReturns the list of project templates configured for the company. Project templates are managed in the Float UI.

Public holiday, 2 operations

  • get_public_holidayGet public holidayGETRetrieve a single public holiday
  • list_public_holidaysList public holidaysGETLists public holidays by region with their dates, for the current year by default; filter by year, region or a start_date and end_date range.

Merge, 1 operation

  • merge_project_tasksMerge project tasksPOSTMerges project tasks and all associations into a single, new or existing, project task

Use Float from Claude Code, Cursor or Codex

Connect Float in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Float 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 Float

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Float once

    Add your Float 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.

Float integration FAQ

What can you do with the Float integration?

LiveContext exposes 102 operations on Float, covering project, logged time, person and task.

Popular integrations

Browse the whole catalog