Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Note
This tool is available by default on the following MCP servers: Dynamics 365 Customer Service.
The tools and examples in this documentation illustrate current capabilities. Tool names, descriptions, parameters, response formats, and available functionality can change over time.
When you build agents, integrations, or orchestration logic, don't hard-code dependencies on specific tool names, parameter structures, tool metadata, or response schemas. Instead, design your solution to discover and use available tools at runtime.
As the platform evolves, Microsoft might add, remove, rename, or modify tools and tool metadata. Designing against capabilities rather than specific tool identifiers helps maintain compatibility across service updates.
Use this capability when you want to find support cases, review them in chat, and take action without leaving the conversation.
What it does
The assistant shows a list of cases that match your filters. You can filter by the following methods:
- Whether the case is assigned to you
- Case status (active, resolved, cancelled, in progress, on hold, waiting, researching)
- Priority (high, normal, low)
- Case number
- Keywords in the case title
Results appear in an interactive case list inside chat.
Try prompts like
- "Show my active cases"
- "List my high-priority cases"
- "Find case CAS-01010-A0A0A0"
- "Show resolved cases"
- "List cases assigned to me"
- "Show waiting cases"
- "Find cases about billing"
- "What cases do I need to work on?"
What you see in chat
The assistant displays an interactive case list as an app-in-chat component. The list shows matching cases with key details such as case number, title, status, and priority.
Helpful tips
- Say "my cases" or "assigned to me" to see only cases you own.
- Use the exact case number (for example, CAS-01010-A0A0A0) for the most precise result.
- Combine filters by saying something like "show my high-priority active cases."
- Use status words like active, resolved, cancelled, in progress, on hold, waiting, or researching.
- If you want your personal work queue specifically, say "show my inbox" or "show my work items" instead. That uses a different view.
Tip
After the case list appears, you can ask follow-up questions about any case shown. For example, "summarize the first case" or "reassign case CAS-01010-A0A0A0."
What happens next
After the list appears, you can continue with prompts like:
- "Open the first case"
- "Summarize this case"
- "What changed on this case since yesterday?"
- "Reassign this case to Alex"
- "Close this case"
- "Draft a customer reply for this case"
Does this change data?
No. Listing cases doesn't change data.
The case list is read-only. Follow-up actions from the list, such as updating a field or reassigning a case, can change data. The assistant asks for confirmation before making changes.
What you can do from the app-in-chat component
From the case list in chat, you can:
- Scan and review matching cases in a sortable grid
- Select a case to see more details
- Open the full case form in Dynamics 365
- Update supported fields inline when available
- Continue working with the case in chat using follow-up prompts
Prerequisites
This tool is available on the Dynamics 365 Customer Service MCP server. See the availability note at the top of this page for details. No additional configuration is required.
Tool summary
| Property | Value |
|---|---|
| User-facing name | Find and manage cases |
| Internal tool name | list_cases |
| Purpose | Lists support cases filtered by status, priority, owner, or structured criteria and renders them in an interactive grid-style app-in-chat experience |
Tool behavior
Lists support cases filtered by status, priority, owner, or structured criteria and renders them in an interactive grid-style app-in-chat experience. The search parameter supports exact case-number lookup (CAS-XXXXX-XXXXX) or title contains-match.
Annotations
| Annotation | Value | Meaning |
|---|---|---|
readOnlyHint |
Not set | Read-only in practice; this tool does not modify data. |
destructiveHint |
Not set | Not applicable (read-only tool). |
idempotentHint |
Not set | Not applicable (read-only tool). |
openWorldHint |
Not set | Uses default (queries Dataverse). |
Input concepts
Status
| Input | Description | Required |
|---|---|---|
active, resolved, cancelled, in-progress, on-hold, waiting, researching |
active, resolved, cancelled, in-progress, on-hold, waiting, researching. Filters by case state or status reason. |
No |
Priority
| Input | Description | Required |
|---|---|---|
high, normal, low |
high, normal, low. Case-insensitive. |
No |
Search
| Input | Description | Required |
|---|---|---|
| — | free-text string. Performs exact case-number lookup (CAS-XXXXX-XXXXX) or title contains-match. | No |
Ownership scope
| Input | Description | Required |
|---|---|---|
assignedToMe |
assignedToMe (boolean). When true, scopes results to cases owned by the current user. |
No |
Result limit
| Input | Description | Required |
|---|---|---|
top |
top (integer). Maximum number of cases to return. Defaults to 10. |
No |
Additional filters
| Input | Description | Required |
|---|---|---|
additionalFilter |
additionalFilter (key-value map). Arbitrary OData filter conditions merged with AND. |
No |
Response and UI behavior
This tool renders an interactive app-in-chat case grid.
This MCP tool is supported by an MCP app.
Response type
Interactive grid (list view)
The grid displays case number, title, status, priority, and owner. Users can select a row to drill into case detail or take follow-up actions via chat.
Routing notes
Use list_cases for:
- "my cases", "cases assigned to me", "my active cases"
- "what cases do I need to work on"
- Category, status, or priority-based filtering
- Exact case number lookup
- Title-based keyword search
Don't use list_cases when the prompt explicitly says:
- "inbox" or "work items" - route to
list_case_inbox_workitems - Free-text search across title AND description - route to
search_cases
Related tools
| Tool | Relationship |
|---|---|
get_case |
Opens the full case form for a selected case |
update_case |
Updates fields on a case (priority, status, etc.) |
summarize_case |
Generates an AI-powered case summary |
get_case_highlights |
Returns activity digest and triage signals |
reassign_case |
Reassigns a case to another user, team, or queue |
close_case |
Resolves and closes a case |
search_cases |
Free-text search across case title and description |
list_case_inbox_workitems |
Returns the agent's personal inbox of active cases |
summarize_case_actions |
Lists resolution steps taken on a case |
Data mutation classification
Read-only entry point with downstream mutation potential.
The listing itself doesn't change data. Follow-up actions from the grid, such as update, reassign, and close, can trigger write operations by using separate tools.