Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to Lokalise

Scalekit connector
Open markdown

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

Tools
109
What they doRead · write · destructive
50 · 41 · 1850 read41 write18 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 Lokalise connection

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

    Console steps with screenshots

    Generate a Lokalise API token so Scalekit can read and manage your translation projects on your behalf.

    1. Open API tokens in your Lokalise profile

      • Log in to Lokalise and open your profile settings.

      • Select API tokens from the sidebar.

        Lokalise profile API tokens page listing existing tokens with a Generate new token button

    2. Generate a token

      • Click Generate new token.

      • Grant both Read and Write access so Scalekit can manage projects, keys, and translations.

      • Copy the token immediately — Lokalise shows the full value only once.

    3. Add the token in Scalekit

      • In the Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Lokalise and click Create.
      • Paste the API token you copied and click Save.
  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 = 'lokalise'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Lokalise:', 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: 'lokalise_list_payment_cards',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user opens the link once and enters their Lokalise 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
  • lokalise_get_billing_detailsRetrieve the billing details on file for a Lokalise team, used for invoices and translation orders.Read-only

    Retrieve Team Billing Details

    Retrieve the billing details on file for a Lokalise team, used for invoices and translation orders. Returns the team's billing email, address fields (company, address lines, city, ZIP/postal code, state code for US addresses), phone, VAT number, and country code. Use this to check a team's current billing information. Use lokalise_create_billing_details to set it up if the team doesn't have billing details yet.

    Inputs

    team_idintegerrequired
    The numeric ID of the Lokalise team to look up billing details for.
  • lokalise_get_commentRetrieve a single comment on a translation key in a Lokalise project by its ID.Read-only

    Get Comment

    Retrieve a single comment on a translation key in a Lokalise project by its ID. Returns the comment text, author, and timestamps. Use this when you already have a comment ID (from List Key Comments or List Project Comments) and need its full details.

    Inputs

    comment_idintegerrequired
    The unique numeric identifier of the comment to retrieve.
    key_idintegerrequired
    The unique numeric identifier of the translation key the comment belongs to.
    project_idstringrequired
    The unique identifier of the Lokalise project the key belongs to.
  • lokalise_get_contributorRetrieve a single contributor's details from a Lokalise project by contributor ID.Read-only

    Get Contributor

    Retrieve a single contributor's details from a Lokalise project by contributor ID. Returns the contributor's user ID, email, full name, admin/reviewer flags, assigned languages with write access, and admin rights. Use this to look up one contributor's settings rather than browsing every contributor in the project. Requires the contributor ID; look it up from the project's contributor listing if you don't already have it.

    Inputs

    contributor_idintegerrequired
    The unique numeric identifier of the contributor to retrieve.
    project_idstringrequired
    The unique identifier of the Lokalise project the contributor belongs to.
  • lokalise_get_contributor_bulk_deletion_jobCheck the status of a bulk contributor-deletion job in a Lokalise project.Read-only

    Get Bulk Deletion Job Status

    Check the status of a bulk contributor-deletion job in a Lokalise project. Returns the job's state (queued, running, completed, or failed) along with counts of contributors processed, deleted, failed, and skipped, plus any error reasons and their counts. Use this to poll an in-progress bulk deletion rather than to look up a single contributor. Requires the job ID returned when the bulk contributor-deletion job was started.

    Inputs

    job_idstringrequired
    The unique identifier (UUID v7) of the bulk contributor-deletion job to check, as returned when the job was started.
    project_idstringrequired
    The unique identifier (UUID v7) of the Lokalise project the bulk deletion job belongs to.
  • lokalise_get_current_contributorRetrieve the contributor profile of the currently authenticated user for a Lokalise project, including permissions inherited from any group membership.Read-only

    Get Current Contributor

    Retrieve the contributor profile of the currently authenticated user for a Lokalise project, including permissions inherited from any group membership. Returns the user's ID, email, full name, admin/reviewer flags, assigned languages with write access, and combined admin rights. Use this to check the current API token's own effective permissions in a project rather than looking up another contributor by ID.

    Inputs

    project_idstringrequired
    The unique identifier of the Lokalise project to check the current user's contributor profile in.
  • lokalise_get_custom_statusRetrieve a single custom translation status from a Lokalise project by status ID.Read-only

    Get Custom Status

    Retrieve a single custom translation status from a Lokalise project by status ID. Returns the status's ID, title, and hex color. Use this to look up one status rather than listing every custom status in the project. Requires the status ID; look it up with lokalise_list_custom_statuses if you don't already have it.

    Inputs

    project_idstringrequired
    The unique identifier of the Lokalise project the custom translation status belongs to.
    status_idintegerrequired
    The unique numeric identifier of the custom translation status to retrieve.
  • lokalise_get_glossary_termRetrieve a single glossary term from a Lokalise project by its term ID.Read-only

    Get Glossary Term

    Retrieve a single glossary term from a Lokalise project by its term ID. Returns the term's text, description, case-sensitivity and translatable flags, forbidden flag, its per-language translations, and tags. Use this when you already know the term ID and need its full details. Use a list glossary terms tool to browse or search terms and find the ID first.

    Inputs

    project_idstringrequired
    The unique identifier of the Lokalise project that contains the glossary term. Find this on the project's settings page or from a list projects tool.
    term_idintegerrequired
    The unique numeric identifier of the glossary term to retrieve.
  • lokalise_get_keyRetrieve a single translation key from a Lokalise project by its key ID.Read-only

    Get Key

    Retrieve a single translation key from a Lokalise project by its key ID. Returns the key's name, description, platforms, tags, comments, screenshots, and translations for every project language. Use this when you already know the key ID. Use lokalise_list_keys instead to browse or filter a project's keys.

    Inputs

    key_idnumberrequired
    Unique numeric identifier of the key to retrieve. Example: 222222.
    project_idstringrequired
    Unique identifier of the Lokalise project the key belongs to. Example: '3002780358964f9bab5a92.87762498'.
    disable_referencesinteger
    Whether to disable key references in the response. Use 1 to disable, or 0 to keep them enabled.one of 01