Generate your daily standup from real GitHub, Jira, Linear, and Slack activity.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Generate your daily standup from what you actually did, across GitHub, Jira, Linear, and Slack.
Every standup, you stop and reconstruct yesterday from memory: which commits, which PR, which ticket you moved, that Slack thread where you said you were stuck. The work is already recorded across your tools. Re-typing it is the chore everyone hates, so updates come out vague ("worked on the thing") and real blockers go unsaid.
standup-mcp reads that activity back and writes the draft for you. You ask your AI assistant "what should I say at standup today?" and it answers from your real GitHub, Jira, Linear, and Slack activity: grouped by work item, in concrete deltas, with blockers it noticed on its own.
It is a standard Model Context Protocol server, so it works in any MCP client (Claude, Cursor, Cline, and more) on any model. It is local and read-only: nothing about your activity leaves your machine except the calls to those tools' own APIs, and it needs no AI API key of its own. The host client supplies the model.
The server ships with a realistic demo dataset and runs against it automatically when no credentials are set, so you see the output before connecting anything:
That prints a full standup from a synthetic day across all four tools. Here is the headline tool:
Notice the GitHub commits, the GitHub PR, and the Jira move all collapsed under PROJ-412, and the blocker was lifted from a Slack message on its own. Nobody typed any of that.
(Running npx -y standup-mcp with no flag starts the MCP server on stdio, which is what an MCP client launches. Use --demo to see output in a plain terminal.)
Five tools. Every one defaults to the last working day, and Monday automatically reaches back across the weekend, so you rarely pass arguments.
| Tool | What you get |
|---|---|
standup_draft | Your standup: Yesterday / Today / Blockers, grouped by work item, in concrete deltas. The answer to "what should I say at standup?" |
blocker_scan | Everything blocking you, ranked by severity, fused from explicit "blocked / waiting on" language, PRs awaiting review, stalled in-progress tickets, and help requests. |
weekly_summary | A week of activity rolled into Shipped vs In progress, with reviews and totals. For 1:1s, weekly status, and self-reviews. |
activity_digest | A chronological "what actually happened" across all tools, newest first, grouped by day. |
list_sources | Which sources are wired, or that you are on demo data. |
You talk to it in plain language through your AI client:
This is the part most tools gloss over. standup-mcp is built so that using it does not feel like installing surveillance on yourself:
Set any subset. Whatever you configure, it uses; with nothing set, it stays in demo mode. Restart the server after changing these.
| Variable | Source | Notes |
|---|---|---|
GITHUB_TOKEN | GitHub | Read-only PAT. Reads your commits, PRs, and reviews. |
JIRA_BASE_URL JIRA_EMAIL JIRA_API_TOKEN | Jira | Cloud site, account email, and an API token. Reads your ticket moves. |
LINEAR_API_KEY | Linear | A personal API key. Reads your issue state changes and comments. |
SLACK_TOKEN | Slack | A user token (xoxp) with search:read scans your own messages for blocker language. With a bot token instead, also set SLACK_CHANNELS (comma-separated channel ids) since bots cannot search. |
STANDUP_NAME | optional | Display name for the standup's owner. Without it, the GitHub handle is used. |
Verify your connections before wiring it into a client:
It prints, per source, the authenticated identity or a clear error.
standup-mcp speaks the Model Context Protocol, so any MCP-capable client can use it, whichever model is behind it: Claude Desktop, Claude Code, Cursor, Cline, Continue, Zed, Windsurf, and more. The server uses no AI API key of its own.
Add this to claude_desktop_config.json (Settings, Developer, Edit Config), then restart Claude Desktop:
Leave the env block out entirely to run in demo mode first. Include only the sources you use.
These read the same mcpServers JSON as Claude Desktop, in the client's own MCP config. Use the block above. The server is identical; only the model driving the client differs.
The design goal is a clean seam between each tool and the standup logic.
ActivityEvent. Nothing downstream knows which tool a fact came from, which is exactly what lets it group by work item across tools.No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/standup-from-your-activity)<a href="https://allmcps.com/mcp/standup-from-your-activity"><img src="https://allmcps.com/api/badge/standup-from-your-activity?style=directory" alt="Standup from your activity on AllMCPs" /></a>