Connectors

Update Connector

Changed on

Update the name, endpoint, or auth of a connector. Only the fields you send change.

Changing server_url takes effect on the next conversation - the agent connects to whatever the connector currently points at.

patch/v2/connectors/{connector_id}

Request

  • Base URL
    https://tavusapi.com
  • URL
    https://tavusapi.com/v2/connectors/{connector_id}
  • Auth
    API key in header x-api-key

Request body

namestring
server_urlstring
auth_configobject

Replaces the stored auth. Send the full object, not a partial one.

Example request

{
  "name": "Linear (production)",
  "server_url": "https://mcp.linear.app/mcp",
  "auth_config": {
    "type": "bearer",
    "token": "sk-..."
  }
}

Response

Connector updated

connector_idstring

The unique identifier of the connector. Use this everywhere a connector is referenced, including layers.mcp.connectors on a PAL.

owner_idinteger

The account that owns the connector.

team_idinteger nullable

Team the connector belongs to, when applicable.

namestring

Human-readable name. Also the basis of the label the background agent sees for this service.

sourcestring

Connector kind. mcp today.

server_urlstring

The MCP server endpoint.

auth_configobject

How Tavus authenticates to the server, with secrets removed. See the create request for the accepted shapes.

selected_tool_namesstring[] nullable

Always null on connectors created today, and not settable: the create and update endpoints reject the field. A leftover from the removed tool importer - tool scoping is a per-PAL decision, so use layers.mcp.connector_tools.

oauth_status'none' | 'pending' | 'linked' | 'needs_reauth'

none for non-OAuth connectors. pending once an authorize URL has been issued but the flow is not finished. linked when Tavus holds a working token. needs_reauth when the refresh token stopped working - send the customer through Reconnect OAuth.

oauth_scopesstring[] nullable

Scopes granted by the authorization server.

access_token_expires_atstring nullable

When the current access token expires. Tavus refreshes it automatically while the connector stays linked.

last_indexed_atstring nullable

When tools were last imported from the server. null if never indexed.

last_index_errorstring nullable

Why the last import failed, if it did.

created_atstring
updated_atstring

Example response

{
  "connector_id": "c8-58ea0f6420b2",
  "owner_id": 4309,
  "team_id": null,
  "name": "Linear",
  "source": "mcp",
  "server_url": "https://mcp.linear.app/mcp",
  "auth_config": {
    "type": "oauth2"
  },
  "selected_tool_names": null,
  "oauth_status": "linked",
  "oauth_scopes": [
    "read",
    "write"
  ],
  "access_token_expires_at": "2026-08-18T09:14:00",
  "last_indexed_at": "2026-08-17T18:20:11",
  "last_index_error": null,
  "created_at": "2026-08-17T18:02:56.838918",
  "updated_at": "2026-08-17T18:20:11.563911"
}

Changes