# Tavio MCP connector

The Tavio connector lets Claude, ChatGPT, Cursor, and other AI clients work with your Tavio workflows, environments, configs, solutions, users, and customers, each request running as the signed-in person and recorded in an audit log.

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

## Facts

| | |
| --- | --- |
| Application | Tavio |
| Category | IPAAS |
| AI tools | 30 |
| 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 Tavio is connected

- List all Tavio environments and who owns each one.
- Which Tavio users were added to production this month?
- Show Tavio customers with no solutions connected yet.

## Connect Tavio in Elaichi

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

1. Open Connections, choose Add connection, and pick Tavio.
2. Optionally set Share with, then press Connect.
3. Paste a Tavio API key. One person generates a token in Tavio 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 Tavio tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Tavio 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 Tavio 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 Tavio 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 Tavio 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 Tavio 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 Tavio through Elaichi

### Check which workflows are live before a release

Operations. Ask for the full list of Tavio workflows and pull up any one by name to confirm what it does and which environment it runs in before you change anything.

### Add a new hire to Tavio in one step

IT. Create the Tavio user, confirm their details, and update their record later when their role changes, all from the chat window where you already work.

### Set up a new customer on their first day

Customer success. Create the customer in Tavio, connect their environment, and confirm the setup is in place while you are still on the kickoff call.

### Fix a config without opening the console

Implementation. Look up the config behind a solution, compare it with what the customer asked for, and update the values that are wrong.

### Find out why a workflow stopped running

Support. Pull up the workflow and its config, read them together, and tell the customer what changed rather than guessing.

### Retire environments nobody uses anymore

Operations. List every Tavio environment, spot the ones from finished pilots or departed customers, and remove them so the account stays clean.

## Frequently asked questions

### How do I connect Tavio to Claude?

Connect Tavio in Elaichi first: Tavio uses an API key, so you paste the key from your Tavio account into Elaichi 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 the Elaichi endpoint https://api.elaichi.ai/mcp. Sign in with your Elaichi account and Tavio appears in Claude.

### Does Tavio work with ChatGPT and Cursor as well as Claude?

Yes. Once Tavio 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 Tavio once and every client you use picks it up.

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

With Tavio connected, an agent can list and read your workflows, environments, configs, solutions, and users, and it can create and update workflows, configs, and users, create customers, and connect environments. In practice that means asking which workflows exist for a customer, fixing a config value, adding a teammate, or removing an unused environment, all in plain language. It can only do what the Tavio connector offers, nothing beyond it.

### Does connecting Tavio give the AI access to every environment and workflow?

No. Every request to Tavio runs as the person who signed in, so the AI can only see the environments, workflows, and configs that person's Tavio access already allows. Elaichi can narrow that further, for example to read-only or to a subset of actions, but it can never widen what Tavio itself permits.

### Can my team share one Tavio connection?

Yes. One person connects Tavio with the API key and shares the connection with a team in Elaichi, and nobody else ever sees or handles the key. Each teammate still signs in to Elaichi as themselves, so every change to a Tavio workflow or config is logged under the name of the person who made it.

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

Yes. Restrictions in Elaichi work per action, so you can allow reading Tavio workflows and configs while blocking updates, or block deleting users, environments, and workflows altogether. A blocked action is never shown to Claude, ChatGPT, or any other client, so no prompt, however worded, can reach it.

### What happens to a Tavio connection when someone leaves?

Offboarding a person in Elaichi ends their access to Tavio through every AI client at once, with no key to rotate. If they shared a Tavio connection with a team, that connection keeps working for everyone else. If you ever want Tavio gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client at the same time.

## All 30 Tavio tools

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

