Integrate with the GroupMe API v3 to manage groups, messages, and bots.
groupme-mcp
A Model Context Protocol (MCP) server that wraps the GroupMe API v3, letting AI assistants read and send GroupMe messages, manage groups, interact with bots, and more.
Tools
| Category | Tools |
|---|---|
| Groups | list_groups, list_former_groups, get_group, create_group, update_group, destroy_group, join_group, rejoin_group |
| Members | add_members, get_member_results, remove_member, update_membership |
| Messages | list_messages, send_message |
| Direct Messages | list_direct_messages, send_direct_message |
| Chats | list_chats |
| Likes | like_message, unlike_message |
| Bots | create_bot, post_as_bot, list_bots, destroy_bot |
| Users | get_me, update_user |
| Blocks | list_blocks, check_block, create_block, delete_block |
Requirements
- Python 3.12+
- A GroupMe access token — get one at dev.groupme.com or use the OAuth helper
Usage
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"groupme": {
"command": "uvx",
"args": ["groupme-mcp"],
"env": {
"GROUPME_TOKEN": "<your-token>"
}
}
}
}
Until published to PyPI, use
uv runwith--directorypointing to a local clone instead ofuvx.
Local development
git clone https://github.com/KalebJS/groupme-mcp
cd groupme-mcp
export GROUPME_TOKEN=<your-token>
uv run mcp dev main.py # opens MCP Inspector in browser
Getting a Token
oauth/get_token.py runs a local OAuth flow using only the Python stdlib — no extra dependencies.
- Create an application at dev.groupme.com/applications.
- Set the callback URL to
http://localhost:8080/callback. - Run the helper:
python oauth/get_token.py --client-id YOUR_CLIENT_ID
The script opens your browser, waits for the GroupMe redirect, and prints the token along with the export command to set it.
Development
# Install dev dependencies
uv sync --group dev
# Install pre-commit hooks
uv run --group dev pre-commit install
# Run tests
uv run --group dev pytest tests/ -v
# Lint
uv run --group dev pre-commit run --all-files
License
MIT
Tools (6)
list_groupsList all groups the user is a member of.send_messageSend a message to a specific group.list_messagesRetrieve messages from a specific group.send_direct_messageSend a direct message to a user.create_botCreate a new bot in a group.post_as_botPost a message to a group as a bot.Environment Variables
GROUPME_TOKENrequiredAccess token for the GroupMe APIConfiguration
{"mcpServers": {"groupme": {"command": "uvx", "args": ["groupme-mcp"], "env": {"GROUPME_TOKEN": "<your-token>"}}}}