AtlatestRepositoryparlor
1
# parlor3
A Discourse forum management tool built with [Sigil](https://codeberg.org/sigil/sigil). Works as both a CLI for humans and an MCP server for AI agents.5
## CLI Usage7
```8
parlor topics latest # List latest topics9
parlor topics top # List top topics10
parlor topics get 42 # Get topic11
parlor topics create "Title" "Body" 5 # Create topic in category 512
parlor topics close 42 # Close topic13
parlor topics open 42 # Reopen topic14
parlor topics pin 42 # Pin topic15
parlor topics delete 42 # Delete topic16
parlor topics invite 42 "[email protected]" # Invite user to topic17
parlor posts get 123 # Get post18
parlor posts create 42 "Reply body" # Reply to topic19
parlor posts update 123 "Edited body" # Edit post20
parlor posts delete 123 # Delete post21
parlor messages send "Subject" "Body" "user" # Send message22
parlor messages list username # List messages23
parlor search "query string" # Search forum24
parlor categories list # List categories25
parlor categories get 5 # Get category26
parlor categories create "Name" "0088CC" # Create category27
parlor users get username # Get user28
parlor users list # List users29
parlor users by-email [email protected] # Find user by email30
parlor users create "Name" "[email protected]" "pw" un # Create user31
parlor groups list # List groups32
parlor groups get group-name # Get group33
parlor groups create new-group # Create group34
```36
## MCP Server38
Start with `parlor serve`. Exposes these tools:40
- `parlor/topics-latest`, `parlor/topics-top`, `parlor/topics-by-category`, `parlor/topics-get`, `parlor/topics-create`, `parlor/topics-update`, `parlor/topics-close`, `parlor/topics-open`, `parlor/topics-pin`, `parlor/topics-delete`, `parlor/topics-invite`41
- `parlor/posts-get`, `parlor/posts-create`, `parlor/posts-update`, `parlor/posts-delete`42
- `parlor/messages-send`, `parlor/messages-list`, `parlor/messages-reply`43
- `parlor/search`44
- `parlor/categories-list`, `parlor/categories-get`, `parlor/categories-create`45
- `parlor/users-get`, `parlor/users-list`, `parlor/users-by-email`, `parlor/users-create`, `parlor/users-suspend`, `parlor/users-unsuspend`46
- `parlor/groups-list`, `parlor/groups-get`, `parlor/groups-create`, `parlor/groups-add-members`, `parlor/groups-remove-members`47
- `parlor/admin-settings`, `parlor/admin-update-setting`, `parlor/admin-invite`49
## Configuration51
parlor reads a `.env-parlor` file from the working directory at startup if present.53
Create a `.env-parlor` in your project root:55
```56
DISCOURSE_URL=https://forum.example.com57
DISCOURSE_API_KEY=your-api-key-here58
DISCOURSE_USERNAME=system59
```61
| Variable | Description | Default |62
|----------|-------------|---------|63
| `DISCOURSE_URL` | Instance base URL (required) | — |64
| `DISCOURSE_API_KEY` | API key (required) | — |65
| `DISCOURSE_USERNAME` | API username (required) | — |67
## Building69
```bash70
sigil deps install71
sigil build72
```74
The bundled binary is at `build/dev/bin/parlor`.76
## Dependencies78
- [sigil-discourse](https://codeberg.org/sigil/sigil-discourse) — Discourse API client library80
## License82
BSD-3-Clause