Skip to content

Dotnet implementation silently drop parameters not used by tool during tool execution #1508

@softnado

Description

@softnado

Describe the bug
Assume there is one tool called Respond_To_Task (Guid taskId, String update, Boolean markComplete = false), in current implementation, if AI decided to call Respond_To_Task(taskId = guidA, update = "Done", phase = "completed"), the call will succeed but the markComplete passed to tool backend is false. Both AI and Backend will not able to detect such gap until someone outside of the system checking the behavior issue.

To Reproduce
Steps to reproduce the behavior:

  1. Define some mcp client with such tool definition, and test it with the instructed call pattern, it will succeed.

Expected behavior
Error out or warning out when there is parameters mismatch instead of silently drop or ignore.

Logs
If applicable, add logs to help explain your problem.

Additional context
Add any other context about the problem here.

Metadata

Metadata

Assignees

Labels

P3Nice to haves, rare edge casesbugSomething isn't workingneeds confirmationUnclear if still relevant

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions