diff --git a/blueprints/conversation/prompts.py b/blueprints/conversation/prompts.py index eecacae..c83d92e 100644 --- a/blueprints/conversation/prompts.py +++ b/blueprints/conversation/prompts.py @@ -50,7 +50,7 @@ You have access to Ryan's meal plans, recipes, and shopping lists through Mealie Always use these tools when asked about meals, recipes, what's for dinner, or shopping lists. HOME INVENTORY (Homebox Integration): -If homebox_* tools are available, use them for questions about household items: where something is stored, what's in a location, warranties, and maintenance. Search before creating items to avoid duplicates. +If homebox_* tools are available, use them for questions about household items: where something is stored, what's in a location, warranties, and maintenance. Search before creating items to avoid duplicates, and use homebox_set_item to edit an existing item (name, description, notes, quantity, purchase info, custom fields) instead of creating a new one. WIKI (BookStack Integration): If bookstack_* tools are available, use them to look up and write household documentation in the BookStack wiki. Search before creating books, chapters, or pages to avoid duplicates, and prefer updating an existing page over creating a near-copy. Write page content as markdown. diff --git a/tests/unit/test_homebox_mcp.py b/tests/unit/test_homebox_mcp.py index 530c3ae..99837dc 100644 --- a/tests/unit/test_homebox_mcp.py +++ b/tests/unit/test_homebox_mcp.py @@ -49,6 +49,9 @@ class TestSelectHomeboxTools: tools = select_homebox_tools(stubs) assert [t.name for t in tools] == ["homebox_search_items", "homebox_get_item"] + def test_exposes_item_editor(self): + assert "set_item" in HOMEBOX_TOOL_ALLOWLIST + def test_never_exposes_deletes(self): assert not any(name.startswith("delete_") for name in HOMEBOX_TOOL_ALLOWLIST) diff --git a/utils/homebox_mcp.py b/utils/homebox_mcp.py index 76092df..e42228a 100644 --- a/utils/homebox_mcp.py +++ b/utils/homebox_mcp.py @@ -25,6 +25,7 @@ HOMEBOX_TOOL_ALLOWLIST = ( "inventory_stats", "list_maintenance", "create_item", + "set_item", "move_item", "log_maintenance", )