- **Create a Tavio auth** (Create). Authenticate a tavio user within the context of a specific organization. Returns the access token and full user details including token, expires_in, and a user object with id, email, status, firstName, lastName, mfaRequired, mfaConfigured, changePassword, and invite_expired. Required: org_domain, username, password. A 404 is returned if the user does not have access to the organization.
- **Create a Tavio auth token** (Create). Renew an existing tavio access token (organization-level or environment-level) for the specified organization, returning a new token with extended validity. The current token must be passed as a Bearer token in the Authorization header. Returns: token, expires_in. Required: org_domain.
- **Create a Tavio environment connection** (Create). Connect a user to a specific tavio environment (customer), authenticating them within that environment's context. Returns: token, context, expires_in, message. Required: org_domain, env_domain. Returns a 404 if the user does not have access to the specified environment.
- **List all Tavio me** (List). Retrieve the current authenticated user in Tavio. Returns the user object including id, email, status, firstName, lastName, roles, mfaRequired, mfaConfigured, username, and invite_expired. Required: org_domain.
- **List all Tavio users** (List). List all users in a tavio organization. Returns: id, email, status, favorite, lastName, username, firstName, mfaRequired, mfaConfigured, changePassword, invite_expired. Supports filters and sort query parameters. Required: org_domain.
- **Create a Tavio user** (Create). Create a new user in a tavio organization and send them an invitation. Returns: id, email, roles, status, lastName, username, firstName, mfaRequired, mfaConfigured, invite_expired. Required: org_domain, email, roles, lastName, firstName.
- **Get single Tavio user by ID** (Get). Get a tavio user by id from an organization. Returns: id, lastName, firstName, message. Required: org_domain, id.
- **Update a Tavio user by ID** (Update). Update a tavio user's name fields by id within an organization. Returns: id, lastName, firstName. Required: org_domain, id. At least one of lastName or firstName must be provided in the request body.
- **Delete a Tavio user by ID** (Delete). Delete a tavio user from an organization by id. This action is irreversible. Returns: message. Required: org_domain, id.
- **List all Tavio environments** (List). List all tavio environments in an organization with optional filter and sort support. Returns: id, name, region. Required: org_domain.
- **Get single Tavio environment by ID** (Get). Retrieve a specific tavio environment by its domain name (envDomain). Returns: id. Required: org_domain, id.
- **Delete a Tavio environment by ID** (Delete). Delete a specific tavio environment by its domain name. This action is irreversible. Returns: message. Required: org_domain, id.
- **Create a Tavio customer** (Create). Create a customer in tavio, provisioning staging and production environments under the specified organization domain. Returns an empty JSON object on successful creation (201). Required: org_domain, name, region.
- **List all Tavio solutions** (List). List all solutions for a tavio organization, with optional filtering and sorting. Returns id and solution-specific attributes for each solution. Required: org_domain.
- **Get single Tavio solution by ID** (Get). Retrieve a specific tavio solution by its UUID. Returns id and solution-specific attributes. Required: org_domain, id.
- **List all Tavio workflows** (List). List all workflows in a tavio environment, always referencing the latest version of each. Returns: id, title, version, createdAt, updatedAt, description. Required: org_domain, env_domain.
- **Create a Tavio workflow** (Create). Create a new workflow in a tavio environment. The title must be unique within the environment. Returns the created workflow including id, title, version, description, edges, nodes, packs, context, createdAt, and updatedAt. Required: org_domain, env_domain, edges, nodes, packs, title, context.
- **Get single Tavio workflow by ID** (Get). Get a tavio workflow by id. Always returns the latest version. Returns the full workflow object including id, title, version, description, edges, nodes, packs, context, createdAt, and updatedAt. Required: org_domain, env_domain, id.
- **Update a Tavio workflow by ID** (Update). Replace the content of an existing tavio workflow by id. All provided fields overwrite current values. Returns the updated workflow including id, title, version, description, edges, nodes, packs, context, createdAt, and updatedAt. Required: org_domain, env_domain, id, edges, nodes, packs, title, context.
- **Delete a Tavio workflow by ID** (Delete). Delete a tavio workflow by id. This action is irreversible. Returns an empty 204 response on success. Required: org_domain, env_domain, id.
- **List all Tavio configs** (List). List all configurations for a tavio environment. Returns: id, name, pack, category, description. Required: org_domain, env_domain.
- **Create a Tavio config** (Create). Create a new configuration for a tavio environment. Returns: id, name, pack, category, description, field_name_01, field_name_02, field_name_03, field_name_04. Required: org_domain, env_domain, pack, type, category.
- **Get single Tavio config by ID** (Get). Retrieve a specific configuration from a tavio environment by id. Returns: id, name, pack, category, description, field_name_01, field_name_02, field_name_03, field_name_04. Required: org_domain, env_domain, id.
- **Update a Tavio config by ID** (Update). Update an existing configuration in a tavio environment. All body fields are optional but at least one must be provided. Returns: id, name, pack, category, description, field_name_01, field_name_02, field_name_03, field_name_04. Required: org_domain, env_domain, id.
- **Delete a Tavio config by ID** (Delete). Delete a configuration from a tavio environment by id. Returns: message. Required: org_domain, env_domain, id.
- **List all Tavio deployments** (List). List all deployments for a tavio customer environment. Returns: id, title, status, createdAt, updatedAt, deployedAt, deployedBy, bundleReleaseId. Required: org_domain, env_domain. Results can be refined using the filters and sort query parameters.
- **Create a Tavio deployment** (Create). Create a new deployment for a tavio customer environment. Returns the created deployment object including id, title, status, configs, workflows, createdAt, updatedAt, deployedAt, deployedBy, and bundleReleaseId. Required: org_domain, env_domain, bundleReleaseId.
- **Get single Tavio deployment by ID** (Get). Get a single tavio deployment by id. Returns the full deployment object including id, title, status, configs, workflows, createdAt, updatedAt, deployedAt, deployedBy, and bundleReleaseId. Required: org_domain, env_domain, id.
- **Update a Tavio deployment by ID** (Update). Update a specific tavio deployment's configuration and workflow attributes by id. Returns the updated deployment object including id, title, status, configs, workflows, createdAt, updatedAt, deployedAt, deployedBy, and bundleReleaseId. Required: org_domain, env_domain, id. All body fields are optional but at least one must be provided.
- **Create a Tavio deployment enable** (Create). Enable (deploy) a specific deployment in tavio, transitioning it to an active deployed state. Returns: id, createdAt, updatedAt, deployedBy. Required: org_domain, env_domain, deployment_id, and deployedBy.
