Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 30, 2026

This PR combines work from #7201 and #7126.

Summary

McpServerToolCallContent and McpServerToolResultContent now extend FunctionCallContent and FunctionResultContent respectively. The new InvocationRequired property (set to false by default for MCP content) prevents FunctionInvokingChatClient from re-processing function calls that have already been handled by the hosted MCP service.

Changes

  • McpServerToolCallContent now extends FunctionCallContent instead of AIContent
  • McpServerToolResultContent now extends FunctionResultContent instead of AIContent
  • New InvocationRequired property is set to false by default for MCP content
  • Removed McpServerToolApprovalRequestContent and McpServerToolApprovalResponseContent (no longer needed)
  • Updated serialization to use IDictionary<string, object?> instead of IReadOnlyDictionary<string, object?>
  • Added CompatibilitySuppressions.xml to suppress expected API breaking changes
  • Fixed tests: replaced .ToolName with .Name where needed
  • Removed stale comment in UserInputResponseContentTests.cs
  • Build passes
  • Tests pass
Original prompt

Open PR based off of copilot/update-mcp-server-tool-invocation.

The branch combines work from #7201 and #7126. McpServerToolCallContent and McpServerToolResultContent now extend FunctionCallContent and FunctionResultContent respectively. The new InvocationRequired property prevents FunctionInvokingChatClient from re-processing function calls that have already been handled.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Microsoft Reviewers: Open in CodeFlow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants