How to use "Update task details" Planner tool for agent in orchestration mode to update Checklists for a task ?

Nikita Vaikus 0 Reputation points
2025-07-13T16:39:03.1266667+00:00

Hello!

I'm playing with Agents in Copilot studio and trying to make an agent in orchestrator mode which has some number of tools (including "Update task details" Planner tool) + general instructions how to use them (i.e. agent decides by himself when and how to use existing tools)And currently I'm facing an issue with Planner tool "Update task details" + checklist field.

This is how the tool is added to the agent:
User's image

But when an agent start calling it to update a checklist -- it's using a wrong payload contract
User's image

Which is causing further non-expected behavior in the agent chat
User's image

After my research -- I recognized that the model my agent should use is different from what he's trying to do:
"checklist": { "95e27074-6c4a-447a-aa24-9d718a0b86fa":{ "@odata.type": "microsoft.graph.plannerChecklistItem", "title": "Update task details", "isChecked": true }, "d280ed1a-9f6b-4f9c-a962-fb4d00dc50ff":{ "@odata.type": "microsoft.graph.plannerChecklistItem", "isChecked": true, }, "a93c93c5-10a6-4167-9551-8bafa09967a7": null }

https://learn.microsoft.com/en-us/graph/api/plannertaskdetails-update?view=graph-rest-1.0&tabs=http

But it's not possible to force my agent to use a proper structure since the contract of "Update task details" tool has more priority than the prompt (and the contract is wrong seems like).

Could someone please clarify whether there is a clear way how can I workaround the behavior and whether the tool will be fixed in some future ?

Microsoft Copilot | Microsoft 365 Copilot | Development

1 answer

Sort by: Most helpful
  1. Karan Shewale 2,585 Reputation points Microsoft External Staff
    2025-07-14T05:06:59.2033333+00:00

    Hi Nikita,

    The issue you’re seeing happens because the built-in Copilot Studio “Update task details” Planner tool uses a simplified checklist format that doesn’t match Microsoft Graph API’s expected structure. The tool’s JSON array format works for basic updates, but Graph requires GUID keys with @odata.type declarations for each checklist item.

    A reliable workaround is to create a custom REST API tool that correctly formats checklist updates according to Graph’s requirements. You can either wrap this API in Copilot Studio as a custom tool or use a Power Automate flow to transform the simplified input into the proper Graph payload. Another option is a two-step process: first retrieve the current task details to get the checklist GUIDs, then use those GUIDs in your update calls. If you go this route, instruct the agent to always fetch current checklist items, use correct GUIDs for updates, generate new GUIDs for new items, and set deleted items to null.

    This approach gives you immediate control and proper functionality, while Microsoft works on aligning the built-in tool’s schema with the Graph API. Filing a support ticket with Microsoft referencing this schema mismatch is also recommended for future updates.

    Official Documentation:

    Thanks,  

    Karan Shewale. 

    *************************************************************************  

    If the response is helpful, please click "Accept Answer" and upvote it. You can share your feedback via Microsoft Teams Developer Feedback link. Click here to escalate. 

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.