Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Nimble MCP server

Vendor MCP
Open markdown

The Nimble MCP connector routes your AI agent's tool calls to Nimble's own MCP server through Scalekit. Each user connects their own Nimble access token once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 31 tools.

Tools
31
What they doRead · write · destructive
17 · 9 · 517 read9 write5 destructive
Users sign in with

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 Nimble MCP connection

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

    Console steps with screenshots

    Generate an API key from your Nimble account so Scalekit can authenticate your users’ web intelligence requests.

    1. Create an API key in Nimble

      • Sign in to app.nimbleway.com.
      • In the left sidebar, click API Playground or look for the Create API Key item in the onboarding checklist at the bottom left.
      • Click Create API Key.

      In the Create API Key dialog:

      • Enter a Key name that identifies this integration, for example Agent Auth.
      • Click Create key.

      Nimble Create API Key dialog with key name "Agent Auth"

      Nimble displays your new API key. Copy it immediately — it is only shown once.

    2. Add the API key to Scalekit

      • In the Scalekit dashboard, go to AgentKit > Connections > Create Connection.
      • Search for Nimble MCP and click Create.
      • In the API Key field, paste the key you copied.
      • Click Save.

      Scalekit validates the key and marks the connection as active. Your users can now execute Nimble tools through their own connected accounts.

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

    Each user opens the link once and enters their Nimble MCP server credentials there. If your app already has a user's credentials, add the account from your backend instead, as the console steps above show. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • nimblemcp_nimble_agent_templates_getGet full details of a pre-built agent template.Read-only

    Agent Templates Get

    Get full details of a pre-built agent template. When to use: - You have a template name from `nimblemcp_nimble_agent_templates_list` and want its full definition before basing a new agent on it. When NOT to use: - You don't know the template name — use `nimblemcp_nimble_agent_templates_list` first.

    Inputs

    template_namestringrequired
    Template name as returned by `nimblemcp_nimble_agent_templates_list`.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agent_templates_listList pre-built agent templates that can seed `nimblemcp_nimble_agents_create` via its `template` field.Read-only

    Agent Templates List

    List pre-built agent templates that can seed `nimblemcp_nimble_agents_create` via its `template` field. When to use: - You want to see what pre-built agent templates exist before creating a custom agent. When NOT to use: - You already have a template name — use `nimblemcp_nimble_agent_templates_get` to inspect it.

    Inputs

    limitinteger
    Maximum number of templates to return (1-100).default 50
    offsetinteger
    Offset for pagination. Use 0 for the first page.default 0
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_getGet full details of a specific agent including its input/output schema.Read-only

    Agents Get

    Get full details of a specific agent including its input/output schema. Use after `nimblemcp_nimble_agents_list` to inspect an agent before running it. When to use: - You have an agent name and need to see its full schema before running it. When NOT to use: - You don't know the agent name — use `nimblemcp_nimble_agents_list` first.

    Inputs

    agent_idstringrequired
    Exact agent name as returned by `nimblemcp_nimble_agents_list`.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_listBrowse the catalog of pre-built Nimble agents.Read-only

    Agents List

    Browse the catalog of pre-built Nimble agents. Use this as the first step when you want to run a structured extraction on a known site or data source. When to use: - You want to discover available agents for a specific domain or data source. - You want to paginate through all agents in the catalog.

    Inputs

    limitinteger
    Maximum number of agents to return in one page (1-100).default 50
    offsetinteger
    Offset for pagination. Use 0 for the first page.default 0
    querystring
    Short keyword to filter agents by name or domain (e.g. 'amazon', 'linkedin'). Use 1-2 words for best results.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_run_resultFetch the output of a completed agent run.Read-only

    Agents Run Result

    Fetch the output of a completed agent run. Returns the run's output (text or structured JSON with trust/citation metadata). Call after `nimblemcp_nimble_agents_run_status` reports a terminal status. When to use: - An agent run has completed and you need its final output. When NOT to use: - The run may still be in progress — check `nimblemcp_nimble_agents_run_status` first.

    Inputs

    agent_idstringrequired
    Agent id the run belongs to.
    run_idstringrequired
    Run id returned by `nimblemcp_nimble_agents_run`.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_run_statusCheck the status of an agent run.Read-only

    Agents Run Status

    Check the status of an agent run. While the status is not terminal (e.g. still pending/running), poll again after ~15-30 seconds. Once completed, fetch the output via `nimblemcp_nimble_agents_run_result`. When to use: - You started a run with `nimblemcp_nimble_agents_run` and want to check whether it has finished. When NOT to use: - You want crawl status — use `nimblemcp_nimble_crawl_status`. - You want extract template generation status — use `nimblemcp_nimble_extract_templates_generation_status`.

    Inputs

    agent_idstringrequired
    Agent id the run belongs to.
    run_idstringrequired
    Run id returned by `nimblemcp_nimble_agents_run`.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_runs_listList past and in-progress runs of an agent.Read-only

    Agents Runs List

    List past and in-progress runs of an agent. When to use: - You want to see run history for a specific agent, including in-progress runs. When NOT to use: - You want details of one specific run — use `nimblemcp_nimble_agents_run_status` or `nimblemcp_nimble_agents_run_result`.

    Inputs

    agent_idstringrequired
    Agent id whose runs to list.
    limitinteger
    Maximum number of runs to return (1-100).default 50
    offsetinteger
    Offset for pagination.default 0
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.
  • nimblemcp_nimble_agents_statusCheck the current status of an agent generation.Read-only

    Agents Status

    Check the current status of an agent generation. Status flow: in-progress → succeeded or failed. When to use: - You started a generation with `nimblemcp_nimble_agents_generate` or `nimblemcp_nimble_agents_update_from_agent` and want to check if it completed. When NOT to use: - You want crawl job status — use `nimblemcp_nimble_crawl_status`. - You want async task results — use `nimblemcp_nimble_task_results`.

    Inputs

    generation_idstringrequired
    Server-assigned generation ID returned by `nimblemcp_nimble_agents_generate` or `nimblemcp_nimble_agents_update_from_agent`.
    tool_descriptionstring
    No description.
    tool_reasoningstring
    No description.