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 54 tools.

Tools
54
What they doRead · write · destructive
18 · 31 · 518 read31 write5 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_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_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_page_overviewGet a structural overview of a page including its sections and layout.Read-only

    GetPageOverview

    Get a structural overview of a page including its sections and layout.

    Inputs

    page_idstringrequired
    Page ID
    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_react_app_infoGet metadata and file structure information about a vibe section's React app.Read-only

    GetReactAppInfo

    Get metadata and file structure information about a vibe section's React app.

    Inputs

    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_sectionGet details of a specific section on a page including its type and content.Read-only

    GetSection

    Get details of a specific section on a page including its type and content.

    Inputs

    page_idstringrequired
    Page ID
    section_idstringrequired
    Section ID (from get_page_overview)
    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.
    modestring
    Use "patch" for patch-ready markup plus an opaque revision. Omit only for the legacy full-document workflow.
  • onepagemcp_get_siteGet a site by ID with its domains and pages.Read-only

    GetSite

    Get a site by ID with its domains and pages.

    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_site_dependenciesGet the npm dependencies and @siteui package dependencies for a site.Read-only

    GetSiteDependencies

    Get the npm dependencies and @siteui package dependencies 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.