Skip to content
Scalekit Docs

Connect AI agents to the Catchr MCP server

Vendor MCP8 toolsOAuth 2.1/DCRAnalyticsAutomation

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

  1. Terminal window
    npm install @scalekit-sdk/node dotenv

    Full SDK reference: Node.js | Python

  2. 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. 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 = 'catchrmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Catchr 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: 'catchrmcp_list_all_fields',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

Connect this agent connector to let your agent:

  • Run api request json, describe — Execute the Catchr API request in JSON mode for one or multiple accounts
  • List sources, platforms, fields for account — List network authorizations (sources) for the authenticated company, with optional available accounts

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

catchrmcp_describe_run_api_request_schema#Return the detailed input schema and filter guide for run_api_request_json.0 params

Return the detailed input schema and filter guide for run_api_request_json.

catchrmcp_list_all_fields#List all published fields across all platforms from Catchr field catalog.1 param

List all published fields across all platforms from Catchr field catalog.

NameTypeRequiredDescription
groupByPlatformbooleanoptionalWhen true, fields are grouped per platform in the response.
catchrmcp_list_available_accounts#List available accounts for a platform and company, optionally scoped to one authorization.4 params

List available accounts for a platform and company, optionally scoped to one authorization.

NameTypeRequiredDescription
platformstringrequiredCatchr platform identifier.
authorizationIdstringoptionalFilter accounts to those belonging to a specific authorization source.
includeParentAccountsbooleanoptionalWhen true, include parent-level accounts in the response.
parentAccountIdstringoptionalFilter to children of a specific parent account ID.
catchrmcp_list_fields_by_platform#List all fields for one platform. Includes calculated/runtime fields when available.2 params

List all fields for one platform. Includes calculated/runtime fields when available.

NameTypeRequiredDescription
platformstringrequiredCatchr platform identifier (for example: "facebook-ads").
reportstringoptionalOptional provider report key used by restricted field providers.
catchrmcp_list_fields_for_account#List all fields for a specific account and authorization pair on a platform.4 params

List all fields for a specific account and authorization pair on a platform.

NameTypeRequiredDescription
accountIdstringrequiredThe account ID scoped to the platform.
authorizationIdintegerrequiredThe authorization (source) ID linked to this account.
platformstringrequiredCatchr platform identifier.
reportstringoptionalOptional provider report key used by restricted field providers.
catchrmcp_list_platforms#List Catchr platforms. You can list only connected platforms for the authenticated company.1 param

List Catchr platforms. You can list only connected platforms for the authenticated company.

NameTypeRequiredDescription
connectedOnlybooleanoptionalWhen true, return only platforms that are connected for the authenticated company.
catchrmcp_list_sources#List network authorizations (sources) for the authenticated company, with optional available accounts.2 params

List network authorizations (sources) for the authenticated company, with optional available accounts.

NameTypeRequiredDescription
includeAvailableAccountsbooleanoptionalWhen true, include the list of available accounts for each source.
platformstringoptionalFilter sources to a specific platform identifier.
catchrmcp_run_api_request_json#Execute the Catchr API request in JSON mode for one or multiple accounts.14 params

Execute the Catchr API request in JSON mode for one or multiple accounts.

NameTypeRequiredDescription
accountsarrayrequiredOne or more accounts to include in the request. Each entry requires id and authorization_id.
platformstringrequiredCatchr platform identifier.
datestringoptionalPreset date range or CUSTOM to use start_date/end_date.
dimensionsarrayoptionalList of dimension field keys to break down the data by.
end_datestringoptionalEnd date in YYYY-MM-DD format. Required when date is CUSTOM.
filtersarrayoptionalList of filter conditions to apply to the query.
include_current_datebooleanoptionalWhether to include the current (partial) date in the results.
max_rowsintegeroptionalMaximum number of rows to return. Minimum 1.
metricsarrayoptionalList of metric field keys to include in the response.
offset_timestringoptionalTimezone offset in hours applied to date boundaries.
optionsobjectoptionalAdditional platform-specific options as a JSON object.
sincestringoptionalISO 8601 timestamp used when date is SINCE.
sortsarrayoptionalList of sort instructions applied to the result set.
start_datestringoptionalStart date in YYYY-MM-DD format. Required when date is CUSTOM.