Integration

Fountain integration

Fountain is a hiring platform for hourly and frontline workforces. With this API (Fountain Hire, API v2) an agent can list, search, create, update, advance and delete applicants, read their stage history, interview bookings, labels, notes and SMS messages, notify or text applicants, GDPR-anonymize them, manage openings (funnels), stages and interview hosts, calendar slots and bookings, positions, locations, location groups, hiring goals, company attributes and option banks, run custom and timestamped exports, manage webhook settings, and read or activate posthire workers. Applicant answers (the data map), secure fields (SSN, bank, ID documents), I-9, W-4 and background-check details are never returned (and webhooks created here cannot be set to deliver secure fields), and the secure document, applicant PDF print, AI interview report, user administration and Worker Experience routes are not exposed. Authentication is a private Hire API key (Company Settings, API) sent in the X-ACCESS-TOKEN header; the connection also asks for the account's host: api.fountain.com, or the regional host shown when logging in (for example us-2.fountain.com).

Ask it in chat

Say what should happen.
The workflow builds itself.

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

What you can do with Fountain

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.

Company attribute, 7 operations

  • create_company_attributeCreate company attributePOSTCreates a company attribute (a custom tag type) with its value type and allowed values.
  • get_company_attributeGet company attributeGETReturns one company attribute by its type, with its value type and values.
  • list_company_attributesList company attributesGETLists the company attributes (custom tags such as a job code) with their values, page by page.
  • set_hiring_goal_company_attributesSet hiring goal company attributesPOSTAssigns company attribute values to a hiring goal (add) and removes others (remove), in one call.
  • set_location_company_attributesSet location company attributesPOSTAssigns company attribute values to a location (add) and removes others (remove), in one call.
  • set_opening_company_attributesSet opening company attributesPOSTAssigns company attribute values to an opening (add) and removes others (remove), in one call.
  • set_position_company_attributesSet position company attributesPOSTAssigns company attribute values to a position (add) and removes others (remove), in one call.

