Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to JumpCloud

Scalekit connector
Open markdown

The JumpCloud connector lets your AI agent act in each user's JumpCloud account. Each user connects their own JumpCloud API key once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 98 tools.

Tools
98
What they doRead · write · destructive
69 · 24 · 569 read24 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 JumpCloud connection

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

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

    Each user opens the link once and enters their JumpCloud credentials there. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • jumpcloud_get_alertRetrieve one JumpCloud alert by id.Read-only

    Get Alert

    Retrieve one JumpCloud alert by id. Returns the alert with title, status, severity, category, source, remark and timestamps. Use get_alert when you have the alert id.

    Inputs

    idstringrequired
    ObjectID of the alert. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
  • jumpcloud_get_alert_statsGet alert statistics for the JumpCloud organization.Read-only

    Get Alert Stats

    Get alert statistics for the JumpCloud organization. Returns context and totalCount with the breakdown of alerts. Use get_alert_stats for counts. Use list_alerts for the alerts themselves.

    Inputs

    groupBystring
    Provide a list of group by strings as input. Possible values are 'GROUP_BY_STATUS', 'GROUP_BY_SEVERITY'.For combined grouping with 'GROUP_BY_STATUS' and 'GROUP_BY_SEVERITY' , the input should look like this: ['GROUP_BY_STATUS:GROUP_BY_SEVERITY'].Example : ["GROUP_BY_STATUS","GROUP_BY_SEVERITY","GROU...
  • jumpcloud_get_applicationRetrieve one JumpCloud SSO application by id.Read-only

    Get Application

    Retrieve one JumpCloud SSO application by id. Returns the application with config, SSO settings, display fields and logo. Use get_application when you have the application id.

    Inputs

    idstringrequired
    ObjectID of the application. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
  • jumpcloud_get_application_templateRetrieve one JumpCloud SSO application template by id.Read-only

    Get Application Template

    Retrieve one JumpCloud SSO application template by id. Returns the template with config, SSO and provisioning capabilities. Use get_application_template to see how a catalog app is configured.

    Inputs

    idstringrequired
    ObjectID of the application template. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
    fieldsstring
    Space-separated field names to include in each returned record. Omit to get the default field set. Example: username email.
    filterstring
    Filter expression in the form field:$operator:value using v1 operators such as $eq, $ne, $in, $nin, $lt, $lte, $gt, $gte and $sw. Example: department:$eq:Engineering.
    limitinteger
    Maximum number of records to return in one call. The API caps this at 100. Example: 25.
    skipinteger
    Number of records to skip before returning results, used for paging. Example: 0 for the first page, 25 for the second page when limit is 25.
    sortstring
    Space-separated field names to sort by. Prefix a field with - for descending order. Example: -created.
  • jumpcloud_get_commandRetrieve one saved JumpCloud command by id.Read-only

    Get Command

    Retrieve one saved JumpCloud command by id. Returns the command definition including script body, type, launch type, schedule and targets. Use get_command when you have the command id.

    Inputs

    idstringrequired
    ObjectID of the command. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
    fieldsstring
    Space-separated field names to include in each returned record. Omit to get the default field set. Example: username email.
  • jumpcloud_get_command_resultRetrieve one JumpCloud command execution result by id.Read-only

    Get Command Result

    Retrieve one JumpCloud command execution result by id. Returns the result with command, system, requestTime, responseTime and the response output. Use get_command_result to read the output of one run.

    Inputs

    idstringrequired
    ObjectID of the command result. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
    fieldsstring
    Space-separated field names to include in each returned record. Omit to get the default field set. Example: username email.
    filterstring
    Filter expression in the form field:$operator:value using v1 operators such as $eq, $ne, $in, $nin, $lt, $lte, $gt, $gte and $sw. Example: department:$eq:Engineering.
  • jumpcloud_get_ip_listRetrieve one JumpCloud IP list by id.Read-only

    Get IP List

    Retrieve one JumpCloud IP list by id. Returns the IP list with name, description and ips. Use get_ip_list when you have the id.

    Inputs

    idstringrequired
    ObjectID of the IP list. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
  • jumpcloud_get_organizationRetrieve one JumpCloud organization by id.Read-only

    Get Organization

    Retrieve one JumpCloud organization by id. Returns the organization with displayName, logoUrl, entitlement and account settings. Use get_organization when you have the organization id.

    Inputs

    idstringrequired
    ObjectID of the organization. Example: 5f3a1b2c4d5e6f7890123456. Example: 5f3a1b2c4d5e6f7890123456.
    fieldsstring
    Space-separated field names to include in each returned record. Omit to get the default field set. Example: username email.
    filterstring
    Filter expression in the form field:$operator:value using v1 operators such as $eq, $ne, $in, $nin, $lt, $lte, $gt, $gte and $sw. Example: department:$eq:Engineering.