Airbyte Built Its CLI for Agents, Not People

Airbyte engineer Pedro Lopez told AI Engineer why agents need JSON, uniform commands and skills, and why MCP authentication still breaks across clients.

Pedro Lopez presenting Airbyte CLI and MCP design for AI agents
AI Engineer

Pedro Lopez, software engineer at Airbyte, told AI Engineer his team had to unlearn everything that makes a CLI nice for humans to make one that works for agents. The talk walked through how the data movement company built both an MCP server and a CLI as thin, unified interfaces into the same platform.

Airbyte Built Its CLI for Agents, Not People - AI Engineer
Airbyte Built Its CLI for Agents, Not People, AI Engineer

Airbyte started as open source plumbing for moving data from SaaS tools like Zendesk, Stripe and GitHub into analytics pipelines. Lopez said it now pitches itself as the data and action layer for AI agents, centered on a context store that sits between agents and those tools and provides a search optimized index that agents can query and join across sources. The MCP and CLI do not reimplement that platform, they translate it. Both sit on top of shared APIs with OpenAPI specs as source of truth, which matters because Lopez said the platform deploys more than 10 times a day.

The MCP is for the non technical user who wants data inside ChatGPT or Claude without writing code. Lopez demoed asking which connectors are available, then asking for five paying customers with Zendesk support tickets, and the server searched the context store and joined Zendesk and Stripe to answer. The lesson he stressed was restraint. Instead of exposing a tool per entity, Airbyte exposes just two for execution: describe to get the schema and execute to read, write or delete records. That progressive discovery keeps tool descriptions small and performance up. Authentication sealed the argument, Lopez said OAuth is the way. Bearer tokens simply do not work on major clients like Anthropic where custom connector registration defaults to OAuth only, and users expect long lived sessions like a mobile app, not a web app that asks them to log in again.

What did not work was elicitation. MCP has a spec for requesting information from users, including URL mode elicitation which looks like the widget Airbyte uses to let users pick HubSpot entities and run the OAuth flow. Lopez said client support is uneven. He showed Claude Desktop refusing URL mode elicitation outright, so Airbyte stuck with its own link based flow outside the spec.

The CLI is the technical counterpart and it follows different rules. Lopez said to take JSON in and return JSON out because agents build complex queries more reliably that way than with flags, and JSON output plugs into Unix pipes and jq to slice long responses. Consistency is non negotiable, if it is connectors list and connectors create then it must be workspaces list, otherwise agents guess wrong. If agents keep making the same mistake, Lopez argued, change the contract to match their expectation. Every CLI also ships with a skill to solve discovery, a description that surfaces when someone asks about connectors and points to reference files so the agent loads detail progressively instead of flooding context. And prompts have to die, agents cannot answer an interactive prompt, so credentials must move to flags, environment variables or config files set up out of band.

Neither surface is clean. Lopez flagged hard limits on MCP like Claude's 2 kilobyte cap on tool descriptions and caps on how long a tool can run that block long running jobs, while the CLI trades those limits for versioning headaches and the risk of an agent looping forever without guardrails. Even the MCP footprint is messier than the talk suggests, there are actually three different Airbyte MCP servers hosted in different places and authenticated in different ways according to Orchestra's guide, which underlines why keeping the interface thin and spec driven matters more than adding features. Lopez said to pick MCP to prototype quickly for non technical users and CLI when you need pipes, files, tail and head for long outputs.

© 2026 StartupHub.ai. All rights reserved. You may not republish this article in full without a license. Search engines and AI research tools may crawl and summarize for reference. Bulk reproduction or model training requires a license. See our terms.
Daniel Singer

Written by

Daniel Singer

Editor, StartupHub.ai

Daniel Singer is the editor of StartupHub.ai, a technology expert and thought leader on AI and its applications across sectors, from fintech and healthcare to developer tooling and consumer software. He writes and tests the tools covered here thoroughly and regularly, and built StartupHub.ai to give founders, operators and buyers a clearer read on what they are actually being sold.