# bulk_categorize_recipes

Apply categories to multiple recipes.

Agent View of the PolicyLayer registry record for `bulk_categorize_recipes`. HTML page: https://policylayer.com/tools/nikopol666-mealie-mcp/bulk-categorize-recipes

## Facts

- Tool: `bulk_categorize_recipes`
- Server: Mealie MCP Server (`nikopol666/mealie-mcp`) — https://policylayer.com/tools/nikopol666-mealie-mcp.md
- Homepage: https://github.com/nikopol666/mealie-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_categorize_recipes",
    "arguments": {}
  }
}
```

## Why bulk_categorize_recipes is rated Medium

This tool writes category metadata to multiple recipes at once. It is a bulk modification operation (Write) rather than a destructive one, as categories can be changed or removed later. The blast radius is medium because it affects many recipes simultaneously, but the action is reversible.

From the tool's own definition: "'Apply categories to multiple recipes' — modifies metadata on multiple recipes but does not delete or irreversibly destroy data"

Risk signals: Bulk/mass operation — affects multiple targets

## Use case

AI agents use bulk_categorize_recipes to create or update resources in Mealie MCP Server, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Mealie MCP Server environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Mealie MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "bulk_categorize_recipes": {
      "limits": [
        {
          "counter": "bulk_categorize_recipes_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Mealie MCP Server (242)

- `bulk_delete_recipes` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/bulk-delete-recipes.md
- `delete_admin_backup` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-admin-backup.md
- `delete_admin_group` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-admin-group.md
- `delete_admin_household` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-admin-household.md
- `delete_admin_user` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-admin-user.md
- `delete_category` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-category.md
- `delete_comment` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-comment.md
- `delete_cookbook` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-cookbook.md
- `delete_food` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-food.md
- `delete_group_label` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-group-label.md
- `delete_group_report` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-group-report.md
- `delete_household_notification` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-household-notification.md
- `delete_household_webhook` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-household-webhook.md
- `delete_meal_plan_entry` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-meal-plan-entry.md
- `delete_meal_plan_rule` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-meal-plan-rule.md
- `delete_recipe` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-recipe.md
- `delete_recipe_action` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-recipe-action.md
- `delete_recipe_image` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-recipe-image.md
- `delete_recipe_timeline_event` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-recipe-timeline-event.md
- `delete_recipe_tool` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-recipe-tool.md
- `delete_shared_recipe_record` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-shared-recipe-record.md
- `delete_shopping_item` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-shopping-item.md
- `delete_shopping_items` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-shopping-items.md
- `delete_shopping_list` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-shopping-list.md
- `delete_tag` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-tag.md
- `delete_unit` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-unit.md
- `delete_user_api_token` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-user-api-token.md
- `delete_user_favorite` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/delete-user-favorite.md
- `purge_recipe_exports` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/purge-recipe-exports.md
- `remove_recipe_from_shopping_list` — Destructive — https://policylayer.com/tools/nikopol666-mealie-mcp/remove-recipe-from-shopping-list.md
- …and 212 more: https://policylayer.com/tools/nikopol666-mealie-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=nikopol666-mealie-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/nikopol666-mealie-mcp
