# Coviu MCP connector

The Coviu connector brings telehealth sessions, participants, waiting room calls, intake form submissions, audio recordings and session summaries to Claude, ChatGPT, Cursor and the Elaichi Agent, so each person works with Coviu as themselves and every action is logged.

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

## Facts

| | |
| --- | --- |
| Application | Coviu |
| Category | Video |
| AI tools | 19 |
| Authentication | App credentials |
| 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 Coviu is connected

- Create a Coviu session for tomorrow's intake clinic.
- List all Coviu waiting queue calls right now.
- Who joined yesterday's Coviu sessions as a participant?

## Connect Coviu in Elaichi

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

1. Open Connections, choose Add connection, and pick Coviu.
2. Optionally set Share with, then press Connect.
3. Paste your Coviu app credentials. Coviu authenticates the app rather than a person. One person supplies the credentials once, and everyone else works through Share with.

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

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

### Book the consult and invite the patient

Reception. Create the Coviu session for tomorrow's appointment, add the patient and the treating clinician as participants, and fix the time if the patient calls back to move it.

### Read the session summary before charting

Clinicians. Pull up the summary and audio recording for the consult you just finished, then ask for the main points before you write the clinical note.

### See who is waiting right now

Front desk. Ask which patients are sitting in the Coviu waiting area and how long they have been in the queue, so nobody is left unattended while the clinic runs late.

### Check whether the forms came back

Intake. List the intake form submissions for this week's new patients and open the attached files, so the clinician has the history before the call starts.

### Tidy up the week's sessions

Practice management. List every session scheduled for the coming week, correct the ones with the wrong clinician or time, and remove the bookings that were cancelled by phone.

### Answer a records request quickly

Quality and compliance. Find a specific past call, retrieve its recording and summary, and confirm exactly who was a participant when a complaint or audit lands on your desk.

## Frequently asked questions

### How do I connect Coviu to Claude?

Connect Coviu in Elaichi by entering your Coviu app credentials, which come straight from your Coviu account. There is no OAuth application to register and no client ID or secret to generate. Then open Claude, go to Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp as the endpoint. Sign in as yourself and Coviu is ready to use.

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

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

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

An agent connected to Coviu can create, look up, change and cancel telehealth sessions, and add or remove the patients and clinicians attending them. It can tell you who is in the waiting room and the waiting queue, open a specific call, and list intake form submissions with their attached files. It can also fetch the audio recording and the written summary for a finished Coviu session and answer questions about them.

### Does connecting Coviu give the AI access to every clinic and every consult?

No. Each person signs in to Coviu as themselves, so the agent only sees the sessions, participants, submissions and recordings that person can already see in Coviu. Elaichi can narrow that further, for example to reading only, but it can never widen access beyond what Coviu already grants that person.

### Can my team share one Coviu connection?

Yes. One person connects Coviu in Elaichi and shares it with a team, and nobody else ever handles the Coviu credentials. Each teammate still signs in as themselves, so the audit log names the actual person who booked, changed or cancelled a Coviu session.

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

Yes. Restrictions in Elaichi apply per action, so you can allow reading Coviu sessions and waiting room calls while blocking the ability to delete a session or remove a participant. A blocked action is never shown to Claude, ChatGPT or any other client at all, so no prompt, however worded, can reach it.

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

Offboarding a person in Elaichi ends their access to Coviu through every client at once. If they set up a shared Coviu connection, it keeps working for everyone else on the team. When you want Coviu gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor and every other client together.

## All 19 Coviu tools

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

- **Create a Coviu session** (Create). Create a new coviu session. Returns: session_id, session_name, start_time, end_time, participants. Required: session_name, start_time, end_time. Optionally supply participants and feature_flags to customise the call interface (exit-url, return-url, disable-menu, enforce-participant-uniqueness, etc.).
- **List all Coviu sessions** (List). List coviu sessions. Returns per session: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Filter by start_time, end_time, order, state, include_canceled, or deleted_participants.
- **Get single Coviu session by ID** (Get). Get a single coviu session by id. Returns: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Required: id.
- **Update a Coviu session by ID** (Update). Update a coviu session by id. Returns: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Required: id.
- **Delete a Coviu session by ID** (Delete). Cancel a coviu session by id. Returns: ok (boolean confirming the cancellation succeeded). Required: id.
- **List all Coviu participants** (List). List coviu participants for a session. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: session_id.
- **Create a Coviu participant** (Create). Add a participant to a coviu session. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: session_id. Cannot add to a session that has already finished.
- **Get single Coviu participant by ID** (Get). Get a single coviu participant by id. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: id.
- **Update a Coviu participant by ID** (Update). Update a coviu participant by id. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: id.
- **Delete a Coviu participant by ID** (Delete). Cancel a coviu participant by id. Returns: ok. Required: id. Cannot cancel a participant belonging to a session that has already started.
- **List all Coviu waiting calls** (List). List currently waiting calls in coviu for a specific team. Returns: callId, teamId, peerId, joinedAt, lastActivityAt, callType, and additional call state fields including socketId, sessionId, details, and transfer/hold timestamps. Required: team_id.
- **List all Coviu waiting queue calls** (List). List currently waiting calls for a specific coviu queue. Returns each call record including callId, teamId, peerId, callType, joinedAt, lastActivityAt, and additional lifecycle timestamps such as answeredAt, transferredAt, and finishedAt. Required: team_id, waiting_queue_id.
- **Get single Coviu call by ID** (Get). Get a single waiting area call in coviu by its call ID within a given team. Returns: callId, teamId, peerId, callType, joinedAt, lastActivityAt, and additional timing/state fields such as answeredAt, finishedAt, transferredAt, and startedAt. Required: team_id, id.
- **List all Coviu collections** (List). List all collections belonging to a Coviu team. Returns: id, team_id, name, collection_reference, read_setting, delete_setting, and created_at for each collection. Required: team_id.
- **List all Coviu submissions** (List). List submissions for a Coviu collection. Returns: item_submission_id, session_id, secure_collection_id, submitting_user_id, created_at, updated_at, locked_at, collection_location, and action_status. Required: team_id, collection_id. Optionally filter by date range (from/until), a filter string, and sort via order/orderBy.
- **Get single Coviu submission by ID** (Get). Get a single Coviu submission by id. Returns the full submission detail including item_submission_id, session_id, secure_collection_id, submitting_user_id, created_at, updated_at, locked_at, action_status, collection_location, and an array of associated files (each with id, metadata, size, created_at, updated_at). Required: team_id, collection_id, id.
- **Get single Coviu submission file by ID** (Get). Get the binary video recording file for a specific submission file in Coviu. Returns a video/webm binary stream of the recording (HTTP 200 or 206 partial content). Required: team_id, collection_id, submission_id, id.
- **Get single Coviu audio recording by ID** (Get). Get the binary audio recording file for a specific coviu collection submission. Returns a binary audio/webm file stream (not a JSON object). Required: id, team_id, collection_id.
- **Get single Coviu session summary by ID** (Get). Get the summary of a coviu session by id. Returns session details including session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, and participants. Required: id.
