Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Onepage MCP server

Vendor MCP
Open markdown

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

Tools
124
What they doRead · write · destructive
35 · 75 · 1435 read75 write14 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 Onepage MCP connection

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

    Scalekit credentials are available for Onepage 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 = 'onepagemcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Onepage 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: 'onepagemcp_whoami',
    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
  • onepagemcp_get_color_schemaGet the current color schema for a site.Read-only

    GetColorSchema

    Get the current color schema for a site.

    Inputs

    site_idstringrequired
    Site ID
    _conversation_refstring
    Short random token generated on your first call in a conversation; reuse the exact same value on every subsequent call to group related tool calls for analytics.
    _rationalestring
    Describe the user's intent and why this tool was selected in general terms only; do not include specific field values, names, emails, or other data.
  • onepagemcp_get_crm_formRead a CRM form of this vibe section: its name, steps and fields (stable keys, types, required) and the saved double opt-in and autoresponder settings.Read-only

    Get Crm Form

    Read a CRM form of this vibe section: its name, steps and fields (stable keys, types, required) and the saved double opt-in and autoresponder settings. Use it before update_crm_form to see the current state.

    Inputs

    form_idstringrequired
    Managed CRM form ID returned by create_crm_form
    react_app_idstringrequired
    React app ID (24-char hex, e.g. "6a04e0e6d413a29fd4d8bc41" -- returned by create_vibe_section)
  • onepagemcp_get_crm_integrationsWhere a lead list forwards new leads (email, webhook, Telegram, HubSpot, KlickTipp, Quentn, Zapier/Make, Google Sheets) and whether a connection has errors.Read-only

    Get Crm Integrations

    Where a lead list forwards new leads (email, webhook, Telegram, HubSpot, KlickTipp, Quentn, Zapier/Make, Google Sheets) and whether a connection has errors. Status only — never API keys or configuration; connecting integrations is done by the user in the CRM list settings.

    Inputs

    site_idstringrequired
    Site ID
    lead_list_idstring
    One lead list; omit to check every list of the site
  • onepagemcp_get_email_integration_statusWhich email sending provider is connected for a site (sendgrid, aws-ses, mailjet, mailchimp, sendinblue, mailgun).Read-only

    Get Email Integration Status

    Which email sending provider is connected for a site (sendgrid, aws-ses, mailjet, mailchimp, sendinblue, mailgun). Provider names only — never keys; connecting a provider is done by the user in the Mailer section.

    Inputs

    site_idstringrequired
    Site ID
  • onepagemcp_get_file_contentGet the content of a single source file from a vibe section's React app.Read-only

    GetFileContent

    Get the content of a single source file from a vibe section's React app.

    Inputs

    pathstringrequired
    File path inside the React app
    react_app_idstringrequired
    React app ID (24-char hex, e.g. "6a04e0e6d413a29fd4d8bc41" -- returned by create_vibe_section)
    _conversation_refstring
    Short random token generated on your first call in a conversation; reuse the exact same value on every subsequent call to group related tool calls for analytics.
    _rationalestring
    Describe the user's intent and why this tool was selected in general terms only; do not include specific field values, names, emails, or other data.
  • onepagemcp_get_folder_treeList every active workspace folder in depth order.Read-only

    Get Folder Tree

    List every active workspace folder in depth order. Each row includes its parent folder ID, or null for a root folder, and its full path.

    Inputs

    This tool takes no inputs.

  • onepagemcp_get_font_kitGet the font kit configured for a site.Read-only

    GetFontKit

    Get the font kit configured for a site.

    Inputs

    site_idstringrequired
    Site ID
    _conversation_refstring
    Short random token generated on your first call in a conversation; reuse the exact same value on every subsequent call to group related tool calls for analytics.
    _rationalestring
    Describe the user's intent and why this tool was selected in general terms only; do not include specific field values, names, emails, or other data.
  • onepagemcp_get_formGet the structure of one CRM form: its steps and fields with IDs, labels, types and required flags.Read-only

    Get Form

    Get the structure of one CRM form: its steps and fields with IDs, labels, types and required flags. Use before creating or editing leads so you know the field IDs and labels.

    Inputs

    form_idstringrequired
    CRM form ID (from list_forms)
    site_idstringrequired
    Site ID