Commit e8fd0ee
authored
.Net: Enable argument types retention in handoff orchestration. (#13367)
This PR fixes the issue when an MCP function is called with an argument
that doesn't match the expected parameter type.
From chat:
```csharp
public async Task<string> GetDataAsync(
[Description("Optional modality type filter (CT, MRI, XA, etc.). Make sure it is a LIST of strings. Examples: ['CT'] or ['CT', 'MR']")] List<string>? modalityType = null,
(...............)
```
When we tested it using Semantic Kernel without MCP, it returned the
data in the correct format. However, when we integrated it into the tool
(one API Server where we initialize the Kernel and another MCP Server
with all the functions), we get the incorrect format:
<img width="1186" height="175" alt="image"
src="https://github.com/user-attachments/assets/9efd26e2-77fc-4ec2-85ed-60a35fa9e821"
/>1 parent de20575 commit e8fd0ee
File tree
2 files changed
+8
-2
lines changed- dotnet/src
- Agents/Orchestration/Handoff
- VectorData/SqliteVec
2 files changed
+8
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | | - | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
75 | 81 | | |
76 | 82 | | |
77 | 83 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
| 59 | + | |
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| |||
0 commit comments