microsoft / microsoft/simplechat
MCP Track A Phase 2: add capability probe, richer metadata, and result policies
- Dominant language
- Python
- Stars
- 152
- Forks
- 116
- Avg merge
- 7h 7m
- Merged PRs (30d)
- 122
Description
## Summary
Implement Track A Phase 2 from #1013: make outbound MCP discovery, capability metadata, schema handling, and result handling more robust.
## Scope
- Add an MCP compatibility probe endpoint or discovery mode.
- Capture transport, auth method, tool count, capability hints, and warnings.
- Preserve richer cached tool metadata including original name, normalized function name, description, input schema, annotations where available, output schema where available, and structured-content hints where available.
- Keep compatibility with existing `mcp_tools` entries.
- Add opt-in or warning-only input schema validation before invocation.
- Replace the single hard-coded truncation behavior with explicit result policies.
- Add UI warnings for empty tool lists, failed discovery with cached tools, duplicate normalized function names, unsupported prompts/resources, and overly broad schemas.
## Acceptance Criteria
- [ ] Probe/discovery returns useful diagnostics without leaking secrets.
- [ ] Existing cached `mcp_tools` remain readable and valid.
- [ ] Richer tool metadata is normalized and validated.
- [ ] Schema validation is disabled or warning-only by default to avoid breaking dynamic tools.
- [ ] Result-size policy defaults to truncate and supports future policy expansion.
- [ ] Functional/UI tests cover probe, metadata, warnings, schema validation mode, and result policy behavior.
## Notes
Parent: #1013
Planning doc: `docs/explanation/features/MCP_PLUGIN_ROBUSTNESS_PLAN.md`
Priority: P1
Size: M
Contributor guide
Assessment
This issue has not been assessed yet.