Blog/How to connect Claude or ChatGPT to your Slack standups: 3 ways, and what each one can see
How to connect Claude or ChatGPT to your Slack standups: 3 ways, and what each one can see
The asyncmate team · October 17, 2026 · Updated October 23, 2026 · 10 min read
"Connect Claude to my standups" means one of two things, and the setup is different for each. Either you want your AI tool to answer questions about what the team reported ("what is blocking us this week?", "what did I ship this month?"), or you want it to write your own update for you from the work it can see in GitHub and Jira. Both now run over MCP, the standard AI tools use to read data from other apps, and both take about ten minutes.
This guide covers three ways to do it: Slack's own MCP server, the MCP server of the standup bot you already use, and a local server that drafts your standup from your activity. For each, the question that matters more than the setup: what can the AI see once it is connected, and who approved that?
Full disclosure: we make asyncmate, a standup bot with an MCP server of its own. It appears in the second method, with the same scrutiny as the others, and we say where a different route is the better fit.
Which route you want
| Route | What the AI reads | Direction | Who approves it | Cost |
|---|---|---|---|---|
| Slack's MCP server | Channel messages, threads, files, canvases, member lists | Reads and can post | A workspace admin, per MCP client | Your Slack plan, no extra charge documented |
| Your standup bot's MCP server | The standup answers the bot collected, structured by run and person | Reads; some bots also write | You, at sign-in; the bot's own plan rules | The bot's paid plan |
| A local standup server | Your own commits, pull requests, tickets and threads | Reads, then drafts your update | You, with tokens for each tool | Free, open source |
If the standup already lives in a bot, the second route gives the cleanest answers, because the AI gets "Ana, Tuesday, question 2" instead of a wall of channel messages. If the standup is a thread in a channel with no bot, Slack's own server is the only one that can see it. If what you actually want is to stop typing your update by hand, that is the third route, and it is a different product category from the first two.
1. Slack's own MCP server
Slack runs a hosted MCP server at https://mcp.slack.com/mcp. Its developer documentation lists Claude.ai, Claude Code, Perplexity and Cursor as clients that connect with no coding, and describes the tools: searching and reading messages, threads, files, canvases, user profiles, channel members, lists and reactions, plus sending or scheduling messages, creating channels, adding reactions and updating canvases. Sign-in is OAuth, and access follows the permissions of the person who signed in, so the AI sees the channels you can see.
Two things to know before you ask your admin for it.
- Admins decide, per client. Slack's docs put it plainly: "Workspace admins can approve and manage all MCP client integrations." Until your admin approves Claude (or Cursor, or Perplexity) as a client, the connection fails at sign-in. Slack also logs MCP activity in the audit log, which is the right design and worth telling your admin about when you ask.
- It reads conversations, not standups. The server has no idea which messages are standup updates. You tell the AI which channel and which day, and it reads the raw messages. For a team that posts updates as a thread under a scheduled message, that works well enough: "summarize yesterday's standup thread in #engineering". For a team spread across three channels and two time zones, the answers get vaguer with every channel you add.
The third thing is that the same server can post. A client approved to read can usually also send messages, create channels and edit canvases, because those tools sit on the same server. Check what your admin actually approved, and prefer a client that asks before it writes.
This is the right route when the standup is already in a channel and nobody wants another bot. It is the wrong route when answers from the channel keep missing people, because the AI can only read what was posted, and the people who skipped the thread are invisible to it.
2. Your standup bot's MCP server
A standup bot already holds the answers in a structure: which check-in, which run, which person, which question. An MCP server on top of that gives the AI the structure too, so "what did Jamie say about the migration this week?" is a filter, not a search. Two bots document one as of October 17, 2026.
The three servers are compared feature by feature in standup bot MCP servers compared; if what you want is a summary rather than a conversation, AI standup summaries in Slack covers the four ways to get one.
Geekbot
Geekbot announced a hosted MCP server in a July 9, 2026 post, replacing the local, API-key open-source server it had published in August 2025. The hosted one is OAuth-secured with "no API key to paste into a config file", lists ChatGPT, Claude.ai, Claude Code, Cursor and Codex as clients, and says any MCP client can connect to the same endpoint. The tools read standups, reports and polls, and also write: posting, editing and deleting reports, creating standups and polls. Geekbot says every write action needs human approval before it reaches the workspace. The post states the server is "available on Geekbot paid plan", so the free Starter plan is out.
asyncmate
asyncmate's MCP server is read-only. Six tools cover the check-ins you answer or manage, everyone's answers to them, a single run, the blockers tracked from them, the people who share a check-in with you, and your own logged hours. Sign-in is with the Slack or Microsoft account you already use in the workspace, so there is no asyncmate account to create and no key to copy. The workspace owner sees every connected tool under Settings and can disconnect it. It is part of Pro, and the MCP server page lists what it never reads: anonymous check-ins, check-ins with AI turned off, check-ins you aren't part of, anyone else's hours.
Here is the whole setup with Claude, which is the client we test most.
- In Claude, open Settings, then Connectors, and choose Add custom connector. Paste
https://asyncmate.com/api/mcp. - Claude opens a sign-in page from asyncmate. Sign in with Slack or Microsoft. The page names the tool that is asking, where its access goes and what it can read. Click Allow.
- Back in Claude, ask: "What is blocking my team this week?" Claude calls
list_blockers, and the answer names the blockers, their owners and the run they came from.
In Claude Code the first step is one command, claude mcp add --transport http asyncmate https://asyncmate.com/api/mcp, then /mcp to sign in. ChatGPT needs developer mode switched on in its settings before you can add a connector; VS Code takes the address through MCP: Add Server. The help guide has each client's steps.
What the answer looks like from Claude Code, after the sign-in:
asyncmate · list_blockers
Jamie is blocked on the billing migration, open since Thursday, and Marko offered to review it. Ana is waiting on staging access and has asked twice.
Source: Engineering standup, Tue
If you would rather not connect an AI tool at all, the same questions work from inside Slack: /asyncmate ask what is blocking the team this week? answers by DM with the check-in answers it used quoted underneath. That is Ask asyncmate, and it needs nothing installed beyond the bot.
3. A local MCP server that writes your standup from your tools
The opposite direction. Instead of the AI reading what the team reported, it reads what you did and drafts the report. The best-documented open-source example is standup-mcp on npm (version 0.1.0, published June 2026, MIT licence): a local, read-only MCP server that reads your GitHub commits and pull requests, Jira and Linear ticket moves and Slack threads, and answers "what should I say at standup today?" with a draft grouped by work item. It runs on your machine, needs no AI key of its own because the client supplies the model, and ships with a demo dataset:
npx -y standup-mcp --demo
That prints a full sample standup before you connect anything. Real use means a token for each of the four services, which is the trade: convenience against one more place your GitHub and Jira credentials live. It works in Claude, Cursor, Cline and any other MCP client.
This route is for the engineer who dreads reconstructing yesterday from memory, not for the lead who wants to know what the team is stuck on. The draft still has to be posted somewhere, and if that somewhere is a standup bot, you are back at route two for reading it.
What to ask once it's connected
The questions that work are the ones a careful teammate could answer from the standup history. A few that earn their keep:
- "What is blocking the team this week, and how long has each one been open?"
- "What did I report in the last two weeks? Group it by project."
- "What has anyone said about the billing migration since the start of the month?"
- "Who mentioned waiting on a review in the last five runs?"
- "Summarize Tuesday's run in three lines, with who didn't answer."
Questions that don't work, with any of the three routes: anything that asks the AI to rate or compare people. A standup is what someone chose to write, not a record of their work, and an AI that ranks teammates from it is confidently wrong. asyncmate's Ask declines those outright; with the other routes, it is on you not to ask.
Five things to check before you approve one
Whichever route you take, the AI tool gets whatever the server lets it read, under the AI vendor's terms. Before you approve, check:
- Can it only read what you could read yourself? A connection that is scoped to the person who signed in cannot leak a check-in you aren't part of. A bot token can.
- Does it write? Reading a standup is low stakes. Posting, editing or deleting one on your behalf is not. If the server writes, know whether the client asks first.
- Are anonymous answers out? An anonymous survey that becomes readable through an MCP tool is not anonymous. The server should return counts only, or nothing.
- Can an admin see and revoke it? Slack logs MCP activity and lets admins manage clients; a standup bot should show the owner every connected tool and let them disconnect it, with the revocation taking effect on the next request.
- Where does the data go? Whatever the AI reads goes to the AI vendor. Slack and the bots each process on their own terms, and the AI tool processes on its; the privacy policy of each should say so.
FAQ
Can Claude read my Slack standups without a bot?
Yes, through Slack's own MCP server at mcp.slack.com/mcp, once a workspace admin approves Claude as an MCP client. Claude then reads the channels and threads you can see, so you point it at the channel and the day. The answers are only as good as what was posted in the thread.
Do I need an API key to connect Claude to a standup bot? Not for the hosted servers. Geekbot's July 2026 server and asyncmate's both sign you in through OAuth in the browser; asyncmate uses the Slack or Microsoft account you already have. Geekbot's older open-source server from 2025 did take a personal API key, and most local tools such as standup-mcp take tokens for each service they read.
Does this work with ChatGPT too? ChatGPT connects to MCP servers through connectors created in developer mode; Geekbot lists ChatGPT via its app directory, and asyncmate's help guide covers ChatGPT's developer-mode connector. Slack's documentation lists Claude.ai, Claude Code, Perplexity and Cursor as no-code clients for its own server, and does not list ChatGPT.
Can the AI post my standup for me? Through Slack's server, yes, since it has send-message tools; through Geekbot's server, yes, with a human approval step; through asyncmate's, no, every tool is read-only. A local server such as standup-mcp drafts the text and leaves the posting to you.
Is this safe to turn on for the whole team? The safe version has three properties: each connection sees only what its owner could see, writes either don't exist or need approval, and the admin can list and revoke connections. Ask those three questions of whichever route you pick; the table at the top is where each one stands.