Skip to main content
Glama
rimysore

standupbot-mcp

by rimysore

StandupBot MCP

"What did I even do yesterday?" — solved.

StandupBot is a free Model Context Protocol server that connects Claude to your GitHub activity. Ask Claude for your standup and it pulls the last 24h of commits, PRs, reviews, and issues — formatted and ready to paste into Slack.


Tools

Tool

What it does

get_standup

Your personal standup — commits, PRs, reviews, issues in the last N hours

get_standup_multi

Team standup — same thing for a list of GitHub usernames

get_repo_pulse

Recent activity on any public or private repo


Related MCP server: git-standup-mcp

Quick Start

1. Get a GitHub token

Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic).

Create a token with these scopes:

  • repo (to see private repos)

  • read:user

2. Add to Claude Code

Add this to your Claude Code config (~/.claude/claude_desktop_config.json for Claude Desktop, or .claude/settings.json for Claude Code CLI):

{
  "mcpServers": {
    "standupbot": {
      "command": "npx",
      "args": ["-y", "standupbot-mcp"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

3. Ask Claude

Give me my standup for the last 24 hours. My GitHub username is alice.
Generate a team standup for usernames: alice, bob, carol
What's been happening in the facebook/react repo today?

Example Output

## Daily Standup — @alice
_Last 24h of GitHub activity_

### Commits
- **alice/my-app** (a3f9c12) — fix: resolve race condition in auth middleware
  https://github.com/alice/my-app/commit/a3f9c12

### PRs Opened
- **alice/my-app** (#42) — feat: add OAuth2 support
  https://github.com/alice/my-app/pull/42

### PRs Reviewed
- **team-org/backend** (#99) — refactor: extract payment service
  https://github.com/team-org/backend/pull/99

Environment Variables

You can set GITHUB_TOKEN as an env var in your MCP config and omit it from tool calls:

"env": { "GITHUB_TOKEN": "ghp_..." }

The tool will fall back to the env var automatically if no token is passed.


Privacy

  • Your token is stored only in your local config file.

  • StandupBot makes direct HTTPS calls to api.github.com — no proxy, no telemetry, no servers.

  • 100% open source. MIT license.


License

MIT

Available Tools

3 tools
get_repo_pulseA

Get recent activity (commits, PRs, issues) on a specific repository for the last N hours.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesRepository name, e.g. 'react'
ownerYesRepository owner, e.g. 'facebook'
hours_backNoHow many hours back to look. Default 24.
github_tokenYesGitHub personal access token.

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as authentication requirements (though github_token param implies auth), rate limits, pagination, or what happens when no activity is found. The description only states what the tool does, not its behavioral characteristics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant words. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no output schema, and no annotations, the description is adequate but lacks details on output structure, error handling, and pagination. It provides the core purpose but leaves the agent needing to infer response format from the description of activity types.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all parameters described. The description adds value by specifying the types of activity returned (commits, PRs, issues), which is not in the schema. This provides context beyond the parameter names and descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get', the resource 'recent activity on a specific repository', and the scope 'for the last N hours'. It distinguishes from sibling tools (get_standup, get_standup_multi) which focus on user standup summaries, implying this tool is for repository-level activity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: getting recent activity on a repo. However, it does not explicitly state when to use this tool versus alternatives (e.g., get_standup for user-specific activity) or provide any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_standupB

Fetch your GitHub activity for the last N hours and format it as a standup report — commits, PRs opened/merged, reviews, and issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesYour GitHub username, e.g. 'torvalds'
hours_backNoHow many hours back to look. Default 24.
github_tokenNoGitHub personal access token. If omitted, uses the GITHUB_TOKEN env var set in MCP config.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions the tool fetches and formats activity, but lacks details on authentication requirements (beyond parameter hints), rate limits, error handling, or side effects. The read-only nature is implied but not stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-formed sentence that effectively conveys the tool's purpose. It is concise and front-loaded, though minor rephrasing could improve scanability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's basic function but lacks details on output format, error scenarios, and explicit usage guidelines compared to siblings. Given the absence of an output schema, the description should better explain what the standup report looks like.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters are fully described in the schema (100% coverage). The description adds the context of 'format as a standup report', which is not in the schema, but does not provide additional semantics for individual parameters beyond what the schema already offers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool fetches user's GitHub activity for a standup report, listing specific items (commits, PRs, reviews, issues). The verb 'fetch' and resource 'your GitHub activity' are specific, and the scope (personal) helps distinguish from sibling tools like get_repo_pulse (repo-level) and get_standup_multi (multi-user).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for personal standup reports but does not explicitly state when to use this tool versus alternatives (get_repo_pulse, get_standup_multi). No when-not or prerequisite conditions are mentioned, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_standup_multiB

Fetch GitHub activity for multiple users (e.g. your whole team) and return a combined standup report.

ParametersJSON Schema
NameRequiredDescriptionDefault
usernamesYesList of GitHub usernames to include, e.g. ['alice', 'bob']
hours_backNoHow many hours back to look. Default 24.
github_tokenYesGitHub personal access token with read access to each user's events.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose behaviors like rate limits, authentication requirements (though github_token is in schema), or what happens for users with no activity. Return format of report is not described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, concise. Could benefit from bullet points or structured format for clarity, but no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, description does not explain the report's return format or contents. Adequate but incomplete for an agent to fully understand what it gets.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions. Description adds minimal value beyond schema, only providing an example of usernames. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Fetch', resource 'GitHub activity for multiple users', and outcome 'combined standup report'. It distinguishes from siblings: get_standup likely does single user, get_repo_pulse does repo-level.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when/when-not or alternatives mentioned. Implies usage for team standup but lacks guidance on when to prefer over sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.1
    • First observedget_repo_pulse
    • First observedget_standup
    • First observedget_standup_multi

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct scope: single repo, single user, or multiple users. No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent 'get_' prefix followed by descriptive noun_phrase pattern.

Tool Count5/5

Three tools cover the essential use cases for a standup bot without being excessive or insufficient.

Completeness4/5

The set covers repo-level pulse, individual standup, and team standup. A minor gap might be the lack of configurability beyond time range, but core functionality is complete.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Connects Claude Desktop to GitHub repositories, enabling users to perform git operations and GitHub API interactions through natural conversation.
    222
    -
  • A
    license
    B
    quality
    D
    maintenance
    Generates standup reports from git history by analyzing recent commits across configured repositories. Enables users to query their development activity, such as what they worked on yesterday or over multiple days, through natural language interactions with Claude.
    2
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables Claude to query GitHub repositories in plain English, fetching recent activity, release notes, issue triage, and health summaries via the GitHub API.
    -