Add an Internal operation plane for server-bound tools
- Dominant language
- C#
- Stars
- 3.7k
- Forks
- 624
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 220
Description
`ToolOperationPlane.NotApplicable` currently covers two unrelated cases: tools that operate the MCP server itself, and tools that return content without calling any service.
Of the 47 tools currently classified `notApplicable`, 4 are server-bound:
- `PluginTelemetryCommand`
- `ServerInfoCommand`
- `ServerStartCommand`
- `ToolsListCommand`
The remaining 43 are embedded documentation, best practices, and locally generated content. Collapsing both groups into one value means a consumer cannot tell "operates the server" from "returns content without calling anything."
Proposal: add `ToolOperationPlane.Internal` for tools bound to the server itself.
Work involved:
- Add the enum value and its serialized string (`internal`).
- Update `ToolMetadataJsonConverter` on both the read and write paths.
- Reclassify the 4 tools above.
- Update `docs/design/operation-plane-metadata.md`.
Raised by @alzimmermsft in review of microsoft/mcp#3368, and deliberately deferred from that PR because it changes the public value set of the enum.
Contributor guide
Assessment
This issue has not been assessed yet.