# Connected apps

Let bots work in the tools you use, like Gmail, Google Calendar, GitHub, Notion, and Slack. Connect, check, and disconnect apps.

Canonical page: https://themachine.myapps.ai/docs/desktop/integrations/connected-apps

**Connected apps** let bots work in the tools you already use. Connect Gmail,
and a bot can read and draft email. Connect GitHub, and it can work with your
code. Connect your calendar, and it can check your schedule.

There are hundreds of apps to choose from.

## Connect an app

![The Connected apps window, with apps to connect](/images/docs/desktop/connected-apps.webp)

### Open Connected apps

At the bottom of the sidebar, open **Tools → Connected apps**. A window
titled **Plugins** opens on its **Connected apps** tab.
### Pick the bot

Apps connect to **one bot's project**. In the **Project** menu at the top,
pick the bot that should use the app. It starts on the bot you have open.
### Find the app

Browse **Marketplace**, or type in **Search apps**.
### Click Connect

Click **Connect** on the app, then **Continue**.
### Sign in and approve in your browser

Your browser opens the app's sign-in page. Sign in and approve what Machine
can access. Machine Desktop shows **Finish setup in your browser** while you
do this.
### Come back

Return to Machine Desktop. The app shows as connected within a couple of
minutes. If it takes longer, click **Check status**.

## See and remove connected apps

![Searching for Gmail and starting to connect it](/images/docs/desktop/anim-connect-app.webp)

Click **Connected** at the top of the window to see the apps connected to the
bot chosen in **Project**. The number next to it is how many there are.
Expand one and click **Disconnect** to remove it. You're asked to confirm.

To check which apps a particular bot can reach, open its settings and go to
**Access → Connected apps**. You can also start connecting from there with
**Connect an app…**, which opens this window. If a bot says it can't reach an
app you connected, check this list first: you may have connected the app to a
different bot.

> **One bot, or several?**
> Because apps connect to one bot's project, connect Gmail to *Inbox* and only
> *Inbox* can use it. If *Ops* needs Gmail too, pick *Ops* in **Project** and
> connect it there as well.

## When a bot asks you to connect an app

Often you don't need to go looking. If a bot needs an app that isn't
connected yet, it shows a card in the chat, like **"Scout needs Gmail for
this"**, with a note that you sign in on the app's own page and Machine never
sees your password.

1. Click **Connect Gmail**. The app's sign-in page opens in your browser.
2. Sign in and approve. If you closed the page, click **Open Gmail again**.
3. Back in the chat, click **Done — tell it to carry on**. This puts *"I've
   connected Gmail — carry on."* in your message box, and the button says
   **Ready to send**.
4. Send it. The bot picks up where it left off.

## Use a connected app

Once an app is connected, just ask:

> Summarize my unread emails from today and draft replies to anything urgent.
> Don't send anything.

> What meetings do I have tomorrow? Find a free hour for a call.

> Open an issue in our GitHub repo for the login bug we just found.

> Add a page to our Notion wiki with the notes from this conversation.

**Tip:** tell bots whether they may **send** or **post** things, or only
**draft** them. Put your rule in the bot's [Soul](/docs/desktop/bots/soul):
*"Never send email; always leave drafts for me."*

Machine helps too: when a bot is about to send, post, or delete something in
a connected app, it asks for your OK first, even on **Approve for me**, unless
you change that in **What needs your OK**. See [Approvals](/docs/desktop/models/approvals#what-needs-your-ok).

## Use it in automations

Connected apps make [automations](/docs/desktop/automations/overview) much
more useful, for example a morning summary of your inbox and calendar.

## Troubleshooting

| Problem | Try |
|---|---|
| The app never shows as connected | Click **Check status**. Make sure you finished approving in the browser. |
| A bot says it can't reach an app | Check **Bot settings → Access → Connected apps**. The app may be connected to a different bot: pick this bot in **Project** and connect it. Or disconnect and connect again. |
| An automation that uses an app fails | The app may need reconnecting. Disconnect and connect again, then **Run now**. |

You can also manage connections on the Machine web app.
