Cosmo Docs
Integrations

Managing Connections

Managing and configuring your connected integrations.

Once connected, you can manage your integrations from Customize → Integrations. Each integration can be enabled/disabled per workspace and configured with workspace-specific settings.

Each member connects their own account

Every integration you connect belongs to you — not the organization. If a teammate wants to use the same integration, they need to connect it themselves from their own Customize → Integrations.

This used to work differently for some integrations: an admin could connect once and everyone in the org would share that single connection. That's no longer the case. Each person now authorizes their own account and credentials, so:

  • Disconnecting an integration only removes your connection — it never affects your teammates.
  • No one can see or use another member's connected account.
  • If you were previously relying on a teammate's shared connection, you'll need to connect it yourself.

Renaming a connection

If you have more than one account of the same integration connected — a work Notion and a personal one, say — the account label is what tells them apart in Customize → Integrations. Click the label on a connected integration to rename it in place. The new name takes effect immediately and does not affect the underlying connection or its credentials.

Connecting more than one account

You can connect several different accounts to the same integration — a work and a personal Notion, two Microsoft 365 tenants, two GitHub accounts. You can't connect the same account twice. If you sign in with an account that's already connected, Cosmo stops before saving anything and tells you which connection already uses it:

This account (ada@example.com) is already connected as "Work". Use that connection, or sign in with a different account to add another.

To add a second account, use Add another and sign in as that account. If your browser signs you straight back in as the first one, sign out of the provider in the browser first, or use a private window.

A few notes:

  • Google allows one connected account per person, covering both Drive and Gmail. To switch accounts, disconnect it and connect the other one.
  • Cosmo checks which account you signed in with for Google, Microsoft 365, Notion, ClickUp, Asana, GitHub, Slack and, where your Atlassian sign-in allows it, Jira. When Cosmo can't determine the account — every time for Pylon and custom MCP servers, which never tell Cosmo who signed in, and occasionally for Jira, depending on how your Atlassian sign-in resolves — the check is skipped rather than blocking you: the connection still goes through exactly as it would have before this check existed.
  • Connections made before this check existed are recognised too: Cosmo records which account a Google, Microsoft 365 or ClickUp connection belongs to the next time you open Customize → Integrations. Older Notion, Asana, GitHub, Slack and Jira connections are recognised once you reconnect them. Recognising a connection this way never fails or removes it — an older connection Cosmo hasn't recognised yet works exactly as it did before.
  • Cosmo never removes a connection for you. If you already have two connections to the same account, disconnect the one you don't need. Until you do, you can still reconnect either of them with that same account.

API key validation

For integrations that use an API key, Cosmo verifies the key by opening a real connection with it before the integration is marked connected. If the key is wrong, you'll see a clear error explaining the connection could not be established, and the integration stays disconnected until you enter a working key — an invalid key is never silently accepted.

A custom MCP server that needs no authentication is checked the same way: Cosmo opens a connection to it before adding it, and if the server does not answer you see why, and nothing is added.

When Reconnect appears

Reconnect is only shown on a connection that actually needs it — an authorization that has lapsed, a connector reporting an error, or one that has been disconnected. A healthy connection shows no Reconnect control at all — including one you have only just added, whether or not it is marked This device.

It works the same way for every integration, including ones marked This device. What happens when you click it depends on how the integration signs in:

  • Integrations you sign in to — Google, Microsoft 365, Notion, ClickUp, Jira/Atlassian, Slack, Pylon, GitHub, and custom MCP servers that use OAuth — open the provider's sign-in again in your browser.
  • Custom MCP servers that use an API key ask you for a key. Cosmo checks it against the server first, so a wrong key is reported straight away and never replaces the one on file.
  • Custom MCP servers with no sign-in are simply tried again. If the server answers, the connection is restored; if it is still unreachable, you'll see why.

The one exception is a connection added from the Cosmo CLI on this computer: the app lists it but doesn't manage it, so it has no Reconnect button. Manage it from the CLI instead.

For Google, Notion and ClickUp, reconnecting always re-authorises the same account the connection was set up with. If the sign-in you complete belongs to a different account, Cosmo refuses it and leaves the existing connection untouched — you'll see a message naming the account it expected and the one it saw instead. If Cosmo couldn't confirm which account you signed in with (a provider hiccup, for example), you'll be asked to try reconnecting again; nothing is changed in either case. The same applies if the account you sign in with is one another of your connections to that integration already uses: Cosmo tells you which connection has it and keeps the one you were reconnecting exactly as it was. This covers GitHub, Slack and Jira as well as the integrations Cosmo signs in to itself. To use a different account for an integration, disconnect it and connect the new account fresh, the same as adding any other integration.

When an authorization expires

Every OAuth-based connector — Google (Drive and Gmail), Microsoft 365, Notion, ClickUp, Jira/Atlassian, Slack, Pylon, and any custom MCP server that uses OAuth — hands Cosmo a token with a limited lifetime. Cosmo renews that token silently in the background for as long as the provider allows. Renewal stops working when the token is revoked on the provider's side, the grant is removed from your account, the refresh window lapses, or the connection is missing a permission the action needs.

How Cosmo notices

There are two moments Cosmo checks, and between them you should never be the last to know:

When you open Customize → Integrations. Cosmo asks each provider whether your authorization is still valid, rather than reporting the last time it happened to connect. This is the check that matters most: a Google or Microsoft 365 connection starts up perfectly well with a dead authorization — nothing about starting it touches Gmail or Outlook — so without this the page could show Connected for an integration that could not actually do anything.

Each connector is checked independently. One expired Google authorization has no effect on how Microsoft 365 is shown, and a provider that is briefly unreachable leaves its connector's status exactly as it was rather than reporting a problem that may not exist.

When an action fails mid-conversation. If a tool call turns out to be the first thing to discover the authorization is gone, Cosmo updates the connector's status there and then, so the Integrations page agrees with what you just saw in chat.

What you see

  • The connector is badged Session expired in Customize → Integrations, with the reason underneath — "Authorization expired. Reconnect this integration to restore its tools."
  • For connectors whose own provider handles authorization — Jira/Atlassian, Slack, Pylon, and custom MCP servers that use OAuth — a dismissible Reconnect required notice also appears in the app, with a Reconnect button, whether the authorization lapsed before you started chatting or partway through a reply.
  • Your chat stays where it is. Cosmo does not navigate you out of a conversation to the provider's sign-in page. If you ask for something that needed that connector, Cosmo tells you it is disconnected and offers a one-click connect card rather than fabricating an answer.

Restoring it

Reconnect the integration from Customize → Integrations. Reconnecting is always something you start: Cosmo opens your browser for a provider's authorization only because you asked it to, never on its own from a chat. Your existing chats keep working throughout, and the connector's tools become available again on your next message.

A connector in this state is only missing its own tools. Every other integration, and everything Cosmo can do without an integration, continues to work.

Session expired is different from a plain Error badge. Session expired means signing in again will fix it. A plain Error — an unreachable server, a rejected API key — usually needs the underlying problem fixed first: Reconnect then retries the server, or takes a new API key, once it has been.