Regression: Copilot Chat MCP fails on Dataverse server due to strict tool schema validation (array parameter missing items)
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.4k
- PR merge metrics
- PR metrics pending
Description
A previously working MCP integration now fails in Copilot Chat when connecting to the Dataverse MCP endpoint.
The server starts, OAuth discovery succeeds, and tools are discovered, but Copilot then fails during tool validation with:
Failed to validate tool mcp_microsoft_dat_delete_record: Error: tool parameters array type must have items
This appears to be a regression in validation behavior or error handling, because one invalid tool definition now breaks MCP usage for the whole session.
Environment
OS: Windows 11 Enterprise Version 25H2
VS Code: 1.127.0
GitHub Copilot extension: 0.55.0
MCP endpoint: https://{dev server}.dynamics.com/api/mcp
Date first observed: 2026-07-09
Model: Any
Regression note: same endpoint/workflow worked previously
Impact
Copilot Chat cannot reliably use MCP tools from this server
User experience is effectively a chat failure/crash path when MCP is enabled
Blocking daily usage of Dataverse MCP in chat
Steps to Reproduce
Configure MCP server in user configuration with the Dataverse endpoint.
Open Copilot Chat (or start the server via MCP: List Servers).
Observe server startup and tool discovery logs.
Attempt to use MCP tools in chat.
Actual Result
Server starts and discovers tools, but chat fails with tool validation error:
Failed to validate tool mcp_microsoft_dat_delete_record: Error: tool parameters array type must have items
Expected Result
Either:
Invalid tool definitions are skipped with a warning, while other valid tools remain usable, or
Validation errors are surfaced non-fatally without breaking chat/MCP session
No full MCP/chat failure from a single invalid tool schema
Relevant Logs
Starting server MCP-CRM-DEV-NL
Connection state: Running
Discovered resource metadata at ...
Discovered authorization server metadata at ...
Discovered 16 tools
Then: Failed to validate tool mcp_microsoft_dat_delete_record: Error: tool parameters array type must have items
Additional Technical Context
Endpoint connectivity is healthy
Auth challenge and resource metadata are returned correctly
Failure occurs after tool discovery, during schema validation
Likely problematic schema pattern in tool definition: an array parameter declared without items
Likely Root Cause
A tool schema includes a parameter with type array but without items, which fails strict validation.
Example of invalid pattern
{
"type": "array"
}
Example of valid pattern
{
"type": "array",
"items": { "type": "string" }
}
Regression Statement
This exact MCP endpoint and flow worked before. Current behavior is a regression: one invalid tool schema now breaks the whole MCP chat flow.
Workaround
Disable the problematic tool from the server manifest/response.
Client-side robustness: handle invalid tool schemas gracefully (skip bad tool, continue with valid ones).
Server-side schema correctness: ensure all array-typed parameters include items.
Optional: clearer error telemetry pointing to exact parameter path in invalid schema.
Contributor guide
Assessment
This issue has not been assessed yet.