Projects

Projects

Tools that read and act on projects, the budgets beneath them and the tasks beneath the budgets.

The Projects tools cover the project-management surface of plnnrly. They let an AI client search the project list, inspect a single project in full, update its top-level fields, and create or update the budgets and tasks that hang off it. None of the tools delete anything.

Every call runs as the user who minted the MCP token. Tenant isolation is enforced by the server, and per-tool authorization checks the user's plnnrly permissions before anything is read or written.

Tools

ToolPurpose
list-projects-toolList projects, filtered by status, customer, managers, dates, tags or title.
get-project-toolFetch one project with its budgets, tasks and relation counts.
update-project-toolUpdate top-level project fields. Flipping status to invoiced finishes every open task.
list-budgets-toolList budgets, filtered by project, customer, group, status or dates.
create-budget-toolCreate a budget under a project.
update-budget-toolUpdate fields on an existing budget.
create-task-toolCreate a task under a budget.
update-task-toolUpdate any editable field on a task. Use update-task-status-tool when you only need to change the kanban column.

Permissions at a glance

ActionPermission
List or get projectsprojects::read
Update a projectprojects::update
List budgetsbudgets::read
Create or update a budgetbudgets::create / budgets::update
Create a task assigned to yourselfkanban::manage_self
Create or reassign a task to another user (or leave it unassigned)kanban::manage_for_others
Update any of your own taskskanban::manage_self
Update someone else's taskkanban::manage_for_others

Permissions a user does not hold cause the tool to return an authorization error.

Common workflows

  • "Show me every active ACME project." — list-projects-tool with customer_id and status: "active".
  • "Give me the full picture of project 42." — get-project-tool with id: 42.
  • "Mark project 42 as invoiced." — update-project-tool with status: "invoiced" (auto-finishes all open tasks).
  • "Add a 40-hour implementation budget under project 42." — create-budget-tool with project_id: 42, budget: 2400.
  • "Plan a task for me on that new budget." — create-task-tool with the new budget_id, a date and a description.
  • "Push the task by a week and bump the estimate." — update-task-tool with the new due_date and minutes.

On this page