Content
# groupsio-mcp-server
MCP server for consuming and managing Groups.io data via the Groups.io REST API.
## Prerequisites
- Node.js 18+
- A Groups.io API key (get one at https://groups.io/settings/apikeys)
## Installation
```bash
git clone https://github.com/ke4qqq/groupsio-mcp-server.git
cd groupsio-mcp-server
npm install
```
## Configuration
Add the server to your MCP client configuration. The exact file varies by client:
| Client | Config file |
|--------|------------|
| Claude Desktop | `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) |
| Kiro | `~/.kiro/settings/mcp.json` |
| VS Code (Copilot) | `.vscode/mcp.json` in your workspace |
Add this entry to the `mcpServers` object in your config:
```json
{
"mcpServers": {
"groupsio": {
"command": "node",
"args": ["/path/to/groupsio-mcp-server/index.js"],
"env": {
"GROUPSIO_API_KEY": "your_key_here"
}
}
}
}
```
## Dependencies
| Package | Version | License | Purpose |
|---------|---------|---------|---------|
| [@modelcontextprotocol/sdk](https://www.npmjs.com/package/@modelcontextprotocol/sdk) | ^1.29.0 | MIT | MCP server framework and stdio transport |
| [zod](https://www.npmjs.com/package/zod) | ^4.3.6 | MIT | Input schema validation |
## Tools
| Tool | Description |
|------|-------------|
| `list_subscriptions` | List all groups you're subscribed to |
| `get_group` | Get group settings by ID or name |
| `get_subgroups` | Get subgroups of a parent group |
| `get_subgroups_by_category` | Get subgroups organized by category |
| `get_topics` | Get message threads in a group |
| `get_topic` | Get messages within a specific topic |
| `get_message` | Get a single message by number |
| `get_messages` | Get messages in a group |
| `search_archives` | Search message archives |
| `get_members` | Get members of a group |
| `get_member_directory` | Get public member directory |
| `search_members` | Search members by email or name |
| `get_hashtags` | Get hashtags in a group |
| `get_message_history` | Get monthly message count history |
| `get_permissions` | Get your permissions in a group |
| `get_events` | Get upcoming events |
| `get_files` | Get files in a group |
| `get_wiki_pages` | Get wiki pages in a group |
| `get_databases` | Get databases in a group |
| `update_subscription` | Update your subscription settings (email delivery, message selection, etc.) |
| `delete_subscription` | Unsubscribe from a group |
## License
This project is released under the [MIT-0](https://opensource.org/license/mit-0) license.
## Attribution
Written with the aid of [Kiro](https://kiro.dev).