Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Dataforseo MCP server

Vendor MCP
Open markdown

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

Tools
90
What they doRead · write · destructive
0 · 90 · 00 read90 write0 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 Dataforseo MCP connection

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

    Scalekit credentials are available for Dataforseo 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 = 'dataforseomcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Dataforseo 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: 'dataforseomcp_ai_opt_kw_data_loc_and_lang',
    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
  • dataforseomcp_ai_opt_kw_data_loc_and_langList available locations and languages for AI keyword data searches.Write

    AI Keyword Data: Locations & Languages

    List available locations and languages for AI keyword data searches.

    Inputs

    This tool takes no inputs.

  • dataforseomcp_ai_opt_llm_ment_agg_metricsGet aggregated LLM mention metrics for target domains or keywords across AI platforms.Write

    LLM Mentions: Aggregated Metrics

    Get aggregated LLM mention metrics for target domains or keywords across AI platforms.

    Inputs

    targetarrayrequired
    Array of target objects to search for LLM mentions. Each object must contain either 'domain' or 'keyword'. Maximum number of targets: 1000
    filtersarray
    Array-based filter expression. A single condition is a 3-element array: [field, operator, value]. Combine conditions with ["and"|"or"] between them: [conditi...
    internal_list_limitnumber
    Internal parameter to limit the number of items processed. Not exposed to end-users.
    language_codestring
    Search engine language code (e.g., 'en')
    location_namestring
    full name of the location, example: 'United Kingdom', 'United States'
    platformstring
    Platform to search for LLM mentionsone of chat_gptgoogle
  • dataforseomcp_ai_opt_llm_ment_cross_agg_metricsCompare LLM mention metrics across multiple targets using cross-aggregated analysis.Write

    LLM Mentions: Cross-Aggregated Metrics

    Compare LLM mention metrics across multiple targets using cross-aggregated analysis.

    Inputs

    targetsarrayrequired
    array of objects containing target entities with aggregation keys. you can specify up to 10, but not less than 2
    filtersarray
    Array-based filter expression. A single condition is a 3-element array: [field, operator, value]. Combine conditions with ["and"|"or"] between them: [conditi...
    internal_list_limitnumber
    Internal parameter to limit the number of items processed. Not exposed to end-users.
    language_codestring
    Search engine language code (e.g., 'en')
    location_namestring
    full name of the location, example: 'United Kingdom', 'United States'
    platformstring
    Platform to search for LLM mentionsone of chat_gptgoogle
  • dataforseomcp_ai_opt_llm_ment_loc_and_langList available locations and languages for LLM mention searches.Write

    LLM Mentions: Locations & Languages

    List available locations and languages for LLM mention searches.

    Inputs

    This tool takes no inputs.

  • dataforseomcp_ai_opt_llm_ment_top_domainsGet the top domains mentioned in LLM responses for specified targets.Write

    LLM Mentions: Top Domains

    Get the top domains mentioned in LLM responses for specified targets.

    Inputs

    targetarrayrequired
    Array of target objects to search for LLM mentions. Each object must contain either 'domain' or 'keyword'. Maximum number of targets: 1000
    initial_dataset_filtersarray
    Array-based filter expression. A single condition is a 3-element array: [field, operator, value]. Combine conditions with ["and"|"or"] between them: [conditi...
    internal_list_limitnumber
    maximum number of elements within internal arrays, min value is 1, max value is 10
    items_list_limitnumber
    maximum number of results in the items array, min value is 1, max value is 10
    language_codestring
    Search engine language code (e.g., 'en')
    links_scopestring
    specifies which links will be used to extract domains and aggregationone of sourcessearch_results
    location_namestring
    full name of the location, example: 'United Kingdom', 'United States'
    platformstring
    Platform to search for LLM mentionsone of chat_gptgoogle
  • dataforseomcp_ai_opt_llm_ment_top_pagesGet the top pages mentioned in LLM responses for specified targets.Write

    LLM Mentions: Top Pages

    Get the top pages mentioned in LLM responses for specified targets.

    Inputs

    targetarrayrequired
    Array of target objects to search for LLM mentions. Each object must contain either 'domain' or 'keyword'. Maximum number of targets: 1000
    initial_dataset_filtersarray
    Array-based filter expression. A single condition is a 3-element array: [field, operator, value]. Combine conditions with ["and"|"or"] between them: [conditi...
    internal_list_limitnumber
    maximum number of elements within internal arrays, min value is 1, max value is 10
    items_list_limitnumber
    maximum number of results in the items array, min value is 1, max value is 10
    language_codestring
    Search engine language code (e.g., 'en')
    links_scopestring
    specifies which links will be used to extract domains and aggregationone of sourcessearch_results
    location_namestring
    full name of the location, example: 'United Kingdom', 'United States'
    platformstring
    Platform to search for LLM mentionsone of chat_gptgoogle
  • dataforseomcp_ai_optimization_chat_gpt_scraperRetrieve AI-generated responses for a keyword from ChatGPT.Write

    ChatGPT Scraper

    Retrieve AI-generated responses for a keyword from ChatGPT.

    Inputs

    keywordstringrequired
    keyword
    language_codestringrequired
    Search engine language code (e.g., 'en')
    force_web_searchboolean
    force AI agent to use web search
    location_namestring
    full name of the location, example: 'United Kingdom', 'United States'default United States