Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Airbyte MCP server

Vendor MCP
Open markdown

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

Tools
20
What they doRead · write · destructive
13 · 6 · 113 read6 write1 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 Airbyte MCP connection

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

    Scalekit credentials are available for Airbyte 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 = 'airbytemcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Airbyte 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: 'airbytemcp_check_enrollment_status',
    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
  • airbytemcp_check_enrollment_statusCheck and trigger account enrollment.Read-only

    Check Enrollment Status

    Check and trigger account enrollment. Call this before other tools when working with a new user or when you get authentication/authorization errors. If is_enrolled is false, check provisioning_state and retry only while null or IN_PROGRESS.

    Inputs

    This tool takes no inputs.

  • airbytemcp_current_datetimeGet the current date and time in ISO 8601 format (UTC).Read-only

    Get Current Datetime

    Get the current date and time in ISO 8601 format (UTC). Call this FIRST before any time-based query to resolve relative dates like 'today', 'yesterday', 'this week', etc.

    Inputs

    This tool takes no inputs.

  • airbytemcp_get_connector_templateGet detailed info about a connector type including configuration fields, auth requirements, and available auth methods.Read-only

    Get Connector Template

    Get detailed info about a connector type including configuration fields, auth requirements, and available auth methods. Call this before start_credential_flow to understand what authentication the connector supports.

    Inputs

    template_idstringrequired
    The ID of the connector template (from list_available_connectors).
  • airbytemcp_get_current_organizationReport which organization is currently active.Read-only

    Get Current Organization

    Report which organization is currently active. Call this when the user asks which organization they are in. When no organization has been explicitly selected, the backend uses your default organization (is_explicit_selection is false).

    Inputs

    This tool takes no inputs.

  • airbytemcp_get_current_workspaceReport which workspace is currently active.Read-only

    Get Current Workspace

    Report which workspace is currently active. Call this when the user asks which workspace they are in, or before creating connectors. When no workspace has been selected, the active workspace is 'default'.

    Inputs

    This tool takes no inputs.

  • airbytemcp_inspect_connectorInspect a connected data source for metadata, status/readiness, source definition identity, warnings, and docs_skill_id.Read-only

    Inspect Connector

    Inspect a connected data source for metadata, status/readiness, source definition identity, warnings, and docs_skill_id. This is mandatory before read_skill_docs. Does not return usage instructions for execute — use read_skill_docs with the returned docs_skill_id.

    Inputs

    connector_idstringrequired
    The connector instance ID (from list_created_connectors).
  • airbytemcp_list_available_connectorsList connector types (templates) available to create — NOT existing connectors.Read-only

    List Available Connectors

    List connector types (templates) available to create — NOT existing connectors. Returns names and IDs. To see connectors already set up, use list_created_connectors instead.

    Inputs

    This tool takes no inputs.

  • airbytemcp_list_created_connectorsList the user's connected data sources (e.g.Read-only

    List Created Connectors

    List the user's connected data sources (e.g. Salesforce, HubSpot, Zendesk, Jira, databases). Returns connector IDs needed for inspect_connector, read_skill_docs, and execute. Call this before querying to see what systems are available.

    Inputs

    workspace_namestring
    Optional workspace name to list connectors for.