# Apache Airflow MCP connector

The Apache Airflow connector lets Claude, ChatGPT, Cursor, and the Elaichi Agent manage Apache Airflow users, roles, and permissions through one governed endpoint, with every change running as the signed-in person and recorded in an audit log.

Source: https://elaichi.ai/connectors/apacheairflow/

## Facts

| | |
| --- | --- |
| Application | Apache Airflow |
| Category | Application Development |
| AI tools | 11 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | Yes |

## What you can ask once Apache Airflow is connected

- List all Apache Airflow users and their assigned roles.
- Which Apache Airflow roles carry write permissions?
- Create an Apache Airflow user on the Viewer role.

## Connect Apache Airflow in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Apache Airflow.
2. Optionally set Share with, then press Connect.
3. Paste an Apache Airflow API key. One person generates a token in Apache Airflow and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Apache Airflow tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Apache Airflow to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Apache Airflow to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Apache Airflow to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Apache Airflow to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Apache Airflow tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Apache Airflow through Elaichi

### Onboard a new engineer to Airflow

Data Engineering. Create the Apache Airflow account for a new hire and attach the right role in one request, instead of clicking through the admin screens.

### Find out who still has access

IT. Ask for the full list of Apache Airflow users and see at a glance which accounts belong to people who have moved teams or left.

### Review what a role can do

Security. Pull up any Apache Airflow role, check the permissions behind it, and compare it against what the team actually needs.

### Build a role for a new team

Platform. Create an Apache Airflow role scoped to what the analytics team needs, then adjust it as the team's work changes.

### Answer an access audit in minutes

Compliance. List every Apache Airflow user, their roles, and the permissions those roles carry, ready to paste into an access review.

### Clean up a departed user's account

IT. Look up the Apache Airflow user by ID, confirm the details, and remove the account when someone leaves the organization.

## Frequently asked questions

### How do I connect Apache Airflow to Claude?

Connect Apache Airflow in Elaichi first: paste an Apache Airflow API key when prompted, and the connection is ready. There is no OAuth application to register and no client ID or secret to generate. Then in Claude go to Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp as the endpoint.

### Does Apache Airflow work with ChatGPT and Cursor as well as Claude?

Yes. Once Apache Airflow is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Apache Airflow once and every client can use it.

### What can an AI agent actually do with my Apache Airflow data?

With this connector an agent can list Apache Airflow users, look up a single user, create new accounts, update them, and remove them. It can do the same for Apache Airflow roles, and it can list the permissions available in your deployment. It does not run or edit pipelines; this connector is about who has access to Apache Airflow and what they are allowed to do.

### Does connecting Apache Airflow give the AI every user and role?

The AI only sees what the Apache Airflow API key it runs under is allowed to see, and every action is logged against the person who signed in to Elaichi. Elaichi can narrow that access further, for example to read-only on Apache Airflow users and roles, but it can never grant more than the key itself has.

### Can my team share one Apache Airflow connection?

Yes. One person connects Apache Airflow in Elaichi and shares the connection with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log shows exactly who created, changed, or removed each Apache Airflow user or role.

### Can I stop an agent from deleting or changing things in Apache Airflow?

Yes. Restrictions in Elaichi apply per action, so you can allow listing and looking up Apache Airflow users and roles while blocking create, update, and delete. A blocked action is never shown to the AI client at all, so no prompt, however worded, can reach it.

### What happens to an Apache Airflow connection when someone leaves?

When you offboard someone in Elaichi, their access to Apache Airflow through Elaichi ends at once, across every client they used. If the connection was shared, it keeps working for everyone else on the team. Disconnecting Apache Airflow once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client in one step.

## All 11 Apache Airflow tools

Every tool below is callable through https://api.elaichi.ai/mcp once Apache Airflow is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Apache Airflow users** (List). List users in Apache Airflow. Returns user details including first_name, last_name, username, email, active status, last_login time, role names, and creation dates.
- **Get single Apache Airflow user by ID** (Get). Get information about a specific user in Apache Airflow using id. Returns details such as username, email, roles, and active status.
- **Create a Apache Airflow user** (Create). Create a user in Apache Airflow using first_name, last_name, username, email, roles, and password. Returns the created user's details including username, email, active status, login count, and timestamps.
- **Update a Apache Airflow user by ID** (Update). Update a specific user in Apache Airflow using id. Requires username as id. Returns fields like first_name, last_name, username, email, active, last_login, login_count, failed_login_count, roles, created_on, and changed_on.
- **Delete a Apache Airflow user by ID** (Delete). Delete a user in Apache Airflow with the specified id. This operation removes the user permanently. Returns confirmation of deletion.
- **List all Apache Airflow roles** (List). List roles in Apache Airflow. Returns each role's name and associated actions, including the action name and resource name. Also returns total_entries for total available roles before pagination.
- **Get single Apache Airflow role by ID** (Get). Get a role in Apache Airflow by id. Returns details about the role including its permissions and name.
- **Create a Apache Airflow role** (Create). Create a new role in Apache Airflow. Requires name and actions in the request body. Returns the created role with fields such as name and associated actions.
- **Update a Apache Airflow role by ID** (Update). Update a role in Apache Airflow. Requires id. Returns the role name and a list of actions with associated resources to show updated permissions and access.
- **Delete a Apache Airflow role by ID** (Delete). Delete a specific role in Apache Airflow using id (role_name). Returns confirmation of deletion.
- **List all Apache Airflow permissions** (List). List permissions in Apache Airflow. Returns a collection of permission objects, each including name, description, and associated actions.