Applicant, 5 operations

  • create_applicantCreate applicantPOSTCreates an applicant in an opening (funnel_id; else the account's first opening) from name, email and phone. Send the four consent_* flags: from November 17, 2026 creation without them is refused (422).
  • delete_applicantDelete applicantDELETEPermanently deletes an applicant and their information. To keep the record, move them to a stage (advance_applicant) or label them (set_applicant_label) instead.
  • get_applicantGet applicantGETReturns one applicant: contact details, current opening and stage, labels, consent flags and dates. Applicant answers, secure fields (SSN, bank, ID numbers), I-9, W-4, background checks and documents are not returned.
  • list_applicantsList applicantsGETLists applicants page by page, filtered by opening, stage, stage type, labels, phone, dates or a custom data field. Returns contact details, opening, stage and labels; answers and secure data are left out.
  • update_applicantUpdate applicantPUTUpdates an applicant: only the attributes sent change, others are kept; name, email and phone are re-validated when sent. Can also set data answers, secure fields and the rejection reason.

Funnel, 5 operations

  • create_openingCreate openingPOSTCreates an opening (funnel) for a position at a location, with title, pay, job details and workflow. active, listing_status and the sourcing flags decide whether it is posted where applicants see it.
  • delete_openingDelete openingDELETEDeletes an opening (funnel).
  • get_openingGet openingGETReturns one opening (funnel): title, location, position, pay, workflow, posting status and settings.
  • list_openingsList openingsGETLists openings (funnels) with address, location, position, stages and active status; filter by status, brand, location, shift, text, dates or distance, and sort.
  • update_openingUpdate openingPUTUpdates an opening: fields sent change. Changing active, listing_status or go_enabled can publish or unpublish it; go_enabled=true deactivates it for Hire Go.

Location, 5 operations

  • create_locationCreate locationPOSTCreates a location: address, country, time zone, group, owner and messaging numbers.
  • delete_locationDelete locationDELETEDeletes a location.
  • get_locationGet locationGETReturns one location: address, time zone, group, owner and messaging numbers.
  • list_locationsList locationsGETLists the locations of the account with address, time zone, group and phone numbers.
  • update_locationUpdate locationPUTUpdates a location: fields sent change.

Location group, 5 operations

  • create_location_groupCreate location groupPOSTCreates a location group.
  • delete_location_groupDelete location groupDELETEDeletes a location group.
  • get_location_groupGet location groupGETReturns one location group with its locations and owner.
  • list_location_groupsList location groupsGETLists the location groups of the account.
  • update_location_groupUpdate location groupPUTUpdates a location group; move_to_group_id moves all its locations to another group.

Option bank, 5 operations

  • create_option_bankCreate option bankPOSTCreates an option bank: a named list of options (label, value, default).
  • delete_option_bankDelete option bankDELETEDeletes an option bank.
  • get_option_bankGet option bankGETReturns one option bank with its options.
  • list_option_banksList option banksGETLists the option banks of the account (reusable answer lists for dropdown questions). The vendor documents no answer shape, so the answer is returned as Fountain sends it.
  • update_option_bankUpdate option bankPUTReplaces an option bank's name and options with the ones sent.

Position, 5 operations

  • create_positionCreate positionPOSTCreates a position (a job role) with description, requirements and the confirmation message applicants get.
  • delete_positionDelete positionDELETEDeletes a position.
  • get_positionGet positionGETReturns one position: description, requirements, confirmation message and opening count.
  • list_positionsList positionsGETLists the positions (job roles) of the account.
  • update_positionUpdate positionPUTUpdates a position: fields sent change.

Available slot, 4 operations

  • create_calendar_slotCreate calendar slotPOSTCreates interview availability: a slot (or a repeating series) with a recruiter, time, location and capacity, on given stages. Applicants can then book it.
  • delete_calendar_slotDelete calendar slotDELETEDeletes a calendar slot, or every slot of its series with delete_all_siblings.
  • list_stage_available_slotsList stage available slotsGETLists the open interview slots of a stage, page by page.
  • update_calendar_slotUpdate calendar slotPATCHUpdates a calendar slot: only the fields sent in available_slot change. Lowering max_attendees below the bookings keeps them but accepts no new booking.

Hiring goal, 4 operations

  • create_hiring_goalCreate hiring goalPOSTCreates a hiring goal: the number of hires an opening needs, from a start date to a hire-by date.
  • delete_hiring_goalDelete hiring goalDELETEDeletes a hiring goal.
  • list_hiring_goalsList hiring goalsGETLists hiring goals (hires needed per opening by a date), filtered by opening, status, dates, current or past.
  • update_hiring_goalUpdate hiring goalPUTUpdates a hiring goal: fields sent change.

Note, 4 operations

  • create_applicant_noteCreate applicant notePOSTAdds a note to an applicant, optionally attributed to a user.
  • delete_applicant_noteDelete applicant noteDELETEDeletes a note from an applicant.
  • list_applicant_notesList applicant notesGETReturns the notes on an applicant: content, author, last editor, whether shared, and dates.
  • update_applicant_noteUpdate applicant notePUTReplaces the content of a note on an applicant.

Webhook settings, 4 operations

  • create_webhook_settingCreate webhook settingPOSTCreates a webhook that POSTs to an HTTPS url on an event type (applicant saved, stage transition, background check status and others). Transition webhooks need strategy.
  • delete_webhook_settingDelete webhook settingDELETEDeletes a webhook setting; Fountain stops calling its URL.
  • get_webhook_settingGet webhook settingGETReturns one webhook setting: type, title, URL, auth method and options. The authorization header value is not returned by this tool.
  • list_webhook_settingsList webhook settingsGETLists the account's webhook settings: type, title, URL, auth method and options. The authorization header value is never returned.

Export, 3 operations

  • create_custom_exportCreate custom exportPOSTStarts a custom export from a template and returns its id; poll get_custom_export until state is finished. The file link expires one week after creation.
  • get_custom_exportGet custom exportGETReturns a custom export: its state and file_url, which answers 404 until state is finished and expires one week after creation.
  • list_custom_exportsList custom exportsGETLists the custom exports created in the account: id, status, file link (valid one week) and template.

Host, 3 operations

  • add_stage_hostAdd stage hostPOSTMakes a user an interview host on a Hire Go scheduler stage; applicants can book them once they set availability. The user must have access to the opening.
  • list_stage_hostsList stage hostsGETLists the users who host interviews on a Hire Go scheduler stage of an opening.
  • remove_stage_hostRemove stage hostDELETERemoves a host from a Hire Go scheduler stage; their open slots there are removed shortly after, booked interviews stay.

Label, 3 operations

  • list_applicant_labelsList applicant labelsGETReturns the labels on an applicant, with whether each is marked done and when.
  • list_stage_labelsList stage labelsGETLists the labels available in a stage.
  • set_applicant_labelSet applicant labelPUTSets a label on an applicant by title, with its completed flag and date, and returns the applicant's labels. The vendor says it also removes labels but documents no parameter for that.

Timestamped export, 3 operations

  • create_timestamped_exportCreate timestamped exportPOSTStarts a timestamped export (csv or xlsx) from a template and returns its id; poll get_timestamped_export until it is finished. The file link expires one week after creation.
  • get_timestamped_exportGet timestamped exportGETReturns a timestamped export: its state and file_url, which answers 404 until it is finished and expires one week after creation.
  • list_timestamped_exportsList timestamped exportsGETLists the timestamped exports created in the account: id, state, file link (valid one week) and template.

Advance, 2 operations

  • advance_applicantAdvance applicantPUTMoves an applicant to the next stage, or to stage_id (then funnel_id is required too). Runs the target stage's automated actions, which can message the applicant, unless skip_automated_actions is true.
  • bulk_advance_applicantsBulk advance applicantsPOSTMoves up to 500 applicants (from any stage or opening) to one stage. All or nothing: if the request fails nobody moves. Runs the stage's automated actions, which can message applicants, unless skip_automated_actions is true.

Booked slot, 2 operations

  • list_applicant_booked_slotsList applicant booked slotsGETReturns an applicant's interview sessions: start and end time, location, interviewer and instructions.
  • list_booked_slots_for_applicantsList booked slots for applicantsPOSTReturns the booked interview sessions of up to 1000 applicants at once (start and end time, location, interviewer, instructions). Reads only, despite being a POST.

Sms message, 2 operations

  • list_applicant_sms_messagesList applicant sms messagesGETReturns the SMS messages exchanged with an applicant: body, numbers, sent time, delivery status, sending user, stage and opening.
  • send_applicant_smsSend applicant smsPOSTSends an SMS to an applicant from the account (or from user_id). This texts a real person.

Stage, 2 operations

  • get_stageGet stageGETReturns one stage: title, type, position in the opening and number of applicants.
  • list_opening_stagesList opening stagesGETReturns the stages of an opening, in order, with their ids and types.

Template, 2 operations

  • list_custom_export_templatesList custom export templatesGETLists all custom export templates of the account (template_id for create_custom_export).
  • list_timestamped_export_templatesList timestamped export templatesGETLists all timestamped export templates (template_id for create_timestamped_export).

Transition, 2 operations

  • list_applicant_transitionsList applicant transitionsGETReturns an applicant's stage history: each stage they landed in and when. Cursor pagination, up to 100 transitions per page.
  • list_transitions_for_applicantsList transitions for applicantsPOSTReturns the stage history of up to 1000 applicants at once: for each, the stages they landed in and when. Reads only, despite being a POST.

Value, 2 operations

  • add_company_attribute_valuesAdd company attribute valuesPOSTAdds values to a company attribute.
  • delete_company_attribute_valuesDelete company attribute valuesDELETEDeletes values from a company attribute. Values match exactly as stored strings (send 1, not 1.0).

Worker, 2 operations

  • get_workerGet workerGETReturns a posthire worker (same id as the applicant): name, email, active status and their data collection checks. Uploaded files and collected data are not returned.
  • list_workersList workersGETLists posthire workers (hired applicants) with active status and data collection checks; filter by opening or status.

Workflow, 2 operations

  • delete_workflowDelete workflowDELETEDeletes a workflow from the account.
  • list_workflowsList workflowsGETLists the workflows of the account (the stage sequences openings use), with pagination.

Activate, 1 operation

  • activate_workerActivate workerPOSTMarks a posthire worker active (Activated) and reapplies their recurring checks.

Archived reason, 1 operation

  • list_archived_reasonsList archived reasonsGETLists or searches the archived reasons of the account (ids for advance_applicant).

Cancel, 1 operation

  • cancel_booked_slotCancel booked slotPOSTCancels an applicant's booked interview session.

Confirm, 1 operation

  • book_calendar_slotBook calendar slotPOSTBooks an applicant into an available calendar slot (an interview session).

Data key, 1 operation

  • list_data_keysList data keysGETLists the account's data keys (the fields applicants answer), with type, storage and possible values; filter by type, storage or use.

Deactivate, 1 operation

  • deactivate_workerDeactivate workerPOSTMarks a posthire worker inactive (Deactivated) and cancels their active recurring checks and follow-up messages.

Duplicate, 1 operation

  • list_applicant_duplicatesList applicant duplicatesGETReturns the applicants Fountain links as duplicates of this one, with contact details, opening and stage.

Gdpr anonymize, 1 operation

  • gdpr_anonymize_applicantGdpr anonymize applicantPOSTIrreversibly anonymizes an applicant's personal data (GDPR right to erasure). A no-op if already anonymized. A scoped API token needs create and delete access to applicants.

Gdpr anonymize with denylist, 1 operation

  • gdpr_anonymize_applicant_with_denylistGdpr anonymize applicant with denylistPOSTIrreversibly anonymizes an applicant's name, contact details, messages, notes and documents, plus only the data keys listed in data_denylist; every other data key is left as it is.

Gdpr anonymize with whitelist, 1 operation

  • gdpr_anonymize_applicant_with_whitelistGdpr anonymize applicant with whitelistPOSTIrreversibly anonymizes an applicant's personal data (GDPR right to erasure) except the data keys listed in data_whitelist, which are kept as they are. A no-op if already anonymized.

Latest applicant, 1 operation

  • get_latest_applicantGet latest applicantGETReturns the most recent applicant matching an email or a phone number (optionally within a brand), with the same fields as get_applicant.

Notify, 1 operation

  • notify_applicantNotify applicantPOSTSends an applicant an SMS and an email inviting them to continue their application through their portal link. This messages a real person. Identify the applicant by email or phone_number.

Opening access, 1 operation

  • get_user_opening_accessGet user opening accessGETReturns which openings and workflow stages a user can access.

Rejection reason, 1 operation

  • list_rejection_reasonsList rejection reasonsGETLists or searches the rejection reasons of the account (ids for advance_applicant).

Role, 1 operation

  • list_rolesList rolesGETLists the user roles of the account.

Session, 1 operation

  • list_calendar_sessionsList calendar sessionsGETLists the booked interview sessions of an opening (with_unbooked=true adds open slots), with times, capacity, attendance and booked applicants. Filter by stage and date.

Shift, 1 operation

  • list_shiftsList shiftsGETLists the shifts of the account (days and hours), page by page, with a name search.

User, 1 operation

  • list_usersList usersGETLists the users of the account: name, id and email.

User activity, 1 operation

  • list_user_activitiesList user activitiesGETReturns a user's activity log (creating or moving applicants, scheduling, editing profiles, uploading files) between two dates at most one month apart.

Use Fountain from Claude Code, Cursor or Codex

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

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Fountain once

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

Fountain integration FAQ

What can you do with the Fountain integration?

LiveContext exposes 102 operations on Fountain, covering company attribute, applicant, funnel and location.

Popular integrations

Browse the whole catalog