groupme-mcp: MCP server for GroupMe group management + messaging #157
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/basketball-api#157
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Feature
Lineage
project-groupme-westside→ Ticket 3 of 3 (depends on Ticket 1: groupme-sdk)Repo
forgejo_admin/groupme-mcp(to be created on Forgejo)User Story
As an admin (story:GM-2), I want to send announcements to all parents via GroupMe.
As an admin (story:GM-3), I want to see which parents haven't joined their team's GroupMe.
As a coach (story:GM-4), I want my team's parents and players in a GroupMe group.
As a platform operator (story:GM-5), I want to manage GroupMe via MCP tools.
Context
MCP server wrapping groupme-sdk so Betty Sue and agents can manage GroupMe directly from conversations. Same pattern as pal-e-docs-mcp: thin MCP layer over SDK. No web UI needed — consumers are AI agents.
File Targets
New repo
groupme-mcp:src/groupme_mcp/server.py— MCP server setupsrc/groupme_mcp/tools/groups.py— create_group, list_groups, update_groupsrc/groupme_mcp/tools/members.py— add_member, remove_member, list_memberssrc/groupme_mcp/tools/messages.py— send_message, list_messagessrc/groupme_mcp/tools/audit.py— membership_audit (cross-ref DB vs GroupMe)pyproject.toml— depends on groupme-sdkAcceptance Criteria
forgejo_admin/groupme-mcpexists with CI pipelinecreate_group,list_groups,add_member,remove_member,list_members,send_messagemembership_audittool: compare DB groupme_members vs live GroupMe API, report gaps~/.claude/settings.jsonas MCP servermcp__groupme__create_group("WKQ Test")from conversationTest Expectations
pytest tests/Constraints
GROUPME_ACCESS_TOKENChecklist
Related
project-groupme-westside— project pageArchitecture Simplification (2026-03-24)
MCP
membership_audittool simplified. Instead of cross-referencing a local GroupMeMember table against GroupMe API, it now:list_members)contract_status = 'signed')No local membership table needed. GroupMe API is source of truth.
Scope Review: NEEDS_REFINEMENT
Review note:
review-305-2026-03-24Template is complete (all 10 sections present) and file targets follow the proven pal-e-docs-mcp pattern. Two issues need resolution:
membership_audittool cross-referencesGroupMeMembertable from issue #156, which is also intodoand not yet implemented. Either defer the audit tool to a follow-up issue or document the dependency explicitly in acceptance criteria.todo. This ticket cannot move tonext_upuntil #155 is in progress. Addblocked-by:bball-155label to make this visible.Review Fixes (2026-03-24)
Addressing review-305-2026-03-24 findings:
1. membership_audit deferred
tools/audit.py(membership_audit) depends on basketball-api's DB tables from issue #156. This tool is deferred — implement it as a follow-up after #156 lands. Removed from this ticket's AC.Revised AC:
forgejo_admin/groupme-mcpexists with CI pipelinecreate_group,list_groups,add_member,remove_member,list_members,send_message~/.claude/settings.jsonas MCP servermcp__groupme__create_group("WKQ Test")from conversation2. Dependency ordering
Blocked by #155 (groupme-sdk). Board label updated.