Integration

folk integration

folk is a CRM for relationship-driven teams. With this API an agent can manage people and companies (create, read, filter, update, delete, and in batches of 100), groups with their members and custom fields, custom objects such as deals, notes, tasks, logged and imported interactions, webhooks, draft email campaigns and their messages, and paid person enrichments (emails and phones, spending the workspace's credits). Records are personal data. Campaigns are only created as drafts: launching one happens in folk. Webhook signing secrets are never returned. Left out: the deprecated reminder routes (use tasks) and the deprecated past and upcoming interaction lists (use list_interactions), and folk's internal search and view routes. Beta routes (campaigns, most interaction routes) may still change. Rate limits: 600 requests per minute and 20 per 2 seconds per user. Authentication is a folk API key (workspace settings, API) sent as a Bearer token; every call pins API version 2025-06-09.

Ask it in chat

Say what should happen.
The workflow builds itself.

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

What you can do with folk

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, 8 operations

  • batch_create_companiesBatch create companiesPOSTCreates up to 100 companies; a record naming an existing company updates it instead (operation says created or updated). Answers 200 whatever happens: read each data.results status.
  • batch_delete_companiesBatch delete companiesPOSTPermanently deletes up to 100 companies with their notes and custom field values. Each record succeeds or fails on its own: read the status of each entry of data.results.
  • batch_update_companiesBatch update companiesPOSTUpdates up to 100 companies (id plus update_company fields). Lists sent replace the old ones, and a groups list removes every group it leaves out, with its custom field values. Read each data.results status.
  • create_companyCreate companyPOSTCreates a company, optionally in groups with custom field values. Company names are unique: sending an existing name returns that company instead of creating one.
  • delete_companyDelete companyDELETEPermanently deletes a company with its custom field values, notes and links to groups, people and other records. Cannot be undone.
  • get_companyGet companyGETReturns one company: name, description, industry, funding, foundation year, employee range, addresses, emails, phones, urls, groups and custom field values per group.
  • list_companiesList companiesGETLists companies (name, industry, funding, emails, phones, urls, groups, custom fields), 20 per page by default (up to 100). Narrow with filter; page with cursor from data.pagination.nextLink.
  • update_companyUpdate companyPATCHChanges only the fields you send on a company. A list you send (groups, addresses, emails, phones, urls) replaces the whole list; renaming it to another company's name fails.

Object, 8 operations

  • batch_create_objectsBatch create objectsPOSTCreates up to 100 objects of one type in a group; records are never matched with existing objects. Answers 200 whatever happens: read the status of each entry of data.results.
  • batch_delete_objectsBatch delete objectsPOSTPermanently deletes up to 100 objects of one type in a group. Each record succeeds or fails on its own: read the status of each entry of data.results.
  • batch_update_objectsBatch update objectsPOSTUpdates up to 100 objects of one type (id plus update_object fields); people and companies sent replace the old lists. Read the status of each entry of data.results.
  • create_objectCreate objectPOSTCreates an object of one type (such as a deal) in a group, with a name, linked people and companies, and custom field values. An unknown custom field name fails the request.
  • delete_objectDelete objectDELETEPermanently deletes an object (such as a deal) with its custom field values and notes. Cannot be undone.
  • get_objectGet objectGETReturns one object (such as a deal) with its name, linked people and companies, creator and custom field values.
  • list_objectsList objectsGETLists the objects of one type (such as Deals) in a group, 20 per page by default; filter on name, people, companies, createdAt or custom fields. An unknown type answers 404 naming the group's types.
  • update_objectUpdate objectPATCHChanges only the fields you send on an object. people and companies, when sent, replace the whole list of linked people or companies.

Person, 8 operations

  • batch_create_peopleBatch create peoplePOSTCreates up to 100 people in one call; every record creates a new person, even an identical one, and folk may merge a detected duplicate in the background. Answers 200 whatever happens: read each data.results status.
  • batch_delete_peopleBatch delete peoplePOSTPermanently deletes up to 100 people with their notes and custom field values. Each record succeeds or fails on its own: read the status of each entry of data.results.
  • batch_update_peopleBatch update peoplePOSTUpdates up to 100 people (id plus update_person fields). Lists sent replace the old ones, and a groups list removes every group it leaves out, with its custom field values. Read each data.results status.
  • create_personCreate personPOSTCreates a person (names, emails, phones, addresses, companies), optionally in groups with custom field values. folk merges a detected duplicate in the background, which may overwrite some of the data sent.
  • delete_personDelete personDELETEPermanently deletes a person with their custom field values, notes and links to groups, companies and other records. Cannot be undone.
  • get_personGet personGETReturns one person: names, job title, birthday, emails, phones, addresses, urls, companies, groups, custom field values per group and interaction metadata (personal data).
  • list_peopleList peopleGETLists people (personal data: names, emails, phones, companies, groups, custom fields), 20 per page by default (up to 100). Narrow with filter; page with cursor from data.pagination.nextLink.
  • update_personUpdate personPATCHChanges only the fields you send on a person. A list you send (groups, companies, addresses, emails, phones, urls) replaces the whole list; leaving a group out removes the person from it with its custom field values.

Task, 7 operations

  • create_taskCreate taskPOSTCreates a task on a person, company or object with a due date, assigned to you unless assignedUsers is sent, public to the workspace unless isPublic is false.
  • delete_taskDelete taskDELETEPermanently deletes a task.
  • get_taskGet taskGETReturns one task with its title, description, due date and time, recurrence, linked record, assignees and completion date.
  • list_tasksList tasksGETLists tasks (title, due date, linked record, assignees, completion), 20 per page by default; filter on dueAt, createdAt, assignee, linked record or completedAt.
  • mark_task_doneMark task donePOSTMarks a task as done at the given date and time.
  • mark_task_todoMark task todoPOSTMarks a done task as to do again.
  • update_taskUpdate taskPATCHChanges only the fields you send on a task, or moves it to another record. It never changes completion: use mark_task_done or mark_task_todo.

Campaign, 5 operations

  • create_campaignCreate campaignPOSTCreates a DRAFT email campaign (nothing is sent): steps of subject and body templates with folk variables, to people or companies. It is reviewed and launched in folk. Beta: folk may still change it.
  • delete_campaignDelete campaignDELETEPermanently deletes a draft or in-review campaign with its messages; other campaigns cannot be deleted. Beta: folk may still change it.
  • get_campaignGet campaignGETReturns a campaign with its steps (sender, subject and HTML body templates, delays) and send counts. Beta: folk may still change it.
  • list_campaignsList campaignsGETLists the email campaigns you can access, newest first (status, steps, recipient count); filter by group. Beta: folk may still change it.
  • update_campaignUpdate campaignPATCHEdits a draft campaign's sender, steps or stop-on-reply. steps replaces every step: read them with get_campaign and send them all. Recipients cannot change. Beta: folk may still change it.

Interaction, 5 operations

  • create_interactionCreate interactionPOSTLogs an interaction (a call, meeting, coffee, message...) with a person or a company at a date, with a title and content.
  • delete_interactionDelete interactionDELETEPermanently deletes a logged interaction; imported ones cannot be deleted. Beta: folk may still change it.
  • get_interactionGet interactionGETReturns one interaction, with the full email or calendar body when folk's privacy rules allow it (personal data). Beta: folk may still change it.
  • list_interactionsList interactionsGETLists past or upcoming interactions (emails, meetings, WhatsApp messages, calls, logged notes) with one person, company or object; content is personal data. Beta: folk may still change it.
  • update_interactionUpdate interactionPATCHChanges the title, content, date or activity type of a logged interaction; imported ones cannot be changed. Beta: folk may still change it.

Note, 5 operations

  • create_noteCreate notePOSTAdds a note to a person, company or object, public (all workspace users) or private (you only). Plain text or markdown; a mention link to a workspace user notifies them.
  • delete_noteDelete noteDELETEPermanently deletes a note.
  • get_noteGet noteGETReturns one note with its content, visibility, linked record, author and parent note.
  • list_notesList notesGETLists notes (content, visibility, linked record, author, replies), 20 per page by default; filter by linked record, full-text query or creation dates.
  • update_noteUpdate notePATCHChanges the content or visibility of a note. Leave a field out to keep it.

Webhook, 5 operations

  • create_webhookCreate webhookPOSTCreates a webhook that POSTs workspace events to targetUrl. Its signing secret is shown only at creation and not returned here, so its deliveries cannot be verified; for that, create it in folk's API settings.
  • delete_webhookDelete webhookDELETEPermanently deletes a webhook; folk stops sending it events.
  • get_webhookGet webhookGETReturns one webhook (name, target URL, subscribed events and filters, status). The signing secret is not returned.
  • list_webhooksList webhooksGETLists the workspace's webhooks (name, target URL, subscribed events and filters, status). Signing secrets are not returned.
  • update_webhookUpdate webhookPATCHChanges a webhook's name, target URL, subscribed events or status (active or inactive). Leave a field out to keep it.

Custom field, 4 operations

  • create_group_custom_fieldCreate group custom fieldPOSTCreates a custom field on a group for people, companies or an object type. An objectField on person or company creates a new object type, with a Status pipeline field.
  • get_group_custom_fieldGet group custom fieldGETReturns one group custom field with its type, select options (id, label, color) and number format.
  • list_group_custom_fieldsList group custom fieldsGETLists a group's custom fields for people, companies or one object type (name, type, select options, number format). Use the names in customFieldValues and in filter.
  • update_group_custom_fieldUpdate group custom fieldPATCHRenames a group custom field, changes its number format, or adds, edits or removes select options. Removing an option erases that value from every record.

Member, 4 operations

  • add_group_memberAdd group memberPOSTGives a workspace user access to a group with a role: admin, contributor or reader.
  • list_group_membersList group membersGETLists the members of a group with their role (admin, contributor, reader). Every workspace user is a member of a public group.
  • remove_group_memberRemove group memberDELETERemoves a workspace user from the members of a group.
  • update_group_memberUpdate group memberPATCHChanges a group member's role to admin, contributor or reader.

Group, 3 operations

  • create_groupCreate groupPOSTCreates a group, public (visible to every workspace user) or private (its members only), with a default All people view.
  • list_groupsList groupsGETLists the workspace's groups (id, name, visibility, emoji), 20 per page by default. Group ids scope people, companies, custom fields and objects.
  • update_groupUpdate groupPATCHRenames a group or changes its visibility or emoji. Leave a field out to keep it.

Person enrichment, 3 operations

  • enrich_peopleEnrich peoplePOSTBilled: spends enrichment credits to find emails and/or phones for up to 500 people. Returns a pending enrichment at once; poll get_person_enrichment with its id until status is completed or failed.
  • get_person_enrichmentGet person enrichmentGETReturns an enrichment: status (pending, in_progress, completed or failed), failure reason, and once completed a summary and a result per person. Poll it after enrich_people.
  • list_person_enrichmentsList person enrichmentsGETLists the workspace's person enrichments (status, requested fields, dates), at most 10 per page; filter on status, createdAt or finishedAt.

User, 3 operations

  • get_current_userGet current userGETReturns the workspace user the API key belongs to (id, full name, email).
  • get_userGet userGETReturns one workspace user (id, full name, email).
  • list_usersList usersGETLists the workspace's users (id, full name, email), 20 per page by default. Use their ids for task assignees, group members and note mentions.

Message, 2 operations

  • get_campaign_messageGet campaign messageGETReturns one campaign message: recipient, sender, subject, HTML body, status and why it was not sent. Beta: folk may still change it.
  • list_campaign_messagesList campaign messagesGETLists a campaign's messages, one per recipient and step (recipient, subject, body, status draft, sent or not_sent); filter by step, recipient or status. Beta: folk may still change it.

Credit, 1 operation

  • get_creditsGet creditsGETReturns the credits used and available for each metered feature of the workspace (such as person enrichment) in the current period. Needs the contributor role or above.

Message sender, 1 operation

  • list_message_sendersList message sendersGETLists the email addresses you can send campaigns from, with their provider, sequence support and signature. Beta: folk may still change it.

Variable, 1 operation

  • list_campaign_variablesList campaign variablesGETLists the variables a campaign's subjects and bodies can use (each token as it must be written). A variable without a value for a recipient is removed. Beta: folk may still change it.

Use folk from Claude Code, Cursor or Codex

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

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect folk once

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

folk integration FAQ

What can you do with the folk integration?

LiveContext exposes 73 operations on folk, covering company, object, person and task.

Popular integrations

Browse the whole catalog