3 A matrix bot that tracks shopping lists.
6 Add the bot to your Matrix room, and start telling it your shopping list.
8 Then add stores, and assign your items to one or moreany stores where you would shop for that item.
10 Matrix shop bot can then list back your shopping list for any given store.
12 This bot works well with, and is included in [Cadbury, the many purpose Matrix bot](https://codeberg.org/EdTheDev/matrix-cadbury).
16 This bot exists because most modern shopping tools have no respect for our privacy.
18 All data is stored locally in a sqlite database on the host where you run the bot.
20 Shop bot contains no trackers of any kind.
24 Configure the necessary environment variables, and run with `make serve`.
26 Invite the bot to a Matrix channel, and it will accept automatically, if it can.
28 Use `!shop help`, to get started.
30 > Tip: Additional setup is required to add a Matrix bot to an encrypted channel.
40 add - add an item to shop for
41 add-store - add a store
42 assign-item-to-store ITEM_ID STORE_ID - plan to shop for at store for item
43 assign ITEM_ID - assign item to last used store id
44 buy - mark item as purchased
48 This bot can also be invoked from the commande line with `invoke`.
51 git clone https://codeberg.org/EdTheDev/matrix-shop-bot.git
54 source .venv/bin/activate
60 - [x] allow comma separated list for shopping item add
61 - [ ] add PurchaseRecord table to track how often an item is purchased at a given store
62 - [ ] add a `quick.list` command that populates a store shopping list with the most commonly shopped items at that store from the PurchaseRecord table in the database
66 |Data Store|Data Type|Sensitivity|Notes|
67 |----------|---------|-----------|-----|
68 | Local SQLite Database | Shopping Lists | Personal | Filename is shop.db |
70 By design, Shop bot does not store any data except as described in the above table.
72 ## Endpoint Connections
74 |Endpoint|Purpose|Access|Contact|
75 |--------|-------|------|-------|
76 | Your Matrix Server | Connect as a chat bot | Read/Write | Matrix server administrator |
78 By design, Shop bot does not transmit any data except as described in the above table.
82 As of the last update to this README, the expected End-of-Life date of this product is October 2028.
84 End-of-Life was decided upon based on these dependencies:
86 - Python 3.12 (October 2028)
88 ## Use with as an MCP Skill with llama-ui
90 Install with `mcp` support:
92 pip install -e ".[llm]"
94 Set hostname as `MY_IP` environment variable, and run:
101 In Lamma UI, click `MCP Servers` / `+ Add New Server`.