Move multiple tasks (and their respective subtasks, if any; e.g., up to 10-20 parent tasks for best performance) to a different project, section, or make them subtasks of another task. Provide an array of taskIds and exactly one destination (projectId, sectionId, or parentId).
AI agents use todoist_bulk_move_tasks to create or update resources in Enhanced Todoist MCP Server Extended — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Enhanced Todoist MCP Server Extended environment.
This tool creates or modifies data reversibly by changing the organizational structure and associations of tasks. Moving tasks to different projects, sections, or parent tasks alters their state and relationships but does not delete or destroy data.
From the tool's definition The tool description explicitly states it 'Move[s] multiple tasks... to a different project, section, or make them subtasks of another task.' The action is reversible (tasks can be moved back to their original locations) and modifies task organization state…
Documented attack patterns abuse exactly the kind of access todoist_bulk_move_tasks gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and Enhanced Todoist MCP Server Extended, and nothing reaches the server without passing your rules. This is the rule we recommend for todoist_bulk_move_tasks:
{
"version": "1",
"default": "deny",
"tools": {
"todoist_bulk_move_tasks": {
"limits": [
{
"counter": "todoist_bulk_move_tasks_rate",
"window": "minute",
"max": 30,
"scope": "grant"
}
]
}
}
} todoist_bulk_move_tasks stays usable, but capped — an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Move multiple tasks (and their respective subtasks, if any; e.g., up to 10-20 parent tasks for best performance) to a different project, section, or make them subtasks of another task. Provide an array of taskIds and exactly one destination (projectId, sectionId, or parentId). It is categorised as a Write tool in the Enhanced Todoist MCP Server Extended MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the Enhanced Todoist MCP Server Extended MCP server in PolicyLayer and add a rule for todoist_bulk_move_tasks: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Enhanced Todoist MCP Server Extended. Nothing to install.
todoist_bulk_move_tasks is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the todoist_bulk_move_tasks rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for todoist_bulk_move_tasks. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
todoist_bulk_move_tasks is provided by the Enhanced Todoist MCP Server Extended MCP server (vitalio-sh/todoist-mcp-server-ext). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from Enhanced Todoist MCP Server Extended, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.
Free to start. No card required.
31 Enhanced Todoist MCP Server Extended tools catalogued and risk-classified — across an index of 43,000+ MCP servers.