Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Folk MCP server

Vendor MCP
Open markdown

The Folk MCP connector routes your AI agent's tool calls to Folk's own MCP server through Scalekit. Each user signs in to Folk once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 47 tools.

Tools
47
What they doRead · write · destructive
8 · 38 · 18 read38 write1 destructive
Users sign in with
OAuth app
Scalekit's or your own

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Create the Folk MCP connection

    In AgentKit > Connections, create a Folk MCP connection. The name you give it is the connection_name your code passes. See Configure connections.

    Scalekit credentials are available for Folk MCP server, so you don't need to register an OAuth app.

  4. Authorize a user and make your first call

    quickstart.mts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    import { createInterface } from 'node:readline/promises'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENVIRONMENT_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'folkmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Folk MCP:', link)
    const rl = createInterface({ input: process.stdin, output: process.stdout })
    await rl.question('Press Enter after authorizing...')
    rl.close()
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'folkmcp_folk_get_current_user',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user signs in once. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • folkmcp_folk_get_companyRetrieve a single company record from Folk CRM by its ID, including all native and custom fields.Read-only

    Get Company

    Retrieve a single company record from Folk CRM by its ID, including all native and custom fields.

    Inputs

    companyIdstringrequired
    The ID of the company to retrieve, as returned by other folk tools (format: "com_<uuid>").
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
  • folkmcp_folk_get_current_userReturns the identity of the authenticated folk user for this MCP session: their id, email, and fullName.Read-only

    Get Current User

    Returns the identity of the authenticated folk user for this MCP session: their id, email, and fullName.

    Inputs

    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
  • folkmcp_folk_get_objectRetrieve a single custom object record from Folk CRM by its ID, including all native and custom fields.Read-only

    Get Object

    Retrieve a single custom object record from Folk CRM by its ID, including all native and custom fields.

    Inputs

    groupIdstringrequired
    The ID of the group containing the object.
    objectIdstringrequired
    The ID of the object to retrieve (format: "obj_<uuid>").
    objectTypestringrequired
    The name of the object type (e.g. "Deals").
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
  • folkmcp_folk_get_personRetrieve a single person (contact) record from Folk CRM by its ID, including all native and custom fields.Read-only

    Get Person

    Retrieve a single person (contact) record from Folk CRM by its ID, including all native and custom fields.

    Inputs

    personIdstringrequired
    No description.
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
  • folkmcp_folk_get_workspace_structureRetrieves the complete structure of the folk workspace: groups, entity types per group, native fields, custom field definitions, pipeline views, and workspace members.Read-only

    Get Workspace Structure

    Retrieves the complete structure of the folk workspace: groups, entity types per group, native fields, custom field definitions, pipeline views, and workspace members.

    Inputs

    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
  • folkmcp_folk_search_companiesSearch for companies in the Folk CRM workspace by name, domain, or custom field values.Read-only

    Search Companies

    Search for companies in the Folk CRM workspace by name, domain, or custom field values.

    Inputs

    filterobjectrequired
    No description.
    combinatorstring
    No description.one of andordefault and
    cursorstring
    No description.
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
    limitinteger
    No description.default 20
  • folkmcp_folk_search_objectsSearch for custom objects in the Folk CRM workspace by name or custom field values within a specific group.Read-only

    Search Objects

    Search for custom objects in the Folk CRM workspace by name or custom field values within a specific group.

    Inputs

    filterobjectrequired
    No description.
    groupIdstringrequired
    The ID of the group containing the objects. Use folk_get_workspace_structure to retrieve group IDs.
    objectTypestringrequired
    The name of the object type (e.g. "Deals"). Retrieve available types from folk_get_workspace_structure.
    combinatorstring
    No description.one of andordefault and
    cursorstring
    No description.
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
    limitinteger
    No description.default 20
  • folkmcp_folk_search_peopleSearch for people (contacts) in the Folk CRM workspace by name, email, or custom field values.Read-only

    Search People

    Search for people (contacts) in the Folk CRM workspace by name, email, or custom field values.

    Inputs

    filterobjectrequired
    No description.
    combinatorstring
    No description.one of andordefault and
    cursorstring
    No description.
    intentstring
    Brief explanation of why you are calling this tool and what you intend to do with the result.
    limitinteger
    No description.default 20