--- /dev/null
+from fastmcp import FastMCP
+from matrix_shop_bot.db import Data
+
+mcp = FastMCP("Shop Bot")
+
+@mcp.tool
+def add_item(name: str) -> list[str]:
+ return Data().add_item(name)
+
+@mcp.tool
+def buy(items:str) -> list[str]:
+ return Data().purchase_items(items)
+
+@mcp.tool
+def list_bought(store:str) -> list[str]:
+ return Data().list_purchases(store)
+
+@mcp.tool
+def clear(store_name: str, clear_all:bool=False) -> list[str]:
+ return Data().clear_list(store_name, clear_all)
+
+
+@mcp.tool
+def shop_at(store_name:str) -> list[str]:
+ '''Select store to shop at'''
+ return Data().get_shopping_list(store_name)
+
+
+@mcp.tool
+def list() -> list[str]:
+ '''Use previous store'''
+ return Data().get_last_shopping_list()
+
+
+@mcp.tool
+def list_stores() -> list[str]:
+ return Data().get_stores()
+
+
+@mcp.tool
+def list_purchases(store: str) -> list[str]:
+ return Data().list_purchases(store)
+
+if __name__ == "__main__":
+ mcp.run()
[project.optional-dependencies]
test = ['mypy']
+llm = ['fastmcp'] # pip install -e ".[llm]"
[tool.setuptools.packages.find]
exclude = ["service*", "store*", "backups*"]