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
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. 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>Create the Airbyte MCP connection
In AgentKit > Connections, create an Airbyte MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Airbyte MCP server, so you don't need to register an OAuth app.
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.actionsconst connector = 'airbytemcp'const identifier = 'user_123'// Generate an authorization link for the userconst { 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 callconst result = await actions.executeTool({connector,identifier,toolName: 'airbytemcp_check_enrollment_status',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "airbytemcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Airbyte MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="airbytemcp_check_enrollment_status",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolairbytemcp_check_enrollment_statusCheck and trigger account enrollment.Read-onlyCheck 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-onlyGet 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-onlyGet 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-onlyGet 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-onlyGet 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-onlyInspect 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-onlyList 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-onlyList 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.
airbytemcp_list_organizationsList the organizations you belong to.Read-onlyList Organizations
List the organizations you belong to. Each is flagged with is_current. Call this when the user mentions multiple organizations or wants to switch. If the list is empty and is_instance_admin is true, ask the user for the specific organization id.
Inputs
This tool takes no inputs.
airbytemcp_list_skillsList available skill documentation entries for connected data sources.Read-onlyList Skills
List available skill documentation entries for connected data sources. Use this to discover docs skill IDs when you cannot call inspect_connector directly.
Inputs
cursorstring- Pagination cursor.
limitinteger- Maximum number of skills to return.default
20 workspace_namestring- Optional workspace name.
airbytemcp_list_workspacesList all workspaces in your organization.Read-onlyList Workspaces
List all workspaces in your organization. Each is flagged with is_current and is_default. Call this when the user mentions multiple workspaces or wants to switch.
Inputs
This tool takes no inputs.
airbytemcp_read_skill_docsRead usage documentation for a skill.Read-onlyRead Skill Docs
Read usage documentation for a skill. For connector skills, pass the docs_skill_id returned by inspect_connector. Omit section to return metadata and available sections. Pass an exact section ID to read entity/action/params/examples for execute.
Inputs
idstringrequired- The docs skill ID (from inspect_connector).
sectionstring- Specific section ID to read.
workspace_namestring- Optional workspace name.
airbytemcp_search_skillsSearch available skill documentation entries by a basic keyword.Read-onlySearch Skills
Search available skill documentation entries by a basic keyword. This is exact substring search only. It matches connector instance names and connector-source IDs. Use it when you need a docs skill ID.
Inputs
querystringrequired- Keyword to search for in skill names.
cursorstring- Pagination cursor.
limitinteger- Maximum number of results.default
20 workspace_namestring- Optional workspace name.
airbytemcp_check_credential_flow_statusCheck the status of a credential flow started by start_credential_flow.WriteCheck Credential Flow Status
Check the status of a credential flow started by start_credential_flow. When complete, creates the connector and returns the connector_id. If status is 'pending', the user hasn't finished yet.
- Idempotent
Inputs
session_idstringrequired- The session ID from start_credential_flow.
workspace_namestring- Optional fallback workspace name.
airbytemcp_executeQuery, search, or write data in connected business systems (CRMs, support tools, databases, project trackers).WriteExecute
Query, search, or write data in connected business systems (CRMs, support tools, databases, project trackers). Executes one or more operations concurrently. Maximum 10 items per call. PRECONDITION: Call inspect_connector then read_skill_docs before the first execute call for a connector.
Inputs
itemsarrayrequired- A list of execution items, each targeting a connector entity + action.
airbytemcp_execute_skill_functionInvoke one source-controlled function declared by a library skill.WriteExecute Declared Skill Function
Invoke one source-controlled function declared by a library skill. PRECONDITION: call read_skill_docs(id=skill_id) first, then read the exact function:<function_name> section and follow its JSON schema. Only declared function names and fields are valid. This tool may write skill-session artifacts but does not submit Stripe evidence or perform destructive actions. The first call may omit skill_session_id; this tool returns a generated ID and the effective workspace name. Pass both values back explicitly on every related call.
Inputs
function_namestringrequired- The exact declared function name to invoke, as documented in the skill's function:<function_name> section.
inputobjectrequired- The input payload for the function, matching the JSON schema documented for it by read_skill_docs.
skill_idstringrequired- The ID of the skill declaring the function to invoke.
skill_session_idstring- The skill session ID from a prior call. Omit on the first call — this tool generates and returns one to reuse on subsequent related calls.
workspace_namestring- Optional workspace name.
airbytemcp_start_credential_flowStart a browser-based credential flow to connect a data source.WriteStart Credential Flow
Start a browser-based credential flow to connect a data source. Returns a URL the user must visit to enter credentials securely. This is the ONLY way to provide credentials — NEVER ask for or accept API keys, tokens, passwords, or secrets directly in chat.
Inputs
template_idstringrequired- The connector template ID (from list_available_connectors).
workspace_namestring- Optional workspace name. Defaults to current workspace.
airbytemcp_use_organizationSwitch the active organization for the session.WriteUse Organization
Switch the active organization for the session. After calling this, every tool operates on the chosen organization until you switch again. Switching organizations resets the active workspace to that organization's default workspace.
- Idempotent
Inputs
organization_idstringrequired- The organization to switch to (from list_organizations).
airbytemcp_use_workspaceSwitch the active workspace for the session.WriteUse Workspace
Switch the active workspace for the session. After calling this, all workspace-scoped tools operate on the chosen workspace until you switch again. Always tell the user which workspace is now active.
- Idempotent
Inputs
workspace_namestringrequired- The workspace to switch to (from list_workspaces).
airbytemcp_delete_connectorPermanently delete a connector instance.DestructiveDelete Connector
Permanently delete a connector instance. This cannot be undone. Only use this after the user has explicitly confirmed deletion and identified the connector by name or connector_id.
Inputs
connector_idstringrequired- The connector instance ID to delete (from list_created_connectors).
No tools match.