Skip to content

Add "Toolset" as canonical deployment property#170

Merged
rhennigan merged 2 commits into
mainfrom
feature/rename-server-to-toolset
Apr 24, 2026
Merged

Add "Toolset" as canonical deployment property#170
rhennigan merged 2 commits into
mainfrom
feature/rename-server-to-toolset

Conversation

@rhennigan
Copy link
Copy Markdown
Member

@rhennigan rhennigan commented Apr 24, 2026

Summary

  • Introduces "Toolset" as the top-level canonical name for the MCP server baked into an AgentToolsDeployment record. "Server" was overloaded across MCPServerObject / StartMCPServer / InstallMCPServer (the actual server) versus the per-deployment field naming which server was deployed, and the ambiguity surfaced in code review and docs.
  • New deployments write a top-level "Toolset" -> name. The legacy "MCP" -> "Server" key is still dual-written so existing consumers keep working, and dep["Toolset"] falls back through data["MCP", "Server"] for legacy WXF records already on disk. The "Server" property shortcut is retained unchanged for backward compatibility.
  • Routes MCPServerObject / Tools / LLMConfiguration accessors through "Toolset", switches deleteDeployment's UninstallMCPServer call to dep["Toolset"], and renames the formatting summary row Server -> Toolset (with the spec doc updated to match).
  • Adds tests covering legacy-fallback behavior, the Properties list, dual-write on new deployments, and on-disk WXF round-tripping (108 tests, all passing).

Test plan

  • TestReport on Tests/DeployAgentTools.wlt passes (108 tests, including the new legacy-fallback / dual-write / on-disk WXF cases).
  • CodeInspector clean on Kernel/DeployAgentTools.wl, Kernel/Formatting.wl, and Tests/DeployAgentTools.wlt.
  • Smoke-test: deploy a fresh AgentTools deployment, confirm dep["Toolset"] and dep["Server"] both return the server name and the formatted summary row reads Toolset.
  • Smoke-test: load a deployment WXF written before this change and confirm dep["Toolset"] resolves via the legacy "MCP" -> "Server" fallback.

🤖 Generated with Claude Code

rhennigan and others added 2 commits April 24, 2026 15:01
Introduce "Toolset" as the top-level canonical name for the MCP server
baked into an AgentToolsDeployment record. "Server" was overloaded in
this codebase (MCPServerObject / StartMCPServer / InstallMCPServer vs.
the per-deployment field that identifies which server was deployed),
and the ambiguity shows up in code review and docs.

New deployments write a top-level "Toolset" -> name. The legacy
"MCP"/"Server" key is still dual-written so existing consumers keep
working, and the new dep["Toolset"] accessor falls back through
data["MCP", "Server"] for legacy WXF records already on disk. The
"Server" property shortcut is retained unchanged for backward
compatibility.

- Route MCPServerObject/Tools/LLMConfiguration accessors through Toolset
- Switch deleteDeployment's UninstallMCPServer call to dep["Toolset"]
- Summary formatting row renamed Server -> Toolset
- Added legacy-fallback, Properties-list, dual-write, and on-disk WXF
  tests (108 tests, all passing)
Formatting.wl now renders the deployment summary row as "Toolset"; the
Specs/DeployAgentTools.md Formatting section was still listing "Server"
as a summary row.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 24, 2026 19:06
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR clarifies the deployment record schema by introducing "Toolset" as the canonical top-level property name for the deployed MCP server within AgentToolsDeployment, while preserving legacy compatibility via the existing "MCP" -> "Server" key and the "Server" shortcut property.

Changes:

  • Add "Toolset" as a new canonical AgentToolsDeployment property with legacy fallback through data["MCP","Server"].
  • Route derived accessors ("MCPServerObject", "Tools", "LLMConfiguration") and uninstall behavior through "Toolset".
  • Update formatting and documentation/specs, and extend tests to cover fallback + dual-write + on-disk WXF persistence.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
docs/deploy-agent-tools.md Documents "Toolset" as canonical and "Server" as legacy shortcut; updates related property descriptions.
Specs/DeployAgentTools.md Updates the formal data model, property mapping, delete behavior description, and formatting summary row naming.
Kernel/DeployAgentTools.wl Implements "Toolset" property (with legacy fallback), routes "MCPServerObject"/uninstall through it, and dual-writes "Toolset" on new deployments.
Kernel/Formatting.wl Renames the formatted summary row from Server to Toolset and reads dep["Toolset"].
Tests/DeployAgentTools.wlt Adds coverage for legacy fallback, properties list membership, dual-write on new deployments, and persisted WXF contents.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@rhennigan rhennigan merged commit d85677e into main Apr 24, 2026
5 checks passed
@rhennigan rhennigan deleted the feature/rename-server-to-toolset branch April 24, 2026 19:14
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